对于大多数程序员来说,都有自己擅长的领域,有人擅长java、有人擅长C、有人擅长php,有人擅长DB,对于全栈的工程师相对来说比较少一点,毕竟每个人的精力有限,每天工作那么忙,还时常996,也很少同时掌握多个领域,如果掌握的广度上大一点,那么深度上就相对就会弱一点。
当然,这并不是绝对的,这还是要看个人的兴趣爱好和精力,我认识的有一些同事,其中也有不少全栈的,而且在每个领域都能独当一面。
印象中最深的是我在做Android开发时候,团队中有一位同事不仅擅长Android开发,还擅长iOS开发,java服务端开发。
每次有项目启动,他都是自己选择要从事哪个端开发,几乎是看心情的工作的。更重要的是,我这位同事技术水平很不错,即使项目组项目进度很赶,他也很少加班。
不由得让人心生佩服。跟这样的人一起共事,真是一件幸福的事情。
最近因为业务需要,我也加入全栈队列,我需要掌握以下技能:
对于逆向开发,刚开始接触时,感觉挺吃力的,不过还好,熬过了一段时间慢慢地就适应了。
这里我想说的,如果想进入另一个领域,一定要有压力,行动起来。
这种压力可能来自于工作,也可能是自己给的,但无论如何一定要有压力,有压力才有会动力,要不然很容易退堂鼓。
我有一位从事Android开发同事,去年他说他想转向java后端开发,可一直纠结于没有学习动力而迟迟没有行动,现在都过去一年了,前两天和他沟通,他还在说他想学服务端开发。
那么对于程序员来说,技术深度与广度哪个更重要的?
在不少人看来,在技术上广度大一点就意味着深度不够。
由于我本人亲身经历过,对此观点我并不这么认为,还是要看个人的具体情况,如果个人学习能力不错,精力又充沛,想在每个领域也是可以有深度的,就像我上面说的那位同事一样。
并不是像大家想象中的那样,只是了解或是入门,只是建议大家在平时学习中自己要把握好一个度,不要每门领域都是学一点,而不够深度,这样在工作方面优势并不大。
那么对于技术,要说深度重要还是广度重要?
我想两者重要,如果非要在两者中选择一样的话,那自然要优先选择深度了,只有对一门技术掌握到一定程度,我们才能靠这门技能找工作,养家糊口,有了一定的经济基础才能去做其他事情。
如果有兴趣,还可以适度横向发展一些自己其他领域,扩展一下自己的广度,这种广度,不止限制编码,还可以是产品思维、运营能力、管理能力,毕竟技多不压身,多一门技能以后就多一份选择,说不定有些技能还可以帮你度过中年危机。
好了,今晚就写这么多了,我要去摆地摊了。如果有不同观点,欢迎交流!
作者:洪生鹏 白天搬砖,晚上摆地摊。技术交流、媒体合作、品牌宣传请添加微信: hsp-88ios
联系客服