2015年以前是一个前端工程师,2015年以后……

2015-08-13

也许25岁是我的一个分水岭。站在岭上,回望郁郁葱葱,而前路如何,我并不知道。

一篇特别长的流水账,总结一下2015年之前我的工作经历。

前言

这半个月在休婚假,虽是婚假,但和以前差不多,一个人的旅行。旅行的时候一直在想,等旅行完回家的时候,大概就是我跟前端这份工作告别的时候了。原因有很多,可以用来安慰自己的一个是,前端作为我的职业生涯结束了,而它依然可以作为我的业余爱好继续下去,我可以接受兼职、并且继续学习和前端开发有关的其他知识。比如我一直想实现的,写app程序、写游戏。不过,这是半年之后的计划,接下来半年可以预见的是,我会全心投入我的家庭生活,准备装修房子、买车、甚至生小孩这样的琐碎事情。但在这之前,我希望能好好回顾我的前端职业生涯,看看自己究竟是怎样一步一步走上前端工程师这条路的。

正篇

和前端正式结缘应该是从大二开始的。为什么说“正式”,是因为在上大学之前,我也学过很多摆弄电脑的技能,其中有一项就是flash,我也不知道为啥我会买那时候所谓的“网页制作三剑客”,并且还用flash做过小动画,那还是初中的时候,虽然时间遥远但仍有蒙蒙记忆。可那些技能对后来上大学的我并没有什么用。大一过完的那个暑假,我在学校网站上看到了计算机艺术设计辅修的课程介绍,我一直对计算机方方面面抱有浓厚的兴趣,设计也是我很想涉足的领域,所以我跟家里说想学,然后去交了钱。从大二起两年学时,每周的周六或周日上一天课。我们学了photoshop、illustrator、dreamweaver、flash、3dmax,教我们的老师挺好的,也没让我们买什么教材,图书馆里有很多相关的书,我都是借完一个月再借一个月。

记得老师在教dreamweaver的时候,我正好在图书馆借了一些讲前端的书,也不知道怎么的就接触到了web标准这个概念。后来老师在讲课的时候,教页面布局还是用的table,当时我很嗤之以鼻,我还跟同我一起学这门课的同学讲解了一下table布局的坏处和所谓的web标准,并且在写网页的时候全面贯彻这一标准,那时候是08、09年。我从来都没有用过table写网页布局,从一开始就“站在巨人的肩膀上”,这让我觉得还挺幸运的。那时候我看的网站还是蓝色理想,上面正大力推荐一本书——《Web标准设计》,是 aoao (刘杰)写的。aoao现在在阿里,14年杭州的D2前端技术论坛我去了,第一次见到我的“第一个技术导师”,他作为主持人站在台上,说着一些很没节操可是程序员们又很喜欢的话,那种感觉只觉得特别神奇。aoao出书的时候还在百度做前端,这绝对是我后来能进入百度的一个很重要的契机。

 

大二过完的暑假,我收到了一个我们工信专业(全称是工商管理经济信息管理方向)的一位学长的信息,问我有没有意向加入他们的团队。实际上这时候我同时加入了我们学校信息中心的网络安全小组和经管院信息中心,这个学长是以前信息中心的成员,因此而找到了我。前几届还有另一位传奇学长,毕业后进了百度做安全的,叫linx,后来我进百度之后还用过他做的安全漏洞扫描软件。当然这位厉害的学长最后还是创业去了。

回到之前的话题,学长约我在食堂认真聊了一下,具体聊了什么我是记不起来了,应该那时候我还是表了决心的吧,因为当时的技术很差,几乎没有实战经验。

