我在2016年是怎么转行做前端工程师的
十月底接到面试通知,到从上一家单位辞职仅仅用了一天的时间。然后看着四百多一天的酒店,我选择了六十块的青旅。还好来北京后一切都算是顺利,面试过程整体很流畅,青旅住了一礼拜offer就基本定下来了,再让我等一个礼拜估计睡青旅的木板床就该把我的骨头睡散架了吧。
offer拿到后就开始找房,还好单位在北京五环外,一间十三平的屋子一千七百的价格至少在北京来说也不算是贵了(之后从同事那里听说,其实还能租到更便宜的)。来北京的时候就带了三千多,东拼西凑从朋友那里借了一万多,交完房租基本就是吃土的生活了,想一想来北京工作和生活也是诸多不易啊,至少在家里不用为了房租而发愁,眼看着快年底了,还要找一间大一点的一居室和女朋友住,马上又是一万多的房租,哭。。。
既来之则安之,不能忘了当初为什么来北京,北京是一个充满机会,充满挑战的地方,在你付出努力后更容易得到回报的地方。入行差不多半年多,慢慢的也知道了自己努力的方向,知道了自己想要什么。五月份进入第一家公司的时候,只会html和css,最简单的布局,甚至完全没有接触过js,就这样,还是进入了第一家互联网公司,虽说公司规模不大,不足十个人,但各个都是充满能量的小伙伴,虽说现在不在一起工作了,但是我也希望大家的事业都能蒸蒸日上,指不定哪一天还能再次携手打拼一波呢,哈哈。在这里也是我进步最快的时候,当然我估计是因为我屁都不懂的缘故吧。基本上刚开始的时候,工作就是被赶鸭子上架,任务给你了,不管怎样,做出来就行,想一想刚开始什么都不会呢,那时候的我基本上每天充满了危机感,每天晚上真的不是在看书,就是在看技术视频,又或者在将自己那些小白问题写在博客上。就这样过了一个月,基本上我就感觉写页面和简单的页面效果,如轮播图等基本就不是问题了。
因为公司的业务导向,公司开始重心放在微信H5页面上了,这也使我进入了第二个成长期。那些微信H5页面全部都是重表现和交互的,那时候涉及的问题基本就是css3动画,页面交互逻辑,移动端页面的兼容性,性能方面的优化,还有一些日常要注意到的坑。这个阶段使我的收获也确实非大,直接奠定了我移动端页面开发的基础。学会了用css3去完成各种移动端的动画效果,知道了页面重排与重绘的原因,开始用js和css去写一些小游戏。这个阶段还有件值得一提的事情就是,当时有几个业务是需要用到逐帧动画的,我发现用css去完成逐帧动画的时候开始变得卡顿了,经过思考,我开始去用canvas完成这些东西,哇塞,果然不卡了,我这几年来终于觉得我自己机智了一回。在这几次用到逐帧动画的业务里,我发现去用ps手动拼接逐帧图确实好费时间啊,这也促使我完成了我github上第一个开源项目FrameSpriteMaker简称(FSM . 现已用vue2重构),用这个工具可以帮助我们,至少是我自己快速的拼接逐帧雪碧图。
接下来是第三个成长期,这个阶段对我的js水平有着巨大的提升。话说的再透彻点,之前我只会dom操作,只会去写页面,但是经历过这个时期,我才觉得我知道了是么是javascript。在大约九月份吧,公司的业务不是特别多,迎来了难得的闲暇期,这时我感觉我在单位就必须找点什么东西来学了,本来是打算学react的,但是一来二去也不知道为什么就开始学nodejs了,网上看了些视频,总觉得只看视频来的不够爽,亲手写点什么才够,最后决定自己用node搭建一套博客系统才行,所幸找到了一个特别好的教程,让我这个阶段的学习特别的顺利,不出一个多礼拜就搭建成功了,而后又揣摩咀嚼,慢慢的对js开始有了一个全面的了解。值得一提的是,数据库知识也是在这个阶段积累的。这里还有我当初搭建的博客实例 Node.js + express + mongodb 博客实例。
慢慢的来到了十月份,公司依旧是以微信H5宣传页面为主,我开始越发的觉得我在做重复性的工作,工作越得心应手就越让我恐慌,因为我知道我离一个合格的前端工程师还差很远,如果我现在就开始觉得工作都能胜任了,并不是我技术厉害了,而是我能够看到的东西太少了,坐井观天了。我开始思考,我是不是要换一个更有挑战的环境了,想想年纪也不小了,也没有多少时间让我犹豫了,事不宜迟,在国庆节后一周我就开始投起了简历,结果第二天就又了电话面试,基本我就介绍了下我在写移动端页面遇见的一些坑和我的一些思考,同时又有一些es的问题,自己感觉答的不是特别好,但还是收到去北京面试的邀请,最后也是有幸进入到了这家公司。不知道这算不算我的第四个成长期,要说算,那是因为在这个时期我确实成长了,要说不算,因为成长的速度没有达到预期。先说说这个阶段的收获吧,因为团队的leader是个大牛,人也很好,面对你的疑惑会受之于渔,这个时期我的js功力得到了进一步的提升,同时开始用es6去写项目,虽说并没有掌握大多数的es6新知识,但是正所谓万事开头难,现在头已经开好了,当有需求的时候,学会其余的知识也就知识水到渠成的事情了。在这里我也终于开始第一次正式的用到了现代化框架之一vue去做项目,用了两个多月,现在感觉也开始得心应手起来了。现在,我要开始反思一下,正如之前所说,这个阶段的成长没有达到预期,确实我觉得我现在所掌握的知识应该在一个月前就完全有能力掌握,甚至更多。我懒了,我也不会给我自己找借口和理由,我现在能做的就是从现在开始,再次的拾起对知识的饥渴感,像刚开始学前端那样,这样才有可能在金字塔上上升一层,毕竟你懒的时候,自然有人在学习,在进步。
最后我再想说一下使我获益匪浅的一本书《JavaScript 高级程序设计》。这本书倒不适合新手起步看,适合有一定经验的人看,我是在工作差不多四个月后开始看的,那时候刚刚学完node,有着关于js很多的思考和问题,带着问题看书是我收获颇深的原因所在,现在我依旧在看。同时也希望有人可以推荐给我一本你自己认为值得一看的书,谢谢啦。
作者博客:[pspgbhu]
作者GitHub:https://github.com/pspgbhu
欢迎转载,但请注明出处,谢谢!