在敲下这个标题的时候,心里好虚。话说我一直不太喜欢发表这些看上去很假大空的文字,每个人的职业规划都是独有的,不具有太大的可复制性,把自己的经历放出去,容易误人子弟。只是最近很多师弟们(别问我为什么都是师弟,我想静静……也不要问我静静是谁!)问起这个,也就根据自己的经历发表一下对前端工程师的看法吧,“我说的都是错的”,仅供参考。另:本篇是纯文字,密集恐惧症换成勿入!

从我接收第一份前端需求开始,到现在也有五个年头了。自己也从一个愣头青变成一个快到而立之年的大叔,时间真的是哗啦哗啦的快。这五年里,其实可以分成三部分:1~2, 3~4, 5。more

1~2 吸吸吸,疯狂的吸取知识

刚毕业时满腔热情,一门心思只往前端事业发展。刚从学校出来,看到什么都是新鲜十足,什么都想学。不断的买书看书垫枕头,最疯狂的时候一个礼拜晚上看完正本犀牛书+做笔记,后来再也达不到这种速度了。很幸运我能加入到AlloyTeam,依靠WebQQ,使得我的编码能力、项目经验duang duang duang的上去了。同时也搞了很多奇形怪状的业余项目,基本上无论遇到什么跟JS相关的“新”技术(新是对于我自己来说的),我都想去尝一尝。

对于刚毕业的初学者来说,头两年真的真的是非常重要,学习的激情、速度以及熬夜的能力可以发挥的淋漓尽致。在这个阶段,通过大量的编码提升JS能力,同时尝试各种JS框架和库,寻找适合自己的框架,甚至自己也写了一个JS库和构建工具。“不要重复的造轮子”这句话,初学者都应该无视。你不造轮子,怎么知道别的轮子好不好用?怎么知道造一个轮子有多难?怎么知道如何改进轮子?我不认为一个新手去看jQuery的源码能看懂,反正我当时就晕晕乎乎的。

在这个时间点里,其实还没怎么考虑以后的发展,而且也仅认为前端工程师,学好JS/CSS/HTML就够了,其他的没兴趣也没意愿去学。

3~4 大大大,扩展知识面

在JS/CSS/HTML里探索了2年后,突然发现越学越不懂了。出了HTML5,看了WebSocket,想学会,结果要看网络协议、要看HTTP/TCP,还要学Server开发等。顿时感觉分身10个也不一定能学好。为了跟上潮流,也得硬着头皮上。好不容易Server、网络、前端、浏览器各种知识都多少了解的时候,移动潮流来了!OMG,Android、iOS还有WP……生命不止,学习不休。

其实到了这个阶段,多少也算是个有经验的攻城师了。开发一般需求不在话下,偶尔还能承担个架构设计。在提升JS能力的同时,开始要往多方面发展。前端工程师远远不仅是JS而已。制作一个性能高、交互好、视觉美的页面,需要从前端框架选型、架构设计、构建工具,到后端通信机制、设计与交互、网络和浏览器优化等各方面的知识。一专多长才是前端工程师的终极目标。有个人说得对:一专是指你不可替代,多长标示你可以替代别人。这样你在团队在公司的地位才更加牢固,公司也会给你提供更多的资源。

同时还要开始提升自己的名气,可以通过发表技术博客,提交和参与开源项目,做部门级公司级还有业界分享,参加业界会议等等。在这个信息瞬息万变的互联网时代,保持交流才会让自己不落伍。同时名气大了,能找到更多志同道合的人一起研究技术(探讨生命的起源也不是不可能的),甚至想跳槽,也是放个屁的事儿(意思是简单-_-|| 这都什么比喻)。

5~ 摸摸摸,摸清前方的路

这个时候,如无意外,你也应该成为高级工程师了。编码在工作中比例已经不算太高,更多的工作是承担技术评审、架构设计和项目管理等事情。工作中除了完成自己的事情,可能还需要指导新人,做新人培训,带领新人完成项目。同时还会有一个抉择摆在眼前:继续深入研究技术 or 往管理方向进发。

技术 or 管理,这里没有对错之分,只有合不合适。有的人就不善于交流,同时喜欢专研,可以继续走技术的路,发展成专家;有的人则可能有比较强的领导力,可以带领一群人完成项目,那可以转向管理,成为Team Leader等。

不管选哪个方向,你都已经是个优秀的人,而且应该把这种优秀传承下去。成为导师,使新人变得优秀;成为面试官,挖掘优秀的人;成为讲师,让更多人学习到优秀,等等。

总的来说,头两年一定要打好基础,找准自己的G点,深攻下去;高潮之后,往广度发展,掌握其他相关和不相关的配套知识(这不是矛盾么?Σ( ° △ °|||)︴);然后摸到自己的目标,发售大胆的爱爱(老了,手抖打多了)吧。不仅自己爱(前端),也要让更多人一起爱(前端)哦。

Comments
Write a Comment

Tags

css3   魅力CSS   nodejs   loading   CSS   疯狂的菊花   html5   animation   compiler   编译脚本   png   WordPress   智能   旅行   优化   模板   历史记录   跨域   manifest   frame   canvas   动画   js   离线应用   codelet   transform   抽取   java   兼容问题   发布脚本   富文本   那一年在他乡   htaccess   iframe   帧动画   加载速度   intelligent   跨浏览器   DNS解析   插件   checkbox   单边   step-start   vary   复选框   自动更新   转换   文本溢出   盒子阴影   menu   blob   西安   滑动背景   box-shadow   内存占用   键盘事件   python   auto   text overflow   background   所见所得   android   rotate   字节数   合并   文本框   slide   字符串连接符   协议   伪类   兄弟选择符   网格   节点位置比较   空白   斜线拼接   自定义命令   溢出   clock   素描   无法更新   分隔符   字符编码   body   下载文件   精灵图   step   nodej   ubuntu   apache   css3选择器   创建文件   多级菜单   编辑状态   ajax   阴影   垂直   chrome   管道   时钟   firefox   背景   文件上传   createobjecturl   游记   下载   放射渐变   版本号   宽高   照片   localStorage   渐变背景   图片   图片拼接   属性值检测   自动生成   计算   返回键   oauth   合图   reset   调用   cavnas   漏洞   按钮   margin   线性渐变   xsrf   被黑   tab   checked   修复   border   消失   step-end   sprite   common-upload   菜单   兄弟选择器   字符串   svn   九寨沟   缩进   css遮罩   svg   添加系统服务   gzip   插入代码   动态   加速   模拟