外包的原罪

由于我一直在日本公司做一些日本外包项目的开发,众所周知的原因,技术的提高是很有限的。

这里我想对一些刚出道的朋友提醒一下,千万不要被国家的某些人误导了。

前段时间由于就业困难,所以流行一句话 “要先就业再择业”。这个其实是国家的不负责任和推卸责任而已。

男怕入错行,一旦入错行,在转行是很难的。而且在同一个行业其实也分的。iT行业就是开发也会分好几种。

手机开发,游戏开发,money都是不同。而开发语言又有区别如java,c#,php

所以网上总会有到底做哪个开发更好一些的讨论,以及手机开发,游戏开发谁更赚钱等等,请朋友们自己考虑清楚

我只想说的是 如果你是追求技术,那么千万不要做外包。它只会浪费你的时间而已。

我就是一个活生生的例子。我现在就是有那么几点技术,但是都不是很精通的状态,而且很难有所提高。我深受其苦。

我总结的原因如下:

外包项目常常要求你在一个它所提供的框架下做开发,技术难点常常由框架自己解决了。所以你碰到的问题不会很多的。

自然而然的,你的工作就是完成一个个的业务程序而已。但是你能知道的业务逻辑其实也少的可怜。

你往往只是在其中开发一小部分的业务机能程序。你不知道你所开发的程序在整个项目中是做什么用的,而且你也不知道为何需要这个机能。

因为你没有经历项目前期的用户需求的分析和概要设计,不知道其中的来龙去脉。所以你的业务水平也很难有所提升的。

外包项目的另一个特点是它经常需要你懂很多的开发语言。有些项目需要用.net开发,有些用java,有些用php.人的经历毕竟是有限的。

所以造成了你好像什么语言都会,其实什么语言都不精通。当然做外包项目也不一无是处的。外包项目常常会提供各种各样的框架,

你可以通过学习这些框架的源代码提升水平。但是问题是看懂框架的源代码也不是一件很容易的事情。这个我是深有体会,

如果你不到一定火候或层次,是很难理解这个框架为何是如此设计或者这段代码是这样写的。其实框架一般都不是解决具体问题的,它更关注玉

其他的方面的考虑,比如说安全性,扩展性,效率等等,所以会用到很多的设计模式和其他的技术。

说句难听的话,你能看懂structs的源代码就已经很不容易了。更不要说一些其他的专业性很强的类库。比如说游戏引擎。

另一个打击你的提高技术水平激情的原因是

这些外包的公司很少会注重你的技术能力,不是说一点都不看重,而是比起你的技术水平的提升,他们会更看重你的日语或英语水平提升。

所以在我所在的公司,只要日语好的,更会有机会找到好的工作和岗位,当然钱也会更多一些。因为这个是被项目性质决定。

外包项目的成败的关键因素不在于开发技术高低,而在于联络和沟通,这里我说的联络和沟通指的就是碰到业务上的问题就直接去问设计担当者,

这个时候日语和英语自然就很重要了。

总之一句话,外包,既然它能够外包出去,就是说它在技术上肯定是相对要求低的。这样你能获得技术提升也是很有限的。

原文地址:https://www.cnblogs.com/guoyongrong/p/2337491.html