食指小心翼翼的按了一下Enter,提交了深夜前的最后一行代码,轻轻的将烟灰不是很熟悉的抖了几下,看了一眼窗外只有几盏孤独的路灯下的北京夜色突然间想起了什么,那是多年前键盘上的梦想。从事这个行业8年了,走到今天想把一路的经验和辛酸呈现给你们。也想静下心来,好好写点什么对得起这个标题。
我是谁?
可能你认识我,也可能你觉得对于敢写这样标题的我多少有些鄙夷。不过都希望你能耐心看完它。我跟你们一样,经历中国传统教育从小学中学高中大学,一直就像一个不倒翁一样一直被摆来摆去,小学的时候妈妈就会说你看人家小王学习怎么样,长大的时候妈妈就会说你看人家隔壁老王每天西装革履工作怎么样。不过我很幸运在中考的时候有幸成为了别人嘴中的隔壁小王,已全校前几名的成绩考入了当地的重点高中,全镇的人都来贺喜甚至还有定亲的。这件事到了高中让我膨胀的很,一次食堂排队吃饭有人插队我骂了一句,结果出了食堂30几个人堵着我,很可惜我只打倒了2个,剩下28个人对我做了什么我就不清楚了。住了一段时间院回到学校又跟宿舍老师闹了次,学校就把我劝回家说你先回家休息休息,现在有点浮躁啊小伙。高一这一年我就记住了一个化学元素口诀三短三长一不全;七主七副零八族(我的天,别告诉我你不知道哈~)。
高二再回到校园到处都贴着几个大字:提高一分干掉千人。我才猛然意识到原来要高考了,老妈怕我再惹是生非在外面给我租了房子,半年时间我捡起了所有高一课程回归了我中考的成绩,老师看我表现好,也把文艺委员这个职位还给了我,不是因为我能说会唱而是因为我可以设置网络邻居动态DNS和IP地址让班级多媒体上网给同学们放电影,不过能选上文艺委员跟我有才也是有点关系的,这个时候一不小心迷上了网游,记得那个时候晚自习10点半下课吃点东西直接奔网吧包夜早晨5点回去洗洗准备早自习,有的时候为了跑跑卡丁车一个手指头一个晚上就玩一个赛道,生活费都买了天龙、诛仙装备。搞得我每顿饭只能吃面条买不起卤子。现在想想那个时候童子身真是不怕火炼。后来精神状态越来越不好,高三压力越来越大身体终于出了问题,我的成绩也掉下来。那个灰色的夏天还是来了,老爸担心我高考在工地摔成了粉碎性骨折我也做了一些手术。高考的成绩也只能让我走个专科。无数人劝我复读,我没听背起了包离开了家乡。包里有一本《局域网组装》和《五年高考三年模拟化学版》。
故事讲到这里,给大家总结第一点。想成为一个好的开发人员第一步Windows操作系统是你必须深玩的东西,至少你要懂BIOS、GHOST、PE、分区、破解Administrator密码、用户权限、驱动安装、注册表Regedit、启动项Msconfig、进程、彻底卸载软件、网络邻居配置、常用的批处理命令如Ping、文件夹权限、各个版本Windows的区别、端口常用路由器在Windows下的配置以及电脑组成和组装过程。为什么呢?因为这将为你将来学习Linux夯实基础。
大学
再见了我的年少。
离开了家乡,我选了一个专业叫工业分析与检验,想象着在我大东北重工业咋也能找份工作吧。没想到学校学的鬼东西实在让我提不起兴趣,老实说还没有那本五年高考三年模拟讲的深,第一年顺利的拿到了一等奖学金,人啊你比他好一点,他不会承认你,反而嫉妒你;只有你比他强很多,他才会承认你,然后还会崇拜你。所以要做,就一定远远的超越别人,让他们遥不可及。所以我立志一定要做些什么,那年虽我已不是童子身没那么大精力,但也至少风华正茂。我买了人生第一台笔记本,那是台神舟售价2400元1G内存,双核CPU,128G硬盘。
带着它我搞了一个小工作室,并开始在学校附近给人家修电脑布置家庭局域网,最关键的是可以自由频繁的进出女生宿舍。女生宿管阿姨问干嘛的,站住。我说硬件工程师谢谢。后来偶然一次看到中央台的网页设计教程,我将这些视频下载到MP4里面,花了2天的时间用笔记下来,而且实践一下居然看到了自己设计的百度首页,然后我就跟他们说你们知道么,现在我又是网页工程师,谢谢~跟大家说他们也不懂,不过慢慢的我成了各个系嘲笑的对象,总会定期有其他系的人跟看猴一样围在我们宿舍门口。
直到遇到了计算机系的老师,我才知道自己是多么无知。他是一个唯一没当面笑我的人,他是问了我一句你知道啥是动态网页么?我说会动的网页?他说你知道啥是ASP么?我说A什么P?老师说没事了,然后我转过身他咯咯咯对着另一个老师笑了好久好久好久,"这一笑"让我彻底打开了编程的大门。我买了本ASP网页设计,接触到了原来JavaScript可以操作我的按钮,原来很多内容可以不用重新做网页覆盖原来文件,知道了数据库。更多的日子我在图书馆,更多的日子我在教室没有人的时候反反复复的黑板上写着书上的代码。很感谢当初努力的自己,慢慢我扩大了工作室的范围去接ASP企业站200块一个,后来因为PHP的300一个我学了PHP,直到一个项目被我做砸了赔了客户1000块。
讲到这,我想给大家说。作为一名合格的前端开发人员,你至少要学一门后端语言和一个数据库在如今的环境我比较推荐PHP MySQL,ASP Access(Office套件类似于Word)已经慢慢被淘汰了,但我建议你可以了解,因为HTML5 Web SQL其实是一个独立 SQLite文件JavaScript在配合的时候跟ASP Access基本是一回事。不用把PHP学的太深,但至少要能配合MySQL实现增删改查,能用过几款PHP框架比如YII,懂得模板渲染好处和不好的地方,能把MVC理解到淋淋尽职。为什么呢?因为这将让你更好的配合后端同学实现业务,也能为你深入HTTP协议打好基础,更能为做好高性能的全栈前端做好第一步,如用PHP作为代理层。
月薪800
为了一份爱情的责任,在大学毕业的时候我离开了东北,离开了一个月面试才面试上的一家让我做前端的公司,当时的前端还不是很受重视,要懂网页三剑客。我当时面试的职位是.NET可是人家不让我做,让我先从前端学起。不过还是很惋惜,到了山东我开始了自己的职场生涯。第一份工作工资800,开发Asp PHP传统企业站点,一次给客户做了一个网站300块,销售提成30,我提成3块,让我愤然离职。这件事也对我的职场对销售的认识有了很大的影响。离职之后还是很顺利找到了一家政府服务的企业主要是.NET。因为之前积攒的这个技能点也不是很多,所以在去之前买了本特别厚的书叫《ASP.NET从入门到精通》。进入这家企业后,很多时候很孤单因为一个人在市区租住在一个几平米特别阴暗潮湿的小屋里,对象家里还不太清楚我是干什么的,因为在他们眼里我是一个修电视的,不好好在村里修电视没啥大本事,所以也比较排斥。技术上也是基本一个月一个项目,再到后来成为了中流砥柱开始带人,工资慢慢涨到2500块。资本家啊,精于成本计算。难道就没想到雇佣十个劳动生产率为0的人,就算雇佣车成本是10。也顶不上一个劳动生产率为1,雇佣成本为10的人,因为前面的那10的成本可是完全打了水漂啊。所以带人小白居多因为便宜,不过倒是真真实实的让我体会到deadline是啥滋味。
后来公司给我腾出了一个地方让我住在了那,这一年我的睡眠时间很少很少,基本很多时候是晚上3点睡,早晨6点多起来去楼下直接开工。项目复杂度越来越大。有一天老板说这个项目需要支持JDBC。我一下子就蒙逼了,为了应对项目我一天读完了一本书叫《21天学会JavaWeb》再到后来Windows Phone项目和Android的简单项目。
这里对我是一个非常重要的里程碑,因为我在这里懂得了很多思想。这里也希望大家高度重视,现在的前端再也不是几年前的前端,因为Node、EcmaScript6改变了这个时代。首先呢你先不要追着框架跑,比如去年Angular火的不行你就去追今年听人家说Vue你就要去追,你要知道每一种框架产生的背景,你要懂得每一种框架出现的原因。比如Knockout就有非常经典的MVVM,那啥是MVVM呢,如果你搞过Silverlight就会发现这玩意好学的很。废话少说给大家几个概念,如果还不懂那我认为是你现在的瓶颈。DI、AOP、OOP、ORM、MVC、MVP、MVVM、ORM、Comments、Threads等等。对于现在的前端,框架总会过时但是这些思想永远不会。
北京
想了很久,在12年的正月十五晚上我到了北京,也不知道哪来的那么大勇气,当时去了某公司好多笔试题,我做完满心期待交上去。对面一个胖胖矮矮黑黑的人直接把我面试题扔进垃圾桶,还留了一张用来垫满是污渍的咖啡杯,说:就你这学历还写程序??就你这野路子也来应聘??低头走在花红酒绿的街头,路过了一家烤鱼店,突然闻着好香好香(不要怪我是吃货),想想全部资产只剩下800块不到,直觉告诉我自己回家吧。不过我没有,傻逼一样的坚持靠.NET我找到了一份6500的工作。做了2个月。有一天我问技术主管一个问题我说如果一个用户发出去一个Ajax请求他现在想结束掉怎么办呢,他说你走火入魔了。也怪自己年轻,一句话我直接递上了辞呈。再去找,说到这你们也看到了其实在职场上一定要记得自己情绪控制,这里不再是我们父母给我们温馨的小窝。接下来的工作我做了一个至今为止我最满意的面试题,这个面试题是请用C#实现增删改查。好的,那首先增我挪用了SSH经典的思想用Spring.NET NHibernate,查我用MVC4并搭载Redis,改我用传统ASP.NET,删我用工厂框架封装DAAB。别人做一个小时我整整做了一个下午,面试官看了之后晚上HR给了我一份10000的Offer。
第一次去天安门,我看到了小时候只有能在课本上见到的图案。突然鼓起勇气我把简历投到了百度,第一次面试悲惨的很,面试官问JavaScript的堆栈里都存放着什么,你能用JavaScript实现栈么?Prototype是什么?我也终于清醒,我一直在盲目的自信。站在北京的天桥看车来车往,想我屌丝学历野路子学来的技术可能真的不能上高雅之堂。过了2个月,再一次接到了百度的电话说把我的简历推到了其他部门,那一夜我没敢闭眼,把网上面试题都看了遍,并且一点点的敲。第二天顺利了过了3面,晚上接到薪资确认的时候我激动的掉下了眼泪,走进了那家好香的烤鱼店。百度的2年生涯,让我彻底蜕变。在这里也非常感谢曾经的导师给我的一切帮助。也非常感谢我的领导,当年离开的时候薪水也大概快14000 了。
中间通过了很多选择,有人说百度那么好你为什么要离开呢。因为我当了爹生活的压力被迫让我重新选择。当上爹是个意外,不过孩子是我的。走的那天很多同事送了我很多印有百度Logo的小礼物,后来我送给了一些给我最好的朋友,自己也留下一些没舍得用。
选来选去,折腾来折腾去最终选择了腾讯,因为那是我的梦想。在百度最大的收获莫过于跟导师一起开发http://map.baidu.com/mobile/webapp/index/index。我们俩从首页6S最终和团队一起做到了0.8S,当然很多功劳也归功于FIS,是FIS让我意识到了前端工程化,是百度的内部工具让我体会到了啥叫前端编译。进了腾讯刚好http://map.qq.com/m/index/index架构改版,我承担起了利用Node进行主站架构的工作,很荣幸跟曾经的你们一起共事。在这期间很多小伙伴问我怎么学前端,怎么入行编程?我想既然我自己曾经的梦实现了,为什么不去为更多的梦想铺路?带着一份理念我离开了最爱的腾讯。离开的时候你们大概能猜到我的薪水了,大致在23000.
随着移动设备的越来越普及,H5的地位越来越高。同时伴随着Cordova、ReactNative的逐步发展跨端对于前端来讲非常容易,但是这里我希望大家先去玩玩Xcode至少学学Swift、搞搞Android Studio晓得发版和原生的基本玩法,语言都是想通的这话是绝对有道理的。同时在这个时代一定记住是性能为先的时代,人们开始挑剔你的应用慢挑剔你的点击状态不够自然。你一定要玩转Linux晓得啥是集群对一些概念有认知比如LVS、Stupid、Varnish、Bacula、Nagios、Keepalived。因为你的Node项目部署需要跟运维不停的聊。同时对于JavaScript与VR交互,嵌入式的开发也一定搞搞跟得上这个时代,用用Oculus WebSocket Three.js Node.js、Ruff。有人问我啥叫前端?今天我说你能看得见的都是前端决不为过!
三尺讲台
离开了这么大的平台我去了一个在线教育平台,从0搭建所有前端的体系与架构,这一年我把我曾经经验倾囊传授,我承接着每一份梦想。经过了一年的努力我的工资从30000到最后努力已经基本超过40000,生活也慢慢好转。到这我以为我的人生已经结束了,没想到一切才刚刚开始!中间教的很多学生非常有意思,他以为交了很多钱,你就是上帝,就是VIP。交了学费,直接让我推荐8K工作,我告诉他你需要学习完才可以。然后刚开始还能按部就班做作业后来就再也见不到人影,打电话也不接,联系也找不到。我真想说这样的VIP实际上是叫你VERY IMPORTANT PIG !因为不思进取白白给人家送钱。
老实说,纯碎的前端开发人员如果资质足够深,有足够影响的项目,拿到BAT等一线公司28K左右问题是不大的,但是想要超越30你有两条路,第一个你可以开发一些在国内有影响力的技术框架,多去Git贡献你的技术魅力,然后你要足够的能宣传。阿里的技术心态就是非常可取的一条路,中国人和外国人很大不同就在于外国人总想热衷于第一时间把自己的新发现公布出来以此向广大人民群众展示自己的水平。中国人往往喜欢把自己的新发现阴在心里,自己偷偷垄断享用。唯恐被第二个人知道。再或者你可以利用你的前端技术成为一些公司的初创公司中流砥柱都是可以超过40的,不过你要记得编程基本功必须完备,包括解决问题的方法、经验、跟人合作、数据结构算法架构。而且更多思想你应该有很深的认识比如设计模式的应用,ACSS、SMACSS这玩意到底有啥用。最关键的眼界足够宽核心前端技术研究足够深。当然你也可以边工作边找私活,不过一般的私活要累死人。或者录一些课放到其他平台再或者你作为技术顾问等等。不过还是要选一条正确的路,否则会直接被公司Kill。
创业
到此大家可以啪啪啪,的给我鼓掌了。以为我是所谓的人生赢家,其实我也一次次的以为人生到了自己的巅峰,没想到每一次破釜沉舟的决定都是我人生的刚开始。16年我离开了高薪的岗位,创办了一灯学堂(北京一灯教育科技有限公司)。我觉得有一个技术领域又能影响我又能改变国内传统的教育,那就是游戏化的学习。我也觉得我该去复制更多的我自己,去做高端的前端培训,去真真正正的带出一些靠谱的这个时代需要的人!所以我上路了。我的工资恢复回了800,甚至800还不到。但是我想一起跟有价值的人去面对诗和远方!
提升功力大低有两种方法,一是自己不断写代码,不断完善,不断把自己的代码写好,二是看牛人的代码。牛人的代码实在太高深了,一句看似平凡的语句,也许背后都蕴含着惊天地泣鬼神的智慧。现在你看不出什么端倪,等十年八年之后,你猛然醒悟:啊,原来大牛的代码竟是如此博大精深!最后想说游戏现在比较成熟的技术比较多,比如Cocos2d-x不过类似于碰撞检测、粒子系统、什么光照等等这些东西想玩转并完美的运营上线还是需要很雄厚基本功的,如果你愿意我随时欢迎你跟我一起改变中国的传统教育!
男人的工资,和女人的年龄差不多。没钱的时候,最忌讳别人追问自己的工资待遇。可男人的工资,又和女人的年龄不一样。女人要是年轻,别人问她年龄,她自然敢大方地回答。男人的工资呢?要是高了,还是怕别人追问。你懂得,骚年~加油吧。
我的故事讲完了,那你的呢?