市场需求
决定产品价格最重要的是供求关系。技术水平重要,但绝没有市场供给关系重要。不能理解的话举个简单例子,空气重要么?重要,人没了空气活不了,但是为什么不值钱?就是因为在市场关系中是供远远大于求的。
现在是互联网公司的春天,很多公司如雨后春笋般发展,所以对前端开发的需求很旺盛,都是处在供小于求的情况。随便上招聘网一搜,北上广深这些一线城市不说,二线城市一个月的招聘消息都不少。更别说现在像竞鹿网这种新型招聘网站的出现,更是有利于求职者的。
工作强度
这个字体是不是大一点清楚些?
这个颜色不好看,改成红色?
这里加个特效…
最近流行扁平化设计,网站需要改版…
这种需求已经碰到太多次了,一个词来形容就就是:频繁。
再加上现在混合app的流行,网站页面更新速度快,也为前端代码频繁更新提供了“客观条件”。
人的天性更加于纠结那些眼下看得见的东西,所以前端开发者承担了外自客户,内自产品经理、设计师施加的压力。而这种压力传递到服务端很可能就是一条sql语句,一张表的事情。如果能力较强的前端工程师可能还承担了代码压缩管理等其它附加任务。
重要性
前端的代码都是直面客户的,客户即是公司的上帝,重要程度不言自明。
复杂性
- 知识点多
越学习越发现,要做的一个优秀的前端开发人员确实比较难。首先要掌握的技能知识很多很零散。不信可以看看技能树。前端又可以分为PC端、移动端、混合应用、js后端,然后有丰富的框架等着你选择,碰到的坑又各不一样,比如pc端要考虑浏览器的兼容性问题,移动端要考虑屏幕适配等。光有理论知识还不行,还要实践动手能力,学会使用工具,首先是IDE或者编辑器,然后是各种浏览器或者移动设备,最后还有版本管理、代码压缩等自动化工具。
开发出一个网站往往像用几十道工序制作一件手工品,不一样的是,别的手工匠人可以用几年的时间打磨制作,前端开发流程是越快越好。
- 技术更新快
比如Angular和Angular2,学angular的时候我就觉得这真是像学了另一种语言,等到了angular2,前面掌握的angular也就派不上什么大用场了。比如现在学javascript,等到ES6普及,等于又学另一种语言了。这种情势地发展对新入行的开发人员有利,因为知识一更新,老的开发人员也要重新学,大家又都在一条起跑线上了,长江后浪推前浪。
一些行动
一份好的简历
推荐一个模板。
多了解市场
上上求职网站,搜索一下前端岗位的招聘公司数量、岗位数量、技能要求。和HR聊聊天,了解一下行业内的薪资待遇。不一定真要跳槽,但有时间也可以去参加一些面试,一来是积累面试、交流经验,二来万一真的有更好的机会也说不定。
学会谈判/面试
程序员有个通病,因为长时间和机器打交道,所以沟通能力会比较差,尤其在和陌生人打交道的时候。不善于沟通在于你的不了解,不了解市场,不了解面试技巧。想一想你做了1年jquery开发,别人跟你聊jquery的时候难道你还讲不上几句么?
比如一些公司惯用伎俩就是问一些工作中基本上用不到的知识点来考倒你,然后说你能力还不够,但是还可以来公司好好培养,然后趁机打压薪水。
解决的方法参照上一条。
扩展知识面
了解一门后端语言还是相对而言更有竞争力的。
不要迷信技能树
你要记得一个人活在世上的时间是有限的,精力有限的,学了无用的东西就是在浪费时间。把那些时间拿来聚会、谈恋爱、玩乐都好,起码收获了友情、爱情、快乐。人生可以体验的事情还有很多,提升薪水也不光是凭你会几门开发语言,用过多少个js类库。学习方法、思维方式比技能都重要。
学海无涯
千万不要以为我学完了xxx和xxx就很牛逼了,这就像读中学的时候老师忽悠你用功学习,以后考上大学就轻松了,考上大学继续有人告诉你好好学习,等你工作就自由了,现在工作了,可以回头想想这些话的可信度。
学而不思则罔,思而不学则殆
学习之前先想想我为什么要学这个东西,要耗费我多少成本(主要是时间成本,也可以叫机会成本),学习了之后能带给我什么好处,我要学到个什么程度。。。