How to Become a Great Front-End Engineer

来至谷歌大神的博客 只翻译大概意思,不追求细节


最近博客上有人问我,怎么样成为一个伟大的前端,有什么建议吗?

我并不认为我自己 是一个伟大的前端。事实上,在我最初从事这个行业的几年了,我感觉自己并不能够胜任我的工作,我申请这些职位因为我并不知道自己多么无知,我得到了这些职位因为面试官并没有问出正确的问题,

我最后干得非常好,并成为了一个团队里有价值的成员。当我离开去申请下一个我并没有那么符合的职位的时候,我往往担任着招聘我的继承者的重任。再回头看看我通过的那些面试,我被我当时多么缺乏那些重要的知识所震惊。我现在并不会雇佣当时的我,尽管我知道我可能会成功。

我再web端工作的时间越长,我就更加的明白区分good 和 really good并不是他们知道的那样:知识是最重要的。但是在一个变化如此之快的领域,怎么样能够获取那些(长久看来)是重要的知识,比起再任何时候你都要知道的那些,就没那么重要了。(就是说知识虽然重要,但是有些道理你是无论如何都要懂的)更重要的是,你知道如何用这些来解决每天你遇到的问题。


不要光想着怎么解决问题,找出真正发生了什么

太多的前端只是在修补,等到正确了就立马去做其他的了,我知道这些因为我一直在code review

我经常问你为什么在这里加这个,他们通常回答:移除了就没办法工作了

我知道你们需要让程序能工作,但是如果你不花点时间关心问题的根本,你往往会陷入重复的问题。

我知道研究这些问题可能会花费很多时间,但是这会在未来节约很多时间。以后就会在 guess and check 上少花时间。(简直真理!)

学习预料那些再浏览器端可能的变化

前端和后端很大的区别就是后端通常工作在可控制的环境里,而前端往往不是。你工作的平台,设备会一直在变化,你的代码需要一直优雅的工作。

我记得我以前读过的一个js 库代码,像下面(简化过):
var isIE6 = !isIE7 && !isIE8 && !isIE9;

当IE10出来之后,这个库就垮掉了。

我知道有些情况下需要使用这类代码是很有必要的,但是当在任何时候你使用这些代码的时候需要考虑到未来可能出现的bug

我知道对于我们大多数来说,我们写的代码不仅仅会只需要满足我们现在的需求。有些我8年之前写的代码还在大型的网站中运行,这很令人满意也令人恐惧。

阅读说明

浏览器永远都有bugs,但是当不同浏览器对不同的代码有不同的渲染的时候,我们往往认为好的浏览器是正确的,坏的浏览器是错误的。总有特例,我们的判断是错的,这些发现可能改变未来。

然后举了个早期flex中min-height,min-width的例子,他们初始值应该是auto 而不是0 。当时只有firefox 是正确的。

所以当两个浏览器渲染不同的时候,你应该找出根据,并确定哪一个是正确的。

那些所谓的伟大的工程师总是走在变化的前面,适应新的技术在他们成为主流之前,甚至为新的技术做出贡献。如果你阅读说明,在使用之前想象他们是怎么工作的,你会成为为技术进步做出贡献的那一部分人。


读别人的代码

你可能认为阅读别人的代码不是很有意思,但是毫无疑问这是成为优秀程序员的最好方法之一

自己解决问题是一种很好的学习方法,但是很快你就会达到瓶颈,阅读别人的代码让你思路开阔,也能很好的融入开源项目或者其他团队。

我犯了一个很大的错误就是在招聘的时候只让这些人写代码,从来没有让他们读代码,找出代码中的问题,然后解决问题。这样很不好,因为一个工程师的很多时间都花在改需求上,而不是添加新的特性。

和比你聪明的人一起工作

我认识很多前端工程师更想成为自由职业者,比起那些后端工程师,这可能是因为前端工程师更多的是自学。

自学比不上跟聪明的人一起,因为聪明的人会互相触发灵感并且review code。

我建议在职业生涯的开始要在一个有经验,聪明的团队一起工作。

如果你最终选择了自由工作,为开源社区做一些贡献,这会让你受益匪浅。


重造轮子

重复造轮子很蠢,但是会学习到很多。我不是说不使用第三方库,很多第三方库是经过时间证明的可靠完美的,但是我这里讨论的是怎么从good 到 great ,很多伟大的人都是这些库的贡献者或者维护者。

很多人都会问,我接下来该写一些什么,那么为什么不自己动手实现一些著名的js or css 库呢,这样做最棒的一部分在于,当你卡住的时候,永远有源码可以看。


写出你学到了什么

最后,你要学会记下了,你都学到了什么,最好的理由是这帮你更好的理解,如果你解释不了,可能你自己就没有那么明白。很多时候你自己并不清楚这一点直到你试图把这些记下来。

从我们经验来看,写作,演讲,demo是最好的帮你完全理解的方式。即使没有人看你写的东西,这个过程也是很值得的!!!


everybody should read this!
really help you be great!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 162,710评论 4 376
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,839评论 2 308
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 112,295评论 0 255
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,776评论 0 223
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 53,198评论 3 297
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 41,074评论 1 226
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,200评论 2 322
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,986评论 0 214
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,733评论 1 250
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,877评论 2 254
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,348评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,675评论 3 265
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,393评论 3 246
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,209评论 0 9
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,996评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,212评论 2 287
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 36,003评论 2 280

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 170,598评论 25 707
  • 理财,可能是你人生中最重要的技能,没有之一。 关于理财,我们好多人都是很早就知道却太晚才开始,以至于最后后悔当初为...
    阿超有话说阅读 776评论 1 13
  • 吃完午饭,忽然发现有个未接电话,是妈妈的,急忙拨回去,其实也没什么事,只是告诉我家里下雪了。 雪,很久没看到过...
    Socrayu阅读 276评论 0 0
  • 经历了忙碌的两周,评优课终于结束了。回想这段时间,所经历的不只是身体上的疲惫,更多的是心理的煎熬。很想把这些写下来...
    雪山背夫阅读 250评论 1 1