现如今IT行业的普遍状况是前端和后端相对分开,公司也分别有专业的前端和后端团队。那么,企业到底是否需要前后端都懂,能写HTML,CSS,也会Ruby和MongoDB的程序员呢?
有网友表示:
前后端“都懂”肯定不会像专攻前端和后端的人那么专业。所以,还是专攻好自己擅长的就可以。
还有一位网友将程序员分两类:
-
研发型程序员 —— 技术追求不在广,而是深;
-
应用型程序员 —— 不求深究底层实现,追求开发效率,快速构建项目原型;
各自的舞台
-
研发程序员不需要前后台都懂,举例如果是从事前端研发型工作,懂 Chrome 的 V8 引擎渲染,比懂怎么写 PHP 重要多了,一般大公司需要此类人才;
-
应用程序员不需要太关注底层实现,他们不分前后端,编程语言在他们手上是画笔,而他们的作品是高效率地将想法落地,此类程序员也被称为 全栈工程师 ,一般创业公司都渴求这一类人才。
结论
鱼与熊掌不能兼得,同时具备研发和应用能力的工程师少之又少,术业有专攻。应用型程序员很多时候会和产品业务非常贴近,甚至能给产品经理提建议,善于沟通也是应用型程序员必备招聘要求。研发型就不一样,你的专业很专业就行,你可以活的很 diao~
其实,先不考虑公司是否需要,做为一个工程师而言,终极的目标是"build a product from scratch"。那对于做web app的工程师来说,就是前后端通吃,还有一定的运维能力。当然,对各部分能力的要求是不一样的,假如你是个优秀的后端工程师:
-
即使你不会从头到脚写一个responsible framework,起码你应该会使用bootstrap做个过得去的前端展现
-
即使你写不出来复杂的javascript widget,起码能处理像知乎这样的消息通知前端
-
即使你不能对mysql进行性能调优,将performance最大化,起码你能在自己的产品crash时能够恢复数据,恢复系统的运行...
当你具备了这些能力时,你就能更好地站在其他角色的立场上看待后端开发,你的后端开发能力也会随之提升。这也是某种程度上的synergistic effect吧。
这样的人,无论到哪里,都会受欢迎。
下一篇:互联网人,怎样进BAT?