转自于网络
最近一直没更新博客,主要是忙于工作,同时和父母做了一些思想交流,也在调整自己的心态。现在总算告一段落,今天是辞职后的第二天,原本就想写下这篇文章。看了网上很多关于对日开发的讨论,发现自己接触的内容其实只是皮毛,但即便是这些也让我对对日外包有了一些体会。这篇文章并非抒发不满,也不是离职时的“吐槽”,只是想记录一下这段不易的经历,顺便分享给大家。
为了遵守保密协议和职业操守,文中不涉及公司名称,业务内容也会以大家熟悉的技术方向为主来讨论,切勿对号入座。以下所述的只是我作为一个普通程序员的看法。
一、工作前对对日外包的看法
我并非重点本科的毕业生,而是从二本院校(专科)毕业,带着对计算机技术的热爱进入这个行业。临近毕业时有些迷茫,尽管学了一些技术,但对社会尤其是计算机行业仍不太了解。通过学校的推荐,我进入了一家日资企业。对对日开发的印象是从老师那里听来的,前辈们有的进入了像用友这样的公司,还在开学典礼上发言,给人一种榜样的感觉。我对日语也有些兴趣(倒不是因为工作,以后会谈到),相比其他同学来说,自己总算有个目标。
二、面试经历
当老师推荐我和其他几个同学去笔试时,并没有抱太大希望,只是去试试看。意外的是,只有我接到了复试的电话。由于是一家小公司,部长级别的全员出动面试。虽然很紧张,但我磕磕绊绊地通过了面试。后来得知,很多新同事是自己找到的工作,而我却是学校推荐并第一次就面试成功,这对个人成长其实并不利,后来在自己找工作时经历了多次面试,才逐渐意识到问题所在。
印象较深的是,面试时被问到“如何从数据库中提取数据”。我当时只用PHP和MySQL做过简单的博客系统,竟脱口而出说在VB里用Data控件绑定数据源来提取数据,连基本的SQL都没提,导致被面试官怀疑。那次面试后自我感觉很差,以为肯定没戏了。大概过了一个星期,接到人事部通知,说我通过了面试,可以来实习,如果表现好就能转正。欣喜之余并没察觉到其中的蹊跷,直到半年后才明白。因为我当时的简历写的是Windows平台开发经验,不懂Java,所以被安排在了Windows平台的ERP系统开发部门,使用的是早已被日本开发的框架。
三、实际工作
在对日项目中,职位分为几个层级:
PM Sr.SE:项目经理,通常是开发部长或副部长
PL SE:项目主管,负责项目跟进、管理下属、撰写修正式样书和小范围的业务逻辑探讨
SL Sr.PG:高级程序员,分担一些项目管理和设计工作,负责复杂的编码任务
PG:程序员,底层工作者,拿最低的工资,干最累的活
1. 框架
不论新旧系统,均采用一个历史悠久的业务逻辑系统,框架非常成熟,但也极其繁琐。系统对代码封装极深,所有程序都依赖于共通的基盘模块。虽然封装好的部件可以减少实现细节的担忧,但如果遇到需要定制的情况,只能自己写代码,因为日本方一般不同意修改共通模块。这种工作虽然稳定,但缺乏挑战。
2. 编码工作
在这种框架下,编码工作变得机械,许多程序只能按照规定流程进行,创造性受到限制。难度不算高,很多时候只是复制、粘贴已有代码,编码成了一种机械劳动。长此以往,程序员的创造性思维和积极性都会被压制。
3. 技能
公司对技能要求不高,很多时候只要有编程基础就能胜任。某些项目只要求员工掌握应付项目的最低技能,甚至不鼓励深入研究代码。
4. 学习
程序员最大的竞争力并不是当前的专业技能,而是持续学习的意愿和能力。然而在这家公司,很多同事并不愿意学习新的技术,甚至遇到问题只求快速解决,不愿自己探索。在我看来,这样的工作态度虽然省时省力,但对个人成长是不利的。
5. 外语能力
在日企,语言能力往往被看得比技术能力更重要,这与日企文化有很大关系。比如某位副部长只有业务管理经验,编码水平还不如实习生,但负责项目管理和测试。新入职的员工水平逐年下降,许多同事只是凭借日语水平进入公司。
四、辞职的原因
尽管这家公司提供了稳定的环境和机会,但我最终选择了离职,主要原因在于:
缺乏竞争:公司环境稳定,少加班,压力不大,但长久缺乏挑战会导致职业停滞。
成长空间有限:在经历了近两年后,我依然觉得自己的技能没有得到实质性提高。
工作内容单调:对日外包中,许多工作只是机械复制粘贴,没有太多自主发挥的空间,创造力被抑制。
虽然离职原因多种多样,但这段经历对我来说依然是一种宝贵的积累。希望通过这篇文章分享给大家,给那些对日外包开发感兴趣的朋友们提供一点参考。