学完前端可以做什么工作?

JavaScript08

学完前端可以做什么工作?,第1张

入门级做页面。就这么简单。把Designer出的各种设计图转化成html+css+js+image的静态网页,并把它们交给后端开发人员制作成页面模板。这就是入门级的前端工程师所做的事情。

进阶级还是做页面。不过稍微复杂一些,你需要开始注意一些更复杂的问题,首当其冲的就是浏览器兼容性问题。老实说浏览器兼容性问题真的不是那么好搞定的,毕竟每个项目对浏览器版本的要求都不一样,而且现在不光有PC浏览器还有各种移动设备上的浏览器,同时国内厂家的浏览器种类也越来越多,坑也是密密麻麻。除了兼容性,你可能还要关注一下性能问题,包括但不限于网络性能、渲染性能、js逻辑的性能等等,这个展开讲可以写本小册子了,呵呵。

中级带团队。你可能会奇怪,一个中级工程师就能带团队了?可是真的很多公司就是这样,尤其是小公司。当你了解了html、js、css以及各种浏览器的各种特性细节之后,你会被任命带领一个小的开发团队,当然是前端开发团队。可能加你一共也就三四个人,甚至更少。这时候你的工作内容除了自己写一点页面以外,还会帮助组员解决各种各样的细节问题,毕竟,组里,你是最懂技术细节的。这个时候,一部分人开始停步不前,而另一部分人开始关注另一个新的问题:工程化。前端代码都是非常松散的,项目结构性差,一旦开发人员数量多起来,业务复杂起来,如何管理这么多人、这么多代码是个非常大的问题。能否在这个问题上得到突破,决定了你能否迈向下一个级别。

高级架构设计。此时你熟悉前端开发的各种技术细节(当然忘了一部分细节也没事 ^_^),同时对各种前端框架、技术的特性聊熟于胸,你知道如何组织和管理项目让大家能以最快的速度达到项目要求,你甚至了解手下每个人的所长所短。于是当新项目到来,你迅速根据自身过往的经验选取若干种技术和工具,配上你认为最合适的人选组成项目团队,披荆斩棘日夜兼程将产品汪的各种奇葩需求斩于马下。这么做了一两个项目之后,你可能又觉得空虚了,你要寻求新的目标。恰好,NodeJS打开了通往新世界的大门。

非典型前端穿过NodeJS打开的大门,你进入了全新的世界——后端。全新的世界,无限的可能。楼上寸老师说的“上天入地,无所不能”,我猜就是这个状态。爱干嘛干嘛吧,这个时候,你应该不会再来问“后端程序员都在干嘛”这种问题了。其实,要成为一名“非典型前端”并不一定非得经过1~4的步骤。只是现在已经上了年纪的前端大多是这样过来的,毕竟,NodeJS出来的时间也并不算很久。

没凉。

做后端的nodejs的使用场景有限,确实不如java和go,坑多且前人经验总结不如其他语言,但是写业务写工具写脚本写中间层应用,nodejs有自己的优势,可惜也不是独有,上手快是真的(这非常重要)。

个人的体会,只代表我自己,如果专注后端开发,不建议nodejs作为主力开发语言,会对自己有局限,而且学到最后也是去学c++了。

对于前端而言,nodejs是必须掌握的,虽然语法都是js,但是目前的发展趋势是前端全干化,后端向云和基础服务下沉,nodejs的优势很明显,贴近业务,扩大前端职能。

让人的产出更好更多更快,对企业有价值,也可以同时帮前端工程师更好的提升自己的视野,了解js,了解整个前后端应用开发流程,也就是所谓的BFF,全称是Backends For Frontends(服务于前端的后端)。

专注做过一段时间后端你就会发现,用什么语言一点也不重要,如果是纯curd,什么语言都差不多,用什么来写curd主要看社区和工具框架成熟度,如果是做后端架构,只会一门语言根本不行,而且环境,机器运维部署,网络等等要学的太多了,也根本不是一个语言的问题能解决的。

总结如下:

nodejs岗位可能确实比较少,也是现实,别压宝一个东西,多学点没毛病。(只是国内,国外看起来发展的真不错)

更重要的是学会看到除了语言之外的东西,比如现代企业,尤其是大企业的用人和职位职能发展趋势。(国内外,gg,fb大多前端都是BFF模式,阿里现在也有这个趋势,当然不一定拿nodejs做,以前是php,比如百度,新浪)

避免撕逼,上面的观点仅仅是我个人体会…随便说的,自己的狭隘视角看到的。