前端“码农”的出路(二)-- 正途
上篇谈到了在前端开发道路上坎坷奔驰7年的33岁的大龄程序员的我的一些焦虑和对焦虑的一些思考,从这篇开始,我想谈谈,对解决焦虑的一些思考。
所谓正途,还是想谈谈作为一个工程师在本职工作上的一些出路,我坚定的相信,有很多牛b的工程师还是稳稳地能走到更老的年纪,中国出现50岁的前端绝开发不是梦想!
一、向深处去,走到极致
对于一个技术人员来说,如果想要做的久,第一就是要走的深。
拿前端举例子,三大支柱 html,css,js 从入门到入土,各种奇技淫巧都需要进行钻研和了解。
对 html 来说,各种冷门标签的使用,浏览器渲染机制,各个标签的属性作用,meta 标签的各种使用,不一而足,很多东西要知道
对 js 来说,es6,7,8 标准都需要不断跟进,学习。三大框架的升级,新特性都需要了解,底层的各种实现方式,js基础,也有很多东西要知道
对 css 来说,css3新特性,less,sass 各类预编译系统,各种新的特性,属性,浏览器兼容性,茫茫多。。
对于浩如烟海的知识,怎么做到精深,我有几个想法:
1、构建自己的知识体系,形成完备的知识结构,有新知识出来后,能够快速在知识体系里面找到沿革,技术的来龙去脉了解清楚
2、具备快速学习的能力,虽然新技术细节可能不清楚,但是知道有这么个东西,能在需要的时候快速学习了解,并且使用起来就可以了,没人能做到事无巨细都装在脑子里
3、有方法论,知道如何去收集了解新的技术
4、提升自己的编码能力和对基础知识的了解,包括算法,计算机原理,各类通信协议的了解等等
基本上来说,保持对技术的孜孜追求和对产品的敬畏,不停的在前端道路上走到极致,成为行业的技术专家,有可能可以度过危机。
但是,好吧,但是后面的话比较重要,技术的学习曲线整体上来说也是符合二八法则的,80%的能力和技术,在职业生涯的20%的时间基本上就get了,后面20%属于真正拉开差距的一块,可能需要的时间和精力是之前的数倍,
另外,对于整个行业而言,技术水平理论上是一直在往前走的,所以为了保持竞争优势,在钻研技术这方面,得持续不断的学习,学习,再学习。
二、向广处去,拥抱全栈
和深度相对的是广度,很多公司一直提倡的是广度,比如阿里的大前端,nodejs的强势等等
对于前端开发来说,我认为的广度可以分成两部分:
狭义的广度:
在开发的范畴,向后拓展,比如用nodejs或者其他语言走到服务器端,通过非结构化数据库走到数据库,形成全链路的开发能力。全面,是这条道路的注脚,全栈,是她的名字。
广义的广度:
首先,肯定是包括上面的狭义广度的。与此同时,向上下游工种扩展,比如上游向设计产品方向,下游向后端开发,运维方向扩展。这是一个新名词,产品工程师,能一个人搞定一个产品的工程师。
总的来说,广度比深度要相对容易些,因为一般来说各个领域前期都能通过20%的时间获得80%知识,但是,这种方式有一个很大的劣势
在各个大公司越来越细的分工和螺丝钉化的背景下,广度不如深度吃香,对于创业公司反之,所以,广度的方向适合想一直在创业公司浪的筒子们
三、转管理
在中国,技术走到一定程度,可能会觉得很乏力,自己一个人做事情的力量往往不足,所以需要纠集一堆人做事情,这就是团队。
而如果想让团队按照自己的思路来走,那么,必须做这个团队的头,这就是走管理路线。
其实相对于做技术,管理路线是更难走的,因为管理需要的技能比以上两点更多。
第一,技术转管理,一般来说都是做技术管理居多,技术不行,很难服众,所以转管理,技术不能丢
第二,管理包括太多学问,怎么激励,怎么对上对下管理,怎么保持对合作方良好的合作关系等等,学问太多了
第三,当你带了团队以后,考虑问题的思路和角度就必须发生变化,从我要得到什么,到团队需要得到什么,从为我争取什么,到为团队争取什么,都是问题和学问
所谓:”治事者劳力,治人者劳心“,管理是一个劳心的事情,绝对比单纯的做技术要来的复杂和深刻,所以转管理,也得三思后行,不是所有的技术人都适合转的,强扭的瓜只会苦涩
严格来说,走技术线的正途就是这样了,从广度,深度,转向管理路线3个方向来走,沿着技术的套路走下去,在某一方面做到极致,可能是”码农“的出路之一。
以上就是我的一点思考,希望有兴趣的同学留言探讨