有则改之无则加勉,以此明镜。新的一年,从心出发。
不知不觉就已经是2017年3月份了,还有很多朋友没有意识到新的一年已经过去六分之一了吧。其实我也一样,最开始发现时,如梦初醒,强烈的危机感、压迫感,瞬间袭来。回顾着去年年末互联网市场招聘、求职,兵不血刃地厮杀。各位同行为了一个职位争的头破血流,那些画面,现在想起来仍然心有余悸。本妄想着新的一年年初情况可能好转,或者金三银四的好时候鲤鱼跃龙门——是个跳槽的好时机,却没想到计划果然赶不上变化。2017,求职情况变得更加白热化、恶劣,互联网资本寒冬,行业不景气,是真的来了。往事已逝,昨日已走。年轻的骚年,还没变成好汉之前就渐渐白了头。面对如此严峻的就业形势,我们还能做什么呢?躲得了初一,躲不过十五;是福不是祸,是祸躲不过。诚然,我是没有足够的阅历及经验在这猪鼻子插葱装象吹牛逼的,仅分享个人成长过程及感悟,希望对此刻迷茫的小伙伴有所帮助。也祝福大家最后找到合适自己的归宿,然后我们一起接着愉快的谈笑风生。
时刻准备着
永远要时刻准备着!记忆当中这句话最让我刻骨铭心的是《我是特种兵》画面那时的我满腔热血很容易热血澎湃但当时对这话的理解很浅薄直到自己经历了去年找工作的过山车般心情才渐渐领悟了深刻含义。“时刻准备着”永远不是一句口号,而是一种信仰、一种坚持、一种融入了实际行动的热爱,更是一种荣耀的捍卫。面试中面试官经常问一些看似简单的问题:session和cookies的区别是什么,get和post呢,http与https协议呢,你能画出它的工作机制吗。在浏览器输入一个网址浏览器是如何解析最后发生了什么,能较完整讲述一下吗,能讲的再具体多一点吗。这些看似百度一大堆常见的面试题,你们真的准备好面试并且深刻理解了原理吗。很忏愧的是去年的我就经历了这样的窘境与尴尬,我当时一度怀疑面试官是不是看我不顺眼,怎么“在浏览器输入一个网址,这个过程是怎么运行的”这种问题也问。限于当时我自学前端知识点非常匮乏,我觉得它不属于前端工程师掌握的范畴,后来想起来惭愧不已。而这还是面试中司空见惯的面试题。如果已经绰绰有余,那我们换个口味。分别用原生JS和jquery实现反选、不选、全选功能。又是很眼熟的一个demo吧。方法有哪些?第一想法是循环——for那么jquery是switch case吧?还有什么方法吗?for in?for与for in的区别是什么,三个谁的执行效率最高、兼容性最好?能完全在纸上手写出来吗。习惯了装满插件的机敲手写不适应要不从DOCTYPE一点一点手敲吧。顺便问下DOCTYPE的作用是什么标准模式与兼容模式区别是?
1、
2、
3、
4、那么这个呢是不是很小儿科
这只是前端世界里的沧海一粟。而在这个浩瀚无垠的世界里,我们就像那渺小的独孤的星辰。但区别就在于,有些星星闪闪发光熠熠生辉,有些星星却暗淡无痕,无人问津。因为总有人时刻准备着,努力着。所以不要为自己的受挫找借口。现在有很多BAT实习生比社招的程序猿优秀,也包括现在的我。
梦想还是要有的
不忘初心,方得始终。又是一句老生常谈的话。但我个人打心里认同它。15年我提前从大学一个人来到北京,举目无亲,和大多数朋友一样,然后开始了自己的北漂。在我自费接受完专业的PHP培训之后,我发现自己对前端怀有极高的热枕。当所有同班同学忙着求职php工作时,我找起了前端工作。这意味着不管成功或失败,作为前端的新人,我都要自学从头学起。好在自己运气不赖,没多久遇到我人生中第一家很棒的公司,以php工程师身份入职,但公司给予我充分的时间学习前端,并负责前端工作。那时候也没有所谓的团队带领,几乎靠自己,因为公司总共也就不到10人,我是第一个前端。而那时第一次让自己出糗,便是页面变形,飞起的及其尴尬画面了。好在负责后端的leader很有耐心,在下班闲暇之余指导我如何构造最基本的布局、排版。Leader的宽容让我渐渐冷静,心乱如麻的感觉也顿时烟消云散,茅塞顿开。以至于后来每天晚上学习到十点、十一点回家,一个人赶末班地铁、被通州北苑那个大风吹、通宵做项目,心里都觉得是那么的充实、幸福。当然一路上自己也有动摇的时候,但是想想这是自己的选择,我将无怨无悔,勇往直前。而现在看看自己走过的路,及网上此起彼伏吐槽的声音,很多新人的关注点无时不刻的1y 8k 2y 12k 3y15k等。“这个工资是不是太低了”“哇好厉害1y 20k ”想想自己当初为什么从事编程——为什么前端开发。一个人如果忘了自己想做什么在做什么,和咸鱼又有什么区别呢。水涨船高,程序猿的第一个阶段——三年,会淘汰掉很多不合适编程不热爱编程的朋友。年轻人最大的财富就是时间,而最不能浪费的,就是你现在的美好时光。
而岁月的年轮转眼就来到了爱憎更加分明的2017年。新框架层出不穷,vue、react、angular貌似三分天下。每天待就业的刚出炉的前端百万大军嗷嗷待哺。有饿死胆小的撑死胆大的朋友开始呐喊淘宝首页我一天就能仿照完!vue、react、angular等东西太多了学哪个好。不想学呀我平常学习撑死也就晚上十点,想学就学感觉前端挺简单的怎么就找不到工作...求实习机会只要能学到东西类似这些话语,是不是感觉很熟悉。而当我抛出一个项目一个功能时群里肄业叫喊的朋友意料之内无视了。简历,是需要每天投递包括海投的,但更重要的是,每天代码的不断练习与学习。其实我最珍惜的不是第一家公司那段学习时光,而是半年多前,偶然机会,认识了一个某BAT大牛,简称S吧。然后想方设法向他学习的那段痛并快乐的日子。
由于我脸皮厚,具体认识大牛的经过就不叙述了。在遇到项目中我无法解决的问题,通过自己方法倒腾老半天最后百度无门之后,我一定会去找他的。S人好性格好,所以我后来不要脸直接跑他家解决问题了。很多时候代码一敲,问题get done,抬头一看时间就是夜里两三点了。S也一直陪着我。也因为迫切想要解决问题,所以经常不吃晚饭就飞奔S家中。这时候S就会带我吃出去吃夜宵。吃完我说我想回去睡几个小时早上再挤地铁上班,S就说睡我这的地毯上,有备用被子,节省时间,到时上地铁也方便。我就这样跟着S学了好几个月,好多个夜晚,做梦都是敲代码,就这么度过的。S陪我陪的时间多了,很多时候我心里也很不是滋味,毕竟欠他很多。所以每当发工资,我都要约他出去大搓一顿。他教会了我正常的工作流程是怎样的,任务下达如何正确评估工期,如何规划自己每天的工作,如何更好与同事合作。解决bug的思路是什么,既要勇于承担责任,也不能信口雌黄。他从最开始手把手帮我敲代码到后来慢慢引导我自主独立思考,他像个哥哥、人生导师一样毫无保留帮我。真的就是个良师益友。对了忘说了,他就比我大两岁。但是他对编程及其热爱,以前他自己也经常通宵看代码、敲代码。白与昼对他来说,根本不重要。一个全栈工程师,强项是Php,但PS水平、OOP思想、前端功底深不可测,现在又自学Python django、Swift语言。S是我永远学习的榜样。我从他那真的学习到很多。而现在当我没任务时,我就秉承他教导我的,我的基本状态就是学习,上某前端网继续学习原生JS、Jquery,如何优化代码,提高执行效率。如何改写插件、为我所用。CSS3新特性又出了哪些,Canvas还可以实现什么功能,写个demo。文档是如何阐述、小程序是如何开发。
说了这么多。最后上点干货吧。浏览器内核倾向于那个引擎、如何处理H5新标签浏览器兼容问题、标准的CSS盒子模型是怎样的,和低版本IE盒子模型有什么区别,如何让一个非固定宽高div垂直水平居中代码最少并做好浏览器兼容、CSS3新特性有哪些、Less与Sass的区别是什么、JS实现继承有哪些方法、JS作用链域是什么、JS延迟加载方法有哪些、前端优化手段又有哪些,异步加载JS有哪些方式、什么叫优雅降级和渐进增强。最后借用某金的我很佩服的一道面试题:什么是浅复制和深复制,区别是什么,如何实现object深复制。
我从来没想过自己要成为初级前端,我只是像所有热爱编程的朋友们你们一样,我想快速成长。我知道我需要学习的还很多,我至今独立负责过6个项目,包含微信公众号、小程序、PC端移动端响应式,可能项目复杂度在前辈们眼中不高,没用到什么最前沿的框架及技术。但正因为这样,才更需要锤炼不是吗。良言一句三冬暖恶语伤人六月寒,向所有热爱编程的同学们致敬。谢谢所有直接间接帮过我的朋友,有了你们的鼓励、支持,我才能义无反顾走的更远。也谢谢曾经那些不值一提的挫折,正因为你们,我才变得更加强大。更感谢我自己,还好没放弃。
我爱编程,我爱前端,欢迎各位小伙伴一起交流。成长的路上,让我们一起同行,呼吸与共。