有人懂很多编程技术成为大神,有人什么都会却找不到工作,程序员到底应该往纵向深入钻研某一个领域,还是要横向学习多个方向?这是很多学生学习软件开发专业的疑问!现在安排解决。
前期以专业深度优先前期指的是刚开始工作的三到五年。因为,大部分公司对于三到五年码龄的程序员的期望是精通某个方面的人才,用来弥补某个板块的不足。如果你是什么都会一点,却又不精通的人才,是无法满足企业对你的定位。这样的人很容易找不着工作,或者只能找更低薪资的工作。
中期以公司职位优先工作三到五年之后的职业中后期,此时就不再单纯的以深度优先了,而是以公司业务为导向,工作三到五年之后,年近30岁了。该考虑如何在某个公司创造更高价值来提升自己的地位。
所以,可以想想公司目前的技术岗在这方面还有提升的地方。例如:你的前端已经很不错了,但是后端不给力,你就可以尝试自己去学习后端技术,横向扩宽自己的同时,也能给公司带来一些建议,甚至因为你的提升成为公司的达人。
紧跟技术趋势在此,还要提醒下,就是注意技术趋势,避免主观臆断。例如:年的时候,我们明知道swift可能是未来的趋势,但还是主观笃定该学objective-c,结果,学会了以后没多久,objective-c就开始一路下滑,说明行业都在弃用它,到最后几乎无人问津,
不要用一门即将消失的语言去为自己的公司开发产品,到头来白折腾了一场。
总结:程序员的技术深度和广度选择问题,可以先深后广,外加客观的技术趋势判断,希望对软件开发专业的学生有所参考。