|
程序员千万不要干全栈?千万不要把自己的路给堵死了!时间:2023-03-15 看到了一篇文章,大致的内容是一个30岁的程序员被劝退了,原因他觉得是他这些年来什么都学,导致自己始终没有掌握一门拿得出手的编程技术,被末位淘汰了。于是感叹:“程序员千万不要干全栈,薪资不光不如那些专精于某一种编程语言的人,最后还可能因为技术不精被淘汰!”。 对于他的遭遇,我表示很同情,但是作为一名程序员,他的结果其实是可以预见的!可我认为全栈还是很有必要的! 我倒不是站着说话不腰疼,而是我一直在强调,如果你没有特别好的学历背景,能进入的公司都是一些中小型的公司,那么程序员在刚进入职场的时候千万不要接触全栈!而工作三五年以后,就必须考虑往全栈方向走,否则可能最后的结果就跟上面说的那个程序员一样的结果! 刚入职场就全栈影响技术提升 上面说的这个程序员就是典型的例子,可能本身学习能力也不是太好,恰巧在刚进入职场的时候就被公司要求全栈,所以导致好像什么都会,但又什么都不精! 我认为,程序员在毕业以后的那几年是很关键的,不一定是三五年,可能很多人脑子比较好使,三年左右就能把所学的知识和实际工作关联起来,但是有的人悟性低一点,可能就要五年甚至更长时间。 不管一个程序员在学习编程的时候脑子多好使,在毕业以后都会面临所学知识和公司实际业务的结合以及一些在学习的时候接触不到的东西。因此,我们需要一门心思去吸收和巩固一门编程语言。 不管是什么编程语言,他们的编程思想都是差不多的,因此,在三五年之后,当你已经把所学的编程语言的核心内容掌握住以后,按照你掌握的内容再去学习其他编程语言,你会发现,其实它们是差不多的,有区别的只是语法而已! 但是,如果一个程序员刚入职场就全栈的话,意味着在三五年之内,你的精力会被分散,且因为每门编程语言和框架都不熟悉,因此会把时间过多得浪费在本来应该可以避免的事情上! 举个不恰当的例子吧! 比如你本来就不会开车,此时有人要求你一边学习开轿车,一边学习开挖掘机。如果你先学会了开轿车,再去学习开挖掘机,那么当你坐上挖掘机的那一刻,你只需要明白挖掘机的档杆和轿车的档杆的区别就行了!其他的东西比如如何停车,如何行驶,其实跟轿车没多大区别!但是,如果两个一起学的话,你可能就乱了,可能会经常把两种车型的档杆弄混! 技术成熟后全栈是很有必要的 十年以前,主流的编程语言也就是C/C++、Java、C#等等。但是,看看现在,什么Python、Go、Rust等等,前端“HCJ”倒是一直没有怎么变过,但是编程框架倒是一波接一波得出来!企业也会根据流行度,选择合适自己的编程语言和框架。如果一个程序员还钻在一门编程语言里,势必会导致自己的路子变窄! 比较明显得是现在很多中小型企业在招聘时,薪资给得比较高的岗位基本都会要求至少会两门以上的编程语言或者框架,大多数还是要求前后端的编程语言都会!如果你只会一门编程语言,即使能力再好,可能到最后也会面临找工作困难的问题! 相比招一个只精通一门编程语言的程序员,很多公司为了节省人力成本,现在更加倾向于招聘一些“样样精通”的程序员,虽然“样样精通”可能有些理想化,但是“样样会一点”很多程序员还是可以做到的! 所以,这是市场化的结果,既然无力抗辩,那么只能顺应市场需求! 现在的编程环境已经不太讲究“工匠精神”了,大多数公司为了保证生产力,走的路子其实是“流水线作业”的模式! “全栈”不光是一个工作内容的描述,也是一种学习态度的体现,也许很多人学习全栈可能仍然能找到专精一门编程语言的工作,但是,多样化的学习曲线对于编程能力的提升仍然是有帮助的! 结语 编程语言都是千篇一律的,但是我们还是需要在职业的前期巩固一门编程语言,让自己“拿得出手”!而程序员是一个需要不断学习的职业,全栈或许不是为了顺应市场需求,但能从其他语言中学到一些新的编程思想,全栈还是很有必要的,即使当下不用,也能以备不时之需! |