大概是7月下旬的样子,我就回学校开始和团队里的人见面。学长还叫了几个朋友一起,整个团队6个人,男女生各半,有个女生和我一届,另一女生研究生在读,会java开发。我们一开始就是做网站开发,研发人员就是学长兼leader、java妹子和我。刚开始的时候,我们竟然是在一个教室里大家坐一块儿,像好学生一样各自看书,这景象也是让我挺惊讶的。因为我算是后来者,看到java妹子在写代码,我也只好开始学java。看了几天书之后,leader终于发话,去学校后面公寓租了个单间,是跟别人合租的那种,并且终于选定了网站技术方案,就是当时还比较流行的qeephp做后端和jQuery做前端。学长给我们发了很多php的学习资料,后来的半年时间里,我们几乎都是一有空就待在那个出租屋里写代码,做网站。搞笑的是,我们团队里没有美工,然后我学过photoshop,于是整个网站都是我设计的,我还记得整出来那个灰不溜秋的颜色,在大家眼里看来居然还挺不错,程序员们的审美真是奇葩。我学的挺快的,php、MySQL、jQuery、CSS,都是飞快进步。我们还帮一个公司做过CMS门户网站,用qeephp做的,记得报价是3000块,那大概是我们团队唯一一笔收入吧。这样的状态持续了半年,在大三的寒假,这个创业团队解散了。实际上我对这个团队并没有成功的期待,我一直都把它当成一个技术学习的机会,努力把握住,学到更多知识。我也算是体验过创业团队的辛苦,早上9点多出门,晚上12点以后回宿舍。通宵写过代码,常常大家一起在出租屋里过夜,那时候真是年轻精力无限,这样坚持了半年也不觉累。
我其实很少、几乎从来不会跟人具体说起我这段“创业经历”,因为它伴随着我一段感情生活的变化。团队中的一位成员在长时间朝夕相处中成为男友,虽然一直没公开但团队成员肯定都知情。不得不说这段时间的我,几乎经历着相同的技术和性格的磨砺。

 

在创业团队解散之后,虽然还在大三,但我迫不及待想去工作。我立刻开始在网上投实习简历、去现场参加招聘会。百度是我投的第一家公司,当时我学技术,几乎是照着百度前端开发工程师的技能要求一一学习的。2010年3月初,我收到了百度的面试通知,面我的是网页搜索部的FE(当然当时不知道),还是个湖南人,工作两年的样子。他拿着两三张写满了面试题的A4纸一个一个问问题,我表现特别挫,我属于那种实践派,从没系统学习过前端基础知识,全靠借图书馆看书,我甚至不知道W3C这个网站,尤其是一开始就写jQuery,JS基础题一个也没有答上来。这次面试的结果可想而知——没有后文。后来我又看到一个论坛上有百度实习生招聘信息,我鼓起勇气又投了一次,这次邮箱的收件人就是我后来的leader伯乐,祖明哥哥。等回复的这一段时间我收到了一个小公司的面试通知,我清楚地记得那个公司的地址离学校非常远,还是个做企业安全系统的公司,用jQuery做系统界面,所以我的条件还挺符合他们要求。面完这个公司3月底立刻等来了百度的面试通知,这次面试我做足了准备,吸取之前基础知识差的教训,拿出我的教科书《web标准设计》好好研读了一番。面试官是祖明哥哥,听我说是照着百度前端职责要求学的,拿出电脑点开那个网页就开始考我,面试过程还比较顺利,基本都答了出来。后来留了一道线下面试题给我做,就是给我一个UE设计好的图,让我预估完成时间交付,其中包括2个JS效果让我用原生JS写。那会儿刚好遇上一个清明节假期,我预估了3天完成,节后交付。整个清明假我废寝忘食做这个网页,被原生JS搞到头疼,最后终于在假期最后一天实现出来了。祖明留给我线下面试题邮件里面还附了很多参考学习资料,包括网站和书籍,这份资料我后来很长一段时间都用来给初学前端同学的建议学习资料。

清明节后的第一天,我收到之前面的小公司的电话说明天可以去公司上班啦。然后我回复说我已经在别的公司了。这时候我心里是有点小固执的,觉得百度才是我真正想要等的工作。祖明最后没有让我失望,第二次过去面试又简单聊了一下,也和另一位leader樊涛聊了一下。我还记得樊涛说我长得很像老师,当时我的内心其实是翻白眼拒绝的。多亏了祖明这个靠谱的伯乐,让我有机会进入百度商务搜索部(ecomfe)实习。

进百度之后,我的第一个导师是志寿,我做的第一个项目是holmes(百度统计)。不巧的是,我进公司时还在一起的fe团队,在两个月之后就拆分了,和rd们并组,我和导师和另一个fe同学分到了shifen这个组,成了十分新人。这段时间我做的事情基本都是学习导师之前写的那些js代码,百度的技术总是重视js更多一些,志寿的代码风格我在实习一直到毕业的这一年多里都在模仿,这就是导师的力量。然而,志寿并没有等我正式入职就离职去了腾讯,那之后我们几乎没再交流过。

 

