相信互联网行业的人一定不陌生“资本寒冬”这个名词,在经历了资本繁荣到资本寒冬阶段,部分实力不强的公司走向崩溃,比如去年曾经火热的O2O接连倒闭,很多盈利模式不清晰,或者烧钱太快又没有及时融到钱的公司也被迫解散。互联网行业的人才市场理所当然的也受到了此风向变化的影响,在供给增加,需求放缓之下,求职者身上的压力越来越重,造成了今年互联网的就业形势没有去年同期好。
前端、后端就业形势不错,移动端工程师压力略大
以下在就业方面分别列出了Java、前端、Android、iOS候选人数与面邀数间的平衡关系。
(蓝色代表所在职位候选人数占全部候选人数的比例;橙色代表所在职位面邀数占全部面邀数的比例。)
Java这一门语言“抗打击能力”比较强,在市场的打击下依然坚挺。它原本就是一门需求量很大的语言,对于每家互联网公司来说,后端都是需要长期开发和维护,所以短期内的供需压力对行情影响较弱。
Android市场相对稳定。但是近期也隐隐出现了一些供给过剩的苗头。那是因为由于移动互联的到来,在很多领域的创业项目约等于APP,在产品未上线之前,企业会大量甚至过度的招聘开发人员来加快产品上线。而在产品迭代时,已经不需要那么多的人手,所以在遇到资金问题或其他的问题时,企业首先想到的会是裁员。
虽说iOS作为移动端职位,基本情况跟Android类似。ios在2015年算是起伏比较大的。在前期,由于每家创业公司都会考虑做个APP,而考虑到苹果的市场占有率,iOS便成为必争之地,一时之间,Ios人才极大地扩充了开发人才市场。但从10月份开始就有了明显过剩。
接下来,看看前段工程师的就业情况
前端工程师一直就是紧缺人才,供应量的短期增加将很快被市场所消化。那为什么我们的标题还在说前端工程师比大熊猫还要少呢?注意前面的那个修饰词——优秀。
由于前端工程师的入门门槛非常低,JS、CSS、HTML并不是很难入门掌握的语言,似乎只要花一点时间,谁都可以通过网上教程和书本学会它。往往他们可能学习到了一些皮毛,就开始竖起了“前端工程师”的身份。
糟糕的前端工程师往往是这样做事的:
1、滥用JS库,因为他们实际上并不了JS的内部(e.g. 一切都用jQuery);
2、滥用JS插件,抄别人的代码哪怕自己根本读不懂(e.g.jQuery.doParallaxPls.js);
3、给Web应用程序添加CSS框架,却只用到CSS/JS的5%,没有看到任何的需求、设计或者比较和评价;
4、认为只要添加了CSS框架,网站就可以「有求必应」;
5、一边在说着「响应式web设计」,却对服务器端技术一无所知;
6、用CSS编程时不管预处理器、命名规范等,却用不合适的selector/ids/magic numbers等;
7、忽视表现、内存泄露(并不理解内存泄露的真正含义),不会检测代码;
8、不会用指标衡量一个产品,或者这种指标旨在自己的电脑、浏览器、设备有效;
9、忽视软件技术。
要知道,web可能是最有影响力的平台和环境之一,在那里执行的程序必须被小心对待。这不是那些浅尝辄止的家伙可以搞破坏的。而这或许也是难以招到优秀前端工程师最明显的原因。
此外,大多人都认为前端开发是一个相对于其他模块来说更简单的领域,开发人员在里面无非是做做Photoshop文件、用HTML和CSS编程,确定网页的内容和形式、用JS编程,为网页制作动画、过渡效果;但了解的人懂得其实前端一点也不简单。
事实上,前端工程师在做的是:
1、在设计师和工程师之间创建可视化的语言;
2、用可视化的设计,定义一组代表内容、品牌和功能的组件;
3、为Web应用程序的公约、框架、需求、可视化的语言和规格设定底线;
4、定义Web应用程序的设备、浏览器、屏幕、动画的范围;
5、开发一个质量保证指南来确保品牌忠诚度、代码质量、产品标准;
6、为Web应用程序设定适当的行距、字体、标题、图标、余粮、填充等等;
7、为Web应用程序设定多种分辨率的图像,设备为主的实体模型,同时维护设计指南;
8、用account semantics,accessibility, SEO, schemas ,microformats 标记Web应用程序;
9、用一种友好的,消耗小的,设备和客户端感知的方式连接API,获取内容;
10、开发客户端代码来显示流畅的动画、过渡、延迟加载、交互、应用工作流程,大多数时间用来考虑渐进增强和向后兼容的标准;
11、保证后台连接安全,采取跨地资源共享( CORS )的程序考虑,防止跨站点脚本( XSS)和跨站点请求伪造( CSRF );
12、最重要的是,尽管有严格的期限、利益相关者的要求,以及设备的限制,无论现在还是将来永远是「客户第一」。
为了实现上述目标,前端工程师采用了从可视化到编程的多种工具,甚至有时要照顾市场、 UX 到内容tweakes等等。
市场不是缺少前端,而是缺少优秀的前端工程师。如果说精通HTML+CSS+JS,了解后端知识,只是60分的合格前端;那么要想成为受追捧、拿高薪的80分优秀前端,要对业务需求和、架构设计有真正的运用;而100分的顶级前端,则必须要能够兼顾技术和设计,更接近「以前端开发为主的全栈工程师」了。我最近看了一篇寸志老师对前端开发人员的访谈录,他在里面的见解让我看到一个优秀前端人对技术的热爱、努力和憧憬。下面简单聊一下他对优秀前端的看法。
那么,寸志是谁?
寸志,陆金所前端架构师,博客《前端外刊评论》(有同名知乎专栏、微信公众号)博主,也常在知乎上回答前端相关技术问题,《Node.js实战》作者之一。
寸志对优秀前端发展的看法
Q1:你认为具备什么样的能力,可以成为一名合格的前端工程师、资深前端或一名优秀的前端架构师?
合格的前端工程师,我觉得更多的要求不是在于他的知识面,而在于基础是否扎实,学习能力和潜力,是否热爱前端,遇到问题的解决方式。这些是我面试所看重的;
资深前端,有宽旷的知识面,通晓前后端,理解互联网的工作方式;了解各种问题大致的解决方案,在某些方面有深入研究
前端架构师,我不懂,但是请容我瞎逼逼下。架构师除了需要具备资深前端所具备的能力,还需要基于公司的业务,技术架构出发,选择合适的方案,优化流程,让工程师无痛开发,高效率开发;深度掌握各种前端技术优劣,紧跟潮流,为公司选准技术方向;掌握更多基础的工程思维和最佳实践,指导业务架构和技术实施……
Q2:对于刚跨入前端领域的新人,你最想分享的是?
请用 Google、Github、Stack Overflow,这样你搜索浏览的是一手 或者二手资料,如果你每天用百度搜索,那你阅读到的资料都是三 手四手五六手的资料,low。如果长此以往,你和人家用 Google 就 有很大的差距了(有点偏激(⊙o⊙)…);
HTML、CSS、JavaScript 是前端工程师的核心武器,花再多时间研究透彻也不为过;
多参加线下的分享会,扩大视野;
可以搜索微信公众号《前端外刊评论》,那里每周为大家提供一篇值得阅读的前端领域的文章!
优秀不单单由当下的技能定义,更由通过一个人的“学习能力”“潜力”“热爱”看到的未来发展空间决定。希望每一个互联网人都能够保持内省,持续进步!