fe拆分之后祖明就不是我的leader了,导师志寿走后,我和另一个fe就似乎成了没人管的“野孩子”。这时我的leader是军辉,看起来显小实际已经是大叔的rd。大概是10年的下半年,我开始支持一些“创新平台”的前端工作,这是鸟哥主导的一个项目。当时的我还不知道鸟哥是这么有名的php风云人物,对鸟哥没有啥滔滔不绝的崇拜之情,只当他和我一样是进百度没多久的工程师。鸟哥人很nice,帮助我很多,会帮我写js代码,会给我提界面设计的建议(因为内部项目没有ue设计)。这个项目我跟了很久,一开始是“蹊径1.0”,接着“蹊径2.0”,后来演化成“创新平台3.0”的时候,鸟哥离职了。当然我合作的rd也都有变化,中途和镇宇合作过一个“物料中心模板管理平台”(大概叫这名吧,我也不知道干嘛的),镇宇也是个很nice很聪明活跃的人,我们一起讨论项目技术方案的时候他能给我特别多启发,我记得特清楚当时我用jq写了一个特别大的render,可以把约定结构化的json生成一块html,完了还带交互,新增的模块和设置的属性又可以拼成超大json保存到数据库里。我还是一年后才知道有js模板引擎这玩意的,那时候镇宇就想到了这么个点子,简直棒棒哒。

 

11年5月我回学校准备毕业事宜,7月正式入职。这时候我的导师变成了闫觅,当然,他是个写php的rd。由于十分团队几乎不做和用户打交道的事情,对界面要求极低,所以fe的用武之地非常少。正式入职后我加入了财务平台团队,就是维护和升级客户做百度推广的充值和报表系统。我写了大概三、四个月的php,感觉还行,代码写得挺顺利。

这个时候好像是哥伦布那个团队重组了,给我带来了一个重要的人,也就是我“第三个导师”——erik,董睿调到shifen组,做前端技术咨询(?大概是),反正有点像一架空的高T,因为其实shifen没几个fe,和我一起调来的fe转rd去了,貌似就剩我。还好我特别好学,开始找牛掰的导师学新东西。记得第一次找erik的时候,他说要我带着自认为还不错的js代码给他做review,然后我带着在创新平台用jq写的代码去找他了(我俩还不在一个大厦,他在总部,我在奎科),review完说,整体代码风格还行,就是代码注释太少、空行太少。现在我给别人做代码review的时候也常常说这句话,哈哈。接下来一段时间erik说把他“行走江湖”会的三把斧都教给我,tangram、er、esui应该是这三个吧。我拿营销策略平台的积分系统和财务平台界面练手,历经各种坑(因为文档不全),终于学会了不用jQuery写js以及看框架源码找bug的技能。

有时候觉得那时候的我最轻松了,遇到任何框架的问题,直接给导师提bug或需求让他升级。现在看得懂框架源码了,反而不敢给人github上提pr,担心大家思路不同实现不一样。我在这方面就完全不如我师父,他可以用理论判定两种功能实现逻辑的优劣,我却不行,我只会觉得如果代码这样写能实现、代码精简、格式也没有问题,那就都可以接受。

12年下半年,百付宝并组之后shifen的fe队伍逐渐扩大。师父从微博回来百度,然后祖明leader这会儿出现了,来动员我们这边的fe组成一个团队,新shifen-fe组。隐约记得这几个月期间我们组里自己组织搞过几次技术分享,然后erik出来主持技术大局,把技术分享常规化,一周搞一次,好长一段时间都是我在发这个技术分享的通知邮件,对象是所有曾经是ecomfe的团队,后来还有ps的fe,就是网页搜索部的,想起来他们实习面试还拒过我呢,一直也没去找过当时面我的那个面试官,而现在我更是连他的名字都记不起来了。

这一切变化真是应了那句“天下大势,合久必分,分久必合”。fe团队又重组合并了,祖明这个称职的leader带着我们扩张到30多人(现在应该远超这个数了),形成了现在的EFE团队。

 

后来的事情也没有太多可说的,12年和13年就是努力工作做好项目,项目每年都有大变化,因为老大和团队成员对我的信任,后来做了很多涉及到多部门或多组合作的工作,还有一堆协调工作、流程培训工作之类的。终于算是从幕后走到幕前,开始做一些见用户的项目了,虽然我们前端可控制的元素还很少,但至少成就感能比以前高了。这两年基本上都是对所学前端知识的巩固,同时开始学一些nodejs,因为我们团队自己开发的nodejs开发平台这时候发布了,和提高我们工作效率息息相关的工具,我总要有所了解的。有点遗憾的是,我还没有学很会nodejs,2014年就要离开百度了。

To be continued...

Virola

天马行空幻想主义者。

登录后才能发表评论