├── README.md └── data ├── Transcript.md ├── l3b.zip ├── l4.pptx ├── qq群和live直播间问题汇总.md ├── 前端开发工程师职业规划.pptx ├── 前端职级能力描述.xlsx ├── 嘉宾回复.md ├── 晋升评分.jpeg └── 研发汇总-晋升标准-2015.xlsx /README.md: -------------------------------------------------------------------------------- 1 | # careerLive 2 | -------------------------------------------------------------------------------- /data/Transcript.md: -------------------------------------------------------------------------------- 1 | 大家好,今天的live主题是分享一下《前端工程师职业规划》这个主题,主讲人是我,但是我还是把主演写成了芋头和jasin yip,jasin yip真名叫叶俊星,芋头是在杭州大搜车担任前端leader,架构师,叶俊星则是在美团担任资深前端开发工程师,他们两位都是知乎比较活跃的前端领域问题回答者,也有着丰富的职场经验,相信在我分享完毕后,通过我们的QA和问答,他们能给大家带来非常多的职场启发。 2 | 3 | ok,那么我就正式开始我们今天的主题,第一部分,我给大家简单说说我感性和理性上对前端工程师的职场规划的一些见解。 4 | 5 | ### 大纲: 6 | 7 | 开始之前我们回顾一下,我们这次live的一个大纲,能够帮助大家解决什么问题。 8 | 9 | #### 一共6个部分,循序渐进的把我的一些对前端职业的理解一一道来。 10 | 11 | 在第一个部分,我会讲解一下前端工程师目前的一个职业现状和前景,前端开发本来就是一个比较新的职业,他的发展非常快,而且技术更新迭代也非常快,从2010年之后才开始有的这个岗位名称,我印象里还是淘宝第一次有了这个岗位分工,在很久以前,前端岗位其实都是由后端开发和设计师一起完成的,早些时候,前端的工作也非常简单,页面交互也不复杂,web1.0的时代前端经历了几个阶段,从css1.0到2.0,从table布局到div+css,后来经过标准和浏览器的升级进化,js经历了几个utils类型的框架库的演变,从prototype,moontools,dojo,yui时代到jquery1.0,2.0时代,再到css2.0到3.0,再到javascript的es3升级es4,甚至后来的es5到es6,每一个工程师的技能树都是跟随着浏览器和标准的进化而进化,设计模式和前端模块化还有前端工程化从2012年开始步入历史舞台,requirejs,seajs等,还有grunt,gulp,到后来browserify,rollup,webpack等等,而从2013年开始兴起的mvc,mvvm,从最开始的backbone到angularjs到react,再到现在国内非常火爆的vue,前端工程师这个岗位每天,每周,每个月的技术都更新迭代的非常快。这就是目前前端开发工程师面临的一个职业窘境,包括对前端人员的全栈技术要求,用户体验,甚至审美要求都是越来越高的,前端开发行业未来的前景到底如何,在这一部分会给大家一个引导。 12 | 13 | 第二个部分,前端工程师的专业能力差距在哪,为什么我是初级前端,你就是中级前端,我是架构师,他就是资深开发,当然除了公司不同,分级不同之外,是否有统一的行业标准来规范这些专业能力层级呢?如何弥补这些差距呢?一个前端工程师到底需要掌握什么才算是合格的前端工程师?在这一个章节我会给大家带来我的一些看法。 14 | 15 | 第三个部分,从我入行以来,前端工程师的学历,专业背景都是一个迷,学校没人教,单位没人带,完全靠野生路线自由发展,我身边有设计师转的,有学法律的,有学语言的,有学医的,也有学管理的,也有计算机专业的,基本上是各种你能想到的专业都有成功转型前端开发工程师的案例,不同背景的人,应该如何入行,他们对自己每个阶段的定位又有什么差别?在这一章节会给大家带来几个我身边的案例,和我自身的一些经验。 16 | 17 | 第四个部分,前端如何少走弯路,说白了还是要有学习方法论,针对前端开发行业,什么样的方法论最适合你自己,肯定都要结合每个人不同的背景和经验,但是还是会有一些可以抽象出来通用的方法,我在这个章节会给大家分享一下我学习的方法论和经验,以及帮助大家找几个典型的例子或者我每一个阶段学习的方法论给大家举例。 18 | 19 | 第五个部分,职场晋升,我们分2个部分来说,第一部分就是那些不正规的小公司,没有职级评审,如何在这种环境下晋升自己,还有一个就是在大厂中,有标准的职级体系,给大家揭秘大厂中职级晋升的套路和标准以及方法论,还有我也有幸参与过一些公司内部的评审,也会以我个人经历来给大家分享一些经验。 20 | 21 | 第六部分,我会给大家分享一下,我是如何给自己进行职业规划的,这也是面试时很多面试官会问的问题,最后还会邀请芋头和叶俊星进行他们的职业规划分享。 22 | 23 | 最后,我还给芋头和叶俊星每个人准备了5个题目,让大神们给我们解答一些,我认为对大家帮助较大的问题,当然也包括回答大家开始前后的一些QA。 24 | 25 | ### part 01: 26 | 27 | 现在开始第一部分啦,说到职业,那么肯定是以公司为单位,公司里又以团队为单位,那么一个前端团队就是前端工程师的职场,在团队中团队的阶梯决定了你的职位高低,薪酬高低,包括专业能力的高低,负责的业务和技术的偏向,这对于做过team leader的人来说还是比较好了解的,发展瓶颈也很简单理解,当你处在一个前端团队中的时候,不同阶梯中的工程师如何跨域当前层次,就是你的发展瓶颈。 28 | 29 | #### 第二页: 30 | 31 | 从团队的角度来划分,一般的团队分为初中高,资深专家,架构师,项目负责人这几个通用的阶梯吧。 32 | 33 | 每一个阶段的开发人员,很多公司划分起来都是不一样的,有些公司硬性规定工作年限,有些公司可能放宽工作年限,更多以在公司内部的贡献来分层,俗话说的拿苦劳来堆,还有的公司比较随意,老板说你是什么就是什么,一般这是在小团队,还有一些大厂,无法人治的时候,则会使用技术委员会的方式进行职级评审,或者在面试的时候就决定了你的职级。基本工程师的分级机制的由来就是这几个手段。 34 | 35 | 所以不难看出,在技术扎实的前提下,工程师在一家公司的职级和职业发展好坏,技术能力仅仅只是系数之一,而不是100%。更多的人可能是靠运气,或者耐心,或者影响力得到的高职位,或者说,一些人更喜欢表现自己,领导更能发现自己,才得以晋升步步高升。这是职场现状,其实不仅仅在前端,任何团队,技术的非技术的,都会是这样,但是技术岗位,技术能力是准入门槛,门槛相对高而已。 36 | 37 | 而具体每个岗位的能力模型,我会在第二个部分,详细讲解,这一部分只说职业现状相关。 38 | 39 | 从阶梯角度来看,发展瓶颈我个人认为分几个维度的评判标准,前端的技术能力可能是50%,后端能力可能25%,业务综合素质能力可能又是25%。这也是为什么,有些人会很困惑,这哥们某一方面的技术深度并不如我,但是为什么他管理我,而不是我管理他,因为团队属性决定了,你要和外部团队交流,有技术,有运维,有产品,有运营,如果只是在前端某个技术领域专精,比如性能优化,比如前端模块化,比如代码抽象,设计模式,甚至说我对nodejs的每个API都非常熟悉,团队里没人比我还厉害了,我做运营活动页又快又bug少,我在team中最会和产品撕逼,再或者说我对代码重构非常了解,或者我对如何编写一个视频播放器,尤其是编解码部分的细节实现原理无人能及,再比如说我是架构组的核心人员,我专门给大家提供抽象的web组件或者插件。 40 | 41 | 每一项专精领域的能力只是你立足团队中的基石,甚至说,leader对你的预期就是这样,T字形人才的发展,都是深度和广度并重的,这也是为什么新人,专精了某些技术后,浮躁的表现之一,但是把你换一个领域,你就歇菜了,初中级别可能这样就算ok,但是中高级和资深前端,一定都是T字型的,在某一领域专精,其他领域和综合素质又非常优秀,把他扔到一个没接触过的行业中,也能快速给出解决方案的人,这些能力可以锻炼吗?肯定是可以的,比如后端能力,业务能力,通过看书自学,或者和兄弟部门进行交流甚至启一些业余项目都是可以锻炼自身能力广度的方式。 42 | 43 | 目前前端职业现状就是,精通一门的人少,精通多门的人更少,有业务能力的那就更更少了。所以这也是为啥初级前端不好找工作,中高级前端又迷茫自己无法晋升,高级前端根本招不到的一个现状。 44 | 45 | 很多公司在招聘的时候,软技能和项目经验可以快速帮你建立职场优势,比如你在linux下可以无阻碍开发,比如你之前有过相关领域项目经验,很多业务是之前上一家公司都做过的业务,上手起来领会需求非常快,一些名词不需要给你再科普。再还有就是沟通能力,无论是团队还是朋友,或者情侣,也没人愿意找一个闷葫芦一起工作。回想一下,你的领导比较信赖的下属或者重点提拔的下属,哪一个是半天打不出一个屁的主? 46 | 47 | 最后说一下前景,前景分两个吧,有些人觉得前景就是钱景,money,有些人觉得做自己喜欢的事,能够锻炼自身技能,钱不钱无所谓,我是个富二代。每个人对前景的定义都不相同。我分2个层次来理解,想获得职位,money的人,性格不保守,可以选择创业公司的一些岗位,性格保守的可以选择在大公司走正常晋升路线,技术管理都可以。而想获得改变世界能力的这部分工程师,性格保守的可以选择自己业余维护开源项目或者个人项目保持自己的成就感,激励自己前行,性格偏激点的可以找人合伙创业,技术创业等。 48 | 49 | 回到一开始说的,如何突破瓶颈决定了你能够接触和看到的前景到底是什么样,每个人阶段不一致,看事情和做决定都会千差万别。我举个实际的例子,你先画一个圆,代表你的所有能力,类似一个饼图(我可以拿纸笔画一下,反正直播),然后你想你的这个圆原来越大,那肯定要在你所有能力下,先有一个点的突破,这也就是叫 深度优先,当这个深度突破了你之前的深度时,你就会发现新的世界,那么瓶颈也就自然突破了,整体能力就会有一个对应的提升方向。 50 | 51 | 还是拿前端举例,我们对代码重构非常感兴趣,买了几本重构的书,代码大全,设计模式,函数编程,深雕细琢的系统学习之后,我突破了我之前代码组织的能力,那么我可能就像手里拿了一个锤子,看什么代码都想重构钉一下,钉完了会发现,哎,我对整个代码的流程又有了新的认识,在重构的基础上完成了几个性能上的优化,哎?好像貌似我在重构的时候还可以重构一些测试用例?代码注释,哎,代码注释是否可以拿工具生成?顺便又了解了一下jsdoc相关的内容,重构了几个同事的模块或者自己以前的模块,发现有不好的地方,又是一次学习。可能你会说,那你的意思就是去学重构呗?当然不是,我再举个例子,比如说一个前端从来没写过curd的后端接口,他可能就不太会理解,为什么要做前端静态化,因为他不知道接口背后的逻辑是要去拿缓存,缓存不命中的时候,要去读数据库,数据库nosql和关系型数据怎么选型等等一系列知识,他可能看后端,就是一个黑盒,那么肯定不理解静态化和非静态化本质的好处,减少消耗最好的办法就是什么数据都缓存起来,当数据有变化的时候通知到缓存做更新。如果理解了这些,那么前端的什么自定义事件啊,全局广播啊,不都是换汤不换药么,反之你理解了前端的通知,理解起来后端的通知,就会更好理解一些。 52 | 53 | 说了这么多还是,突破技术瓶颈,能力瓶颈的方法,就是深度优先,当深度深入到一定程度,广度自然出现在你眼前。 54 | 55 | 对前端工程师的职业现状分析和前景,以及如何突破瓶颈部分我就先说这么多。 56 | 57 | ### part 02 58 | 59 | 前端工程师的专业能力差距,其实说白了,就是专业能力模型,上面说了现状和如何突破瓶颈的问题,下面说一下具体的前端能力模型,素质模型。 60 | 61 | #### 第二页: 62 | 63 | 前端工程师的能力和素质模型我分了4个部分,其中包含了前后端的能力关键点,再一个一个说明之前,我先看一下,之前我给我自己部门的同学指定的一个分级要求:(见项目两个xlsx) 64 | 65 | 我们过完这2个对工程师的一些能力模型的标准要求后,应该就对我所说的这4个方面,前端,后端的开发能力,运维能力,协作能力,软技能,以及对行业的影响力,有一定的理解了。不同的公司和团队,能力模型要求都不一致,但是我列举的这2个例子,希望大家能够理解其中公司对人才的要求,以及大家专业能力最后产生的价值,对公司的体现,以及公司对你能力的认可,结果反馈是在什么地方,有一个初步的思路了。 66 | 67 | ### part 03: 68 | 69 | 不同背景下的前端工程师如何自我定位和成长,这是一个非常有意思的话题,我简单归类了几个角色给大家看一下: 70 | 71 | 1,非科班的初学者,或者跨行业想进入前端领域的人,没什么计算机背景,没接触过编程的人。 72 | 73 | 其实我也算是这一类人的一个典型,我大学是学艺术的,虽然专业是平面设计,也有设立网页设计这门课程,但是其实和现在定义的前端开发工程师来说,那时候学的东西简直什么都不是。 74 | 75 | 这一类的人如何给自己一个正确的定位呢?我觉得通用性的我们分析下来,如果把前端当成自己的一门吃饭手艺,那快速切入这个领域的还是css+html,我不建议上来就学javascript,后端语言这一类的东西,虽然很多人说,这样你根本找不到工作,但是我没什么太好的办法,这一类人从一开始就输在起跑线上了,无论你是去培训机构,还是自学看教程,这是必须认清的一个现实,通过学习简单的css和html,可以快速的在文本编辑器里开发出在网页里现实的各种内容,通过不同的标签和样式,实现之前从来没接触过网页制作的人看来非常有意思的效果,比如一个表单,比如图文展示,比如简单的一个静态的个人介绍,甚至个人网站。如果觉得自己对这个有兴趣,喜欢,爱好,那么下一步才是开始深入的学习,如果不感兴趣,快速止损也是不错的。 76 | 77 | 接下来就是正式入门,看了一些html和css的简单教程,搞定了开发环境,或者说装好了subline或者dreamwear这一类工具后,我建议没基础的初学者几个取巧的学习方法。 78 | 79 | 1,找带入门教程字样的视频,培训课程,书籍等,只看目录。看上7 8个之后,找到他们的并集,确认真正的入门目标。 80 | 81 | 2,去招聘网站,看用人单位的招聘需求,记住只看初级岗位,只看小公司,甚至只看二三线城市的公司(不是人人都在北上广),看一下美工,网页制作,或者前端初级程序员的招聘要求,找到他们的并集,确认真正的求职要求你掌握的技能树。 82 | 83 | 3,确定了要学习的目标和求职目标,开始把每一个不懂的名词,全部汇总起来,一个一个的通过搜索引擎,了解掌握他们的意思,也许一时半会理解不了,但是看个大概应该可以,切记,搜索的时候带上,入门,新手,深入浅出,等字样,这样搜到的内容多半你都能看懂。 84 | 85 | 4,买书,纸质的,我这里推荐一些实战型较强的书,当然,选书之前也要记得看书评,看目录,对比不同入门书籍的目录,找到并集最多的那一本,买来看。 86 | 87 | 5,通过概念和名词解释上的第一印象,结合书,教程,视频进行demo练习。 88 | 89 | 6,学习photoshop的使用方法,下载一些网页psd的素材,进行『网页制作』的练习,从静态网站开始。 90 | 91 | 7,下载主流浏览器,测试兼容性,掌握css hack的用法,看一些css布局的教程,看见一个网页就琢磨他是怎么布局的,f12打开看看实现原理。 92 | 大概经过这么一系列的练习,我相信一个非科班,初学者,哪怕不报培训班,也能够在短时间内掌握网页制作这一项技能(大概1-4周)看天分了,也许有人2星期就能达到这个程度。 93 | 94 | 然后呢,我建议有精力的同学,学习一下javascript的基本语法和jquery的用法,然后就可以去试着投简历了,我这里需要说明的是,简历投递的技巧。 95 | 96 | 如果你是应届生或者在读学生,直接去找实习就好了,我不推荐大家去bat投实习,因为既然你是一点基础都没有学习前端开发,以临时抱佛脚的方式学习,面试上bat的实习生岗位基本没戏,我当年也是,根本想都没想过能进百度,阿里。那些单位只是传说,我非常实际的给自己一个定位,找到一个工作先干着。 97 | 98 | 我觉得以我个人的经历来说,这是最优的方案了。我相信在2-3线城市,一个能够快速实现静态页面切换成html的应届生找一份实习或者兼职或者页面重构的职位是不难的。如果你还会一点js的基础外加一些jquery的用法,我相信只要姿态低,找一份糊口的工作是可行的。 99 | 100 | 以上的方法我在这里强调下,只适用于非科班,没计算机编程基础,完全跨行业转行的同学,算是一项保底的方案。 101 | 102 | 然后我们来说一下非应届的跨行业转型的一些入门方法论。 103 | 104 | 真是不凑巧,我刚毕业的时候实习确实是网页制作,切页面,但是我做了几个月就不干了,回了老家我还是做了学校教的专业,一个做印刷的小公司做传统广告美工。 105 | 106 | 所以到这里,基本上可以开始下一类人的玩法了,我当初ps玩的非常6,我相信设计师这些肯定都是基本功,网页设计和平面设计的区别其实非常简单,1是字体的使用,2是排版的方式,这些互相转换起来是非常快的。只不过可能设计师不知道,如何把ps里的图和字,线转换成代码而已。 107 | 108 | 这里不重复,重复上面的1-7步骤,他同样适合UI设计师,平面设计人员,我当时也是,在老家做了一个月的广告设计工作后,投的第一家公司是一个做企业外包站的公司,面试题目非常简单,给了我一个需求,1小时做一个详情页,拿ps画,然后再1小时制作成静态网页。 109 | 110 | 我相信如果是做设计的,第一步非常简单可以做到,第二部的话,通过之前说的明确目标练习,也是非常容易达到的。 111 | 112 | 所以说,在某些公司,页面设计和静态页面开发还是会集合在一个工种上的,当然我说的这是一些小城市,小作坊公司。 113 | 114 | 如果是正规点的公司的话,只需要掌握常见的一些效果插件用法和css布局技巧,切图技巧,找个待遇低,没什么发展前景的工作还是可以的。 115 | 116 | #### ok,后端开发和科班计算机的同学再往后放一放,他们的定位和成长路线和上面说的野路子完全不一样。 117 | 118 | 当你找到了一份真正的实际的前端工作时,无论是美工也好,页面开发也好,还是初级前端开发工作也好,这是你其实才是你职业生涯的第一站。 119 | 120 | 后续的你会非常的痛苦,这个阵痛过程可能持续1-6个月不等,到什么时候结束呢,说白了,当你觉得你制作页面的时候基本不用过脑子,现成的网上常见效果都能找到js插件实现,浏览器兼容经过正式线上产品检测,移动端和pc端都有过开发经验后,感觉自己需要开始javascript的学习时,基本你就从一个美工入门到目前大家嘴里说的,入门级前端开发工程师了,或者说初级前端开发工程师。 121 | 122 | 熬到这一阶段的人,一般是2级分化的,我见过切页面切上5 6年的,我也见过js一学就学好几年,也入不了门的人,我相信大家身边也有这样的人,而且其实不在少数,我怎么评价他们呢,其实也不能怪他们,毕竟不是每个人都适合这个行业,他们被淘汰只是时间问题,可能5年,可能10年,网页制作,我认为,迟早会成为一门像excel或者ppt制作一样的技能。 123 | 124 | 好了,不说这么悲伤的话题了,当你度过了学习javascript的初级阶段时,我觉得这时候,这个定位的人,他既有实际的工作经验(切页面经验),职场沟通技巧(团队配合),常见的代码管理工具和一些css压缩性能优化的常识,一些基础的javascript知识,会使用jquery或者vue开发简单的业务模块,对浏览器一些新特性,移动端新特性有所了解。 125 | 126 | 好了,这时候基本就是一个准标准职场初级前端开发工程师了,这时候可能需要1年或者一半年的时间,但是蜕变一定是非常明显的。 127 | 128 | 师父领进门,修行在个人,从初级到中级到高级,这些等我说完后端入门前端的一些套路之后,我统一一起讲解。 129 | 130 | #### ok,我们回到起点,你现在是一个有过4年科班经验的计算机专业的学生,或者有过1-2年后端开发经验的后端语言程序员。 131 | 132 | 我们分析,你拥有的优势是什么,相比较小白来说,你可以直接跳过HTML和CSS的入门学习部分。可以直接跳过javascript的基本使用方法上,只需要关注语法糖部分和浏览器API上,而且你的学习能力应该是非科班的至少3-4倍以上。 133 | 134 | 相比较UI设计师来说,你的ps功底,或者说艺术细菌可能低到令人发指,当然也有艺术细胞好的计算机系同学,掌握ps这个软件我觉得肯定是分分钟的事,找几篇教程,下载一些psd模板,对着书苦练几天,我觉得也不是一个非常难的事情。 135 | 136 | 在校学生应该大概在个把星期的时间就可以彻底掌握上面我说的非科班学生可能需要半个学期掌握的东西,然后你还会占据数据结构,算法,计算机原理,高等数学的专业优势。 137 | 138 | 所以和非科班同学来相比,科班同学只要大学不天天王者荣耀,真的是太幸福了,毕业可以直接碾压很多非科班同学,如果你身边有很多非科班的前端工程师,一定替我抱抱他们。。哈哈。 139 | 140 | 所以总结一句话,科班生找it行业工作,优势很大,是必须直面的一件实事。如果你够努力,够有兴趣,大三,或者大二的你,可以尝试去冲刺bat或者一二线互联网公司的校招岗位,面过了是好事,面不过也可以轻松进入一些较正规的企业,缩短在那些不专业的公司和团队浪费的时间。 141 | 142 | 后端工程师就更吃香呢,因为相比较学生来说,项目经验和实战经验你最大的优势,你需要的只是在公司内部,协调和一个前端开发工程师,进行工作内容的稍许交换即可。经过几次实战的洗礼,完全可以快速在公司内部转岗或者去面试新的岗位。 143 | 144 | 但是还是会有许多的坑,比如对photoshop的练习需要下一些功夫,对javascript的原型理解需要下一些特殊的功夫,对于第一语言不是js的同学来说,其他语言的直观面向对象的写法,到了js会比较绕,需要多跟专业前端交流和code review。最后就是对细节的把控能力,我不是脸谱化各位,只是我见过很多理科生,后端工程师对前端交互的细节,兼容性,一像素的执着,等这些点不够有把控能力,或者不care,导致去做了后端开发。 145 | 146 | 好,现在不同背景的同学,我们现在都站到了同一起跑线了,我们都是初级前端开发工程师。 147 | 148 | 我们如何从初级晋级到中级?从中级晋级到高级,甚至资深呢? 149 | 150 | 下面我们可以开始我们下一个章节了,找到最适合自己的技术学习路径。 151 | 152 | ### part 04: 153 | 154 | 找到适合自己的学习路径,明确路径方向,什么是明确路径方向呢? 155 | 156 | 我也准备一些方法论教给大家,主要是4个明确,我逐一讲解。 157 | 158 | #### 明确领域: 159 | 160 | 根据自身所在的领域或者自己感兴趣的行业领域,进行技能和成长的抽象提炼。 161 | 162 | 我举例子,电商行业,可能需要你掌握支付相关的前端流程实现,购物车,购物详情页(评论组件,商家端的富文本编辑器,sku面板,放大镜,web版IM),商品多级关联搜索,搜索提示,商品订单正反向流程。 163 | 164 | 除了这些可能你还需要知道,大量的促销活动,前端如何支持那么多的活动页面,一些促销或者活动的cms相关的开发,甚至(cms本身的开发),或者静态活动页面的通用组件管理方式。 165 | 166 | 广告相关的前端技术,埋点收集统计相关的前端技术等等和电商相关的一些必备的属于电商行业比较独有的一些技术解决方案,尤其是前端的。 167 | 168 | 再举例子,社交相关的,对图片,图床相关的功能开发,比如瀑布流的实现,比如图片查看器的实现,比如长文微博的实现,当然也包括富文本编辑器的实现,各种评论组件加feed流的实现,同样通用的,广告投放,数据收集,用户识别追踪,多图上传的实现,sso的实现等。 169 | 170 | 当然有些技术点,并不是某个行业领域中特有的,但是我举例来说,就是在你所在的公司的行业领域中,和你部门的业务里,自己学会抽象技术点,把这些功能和技术实现总结抽象出来一套方案,当然很多已经是业界统一的标准了,这样自己短期近期的学习路径就一目了然了。 171 | 172 | #### 明确技能: 173 | 174 | 这个从2个方面来说,一个端来说,有些公司前端可能是做壳内的工作,比如electron,比如webview内的开发,比如c++做端上的开发,那么可能你需要就掌握除了前端开发之外一些端上的语言和开发学习了,比如学习c++,学习ios开发和android开发,或者nodejs开发,选对自己工作帮助最大的去学。 175 | 176 | 除了端相关的还有就是目前团队的技术栈,如果你不熟悉一定要在尽快短的时间内熟悉团队所用的技术栈,我这里不是说会开发,而是说,如果新开一个项目让你负责,你能否快速把团队现在的技术栈进行优化,复用,甚至升级的能力。如何快速在团队中脱颖而出的一个办法就是快速找到目前系统的缺陷,并快速帮助修复。这也是提升前端架构和工程化能力的一个阶段。 177 | 178 | 深度学习指的是什么?其实就是对目前已有的工作技能进行深入加强的一个过程,比如我们的架构目前是由许多第三方开源库进行拼凑组装的,阅读他们的源码,进行bug fix或者升级,制造一些轮子进行局部替换,开发新项目的时候,改变之前的一些架构。这些都算是深度学习,对已有框架做升级我觉得是最有意思的一件事,如果一旦做成,是非常对个人技能点出彩的一笔。 179 | 180 | 参见面试经典题目:你对团队最大的贡献or简述一个你觉得最自豪的技术成功或者技术实现。 181 | 182 | #### 明确目标: 183 | 184 | 长期目标和短期目标,其实结合上面的领域和技能2个方面来说,已经足够一些初中高级别的程序员自我进行总结归纳的了。我在这里特别说一下长期目标的指定吧,我拿我个举例子,我2013-14年的目标是成为一个业务线的前端负责人,或者技术负责人。2014-16年的目标是在前端领域做出一定的个人知名度。当然,指定完计划肯定是需要分解目标,把大目标拆分成小目标一步一步迭代的。比如成为前端负责人,首先你得技术能服众,二来,公司有新业务一定要第一时间去响应和支持,因为只有有了新业务才会有新负责人。。哈哈。比如在公司内部产生影响力,这个套用我大学的做法,就是不断的加强外接对你的标签化,大学时候大家对我的标签就是做私活,做网站找小爝,工作后我的标签就是,有搞不定的找我,我一直是致力于做一个问题终结者,这在我知乎回答的问题上也可以看出来。比如说要在前端领域做个人知名度,回答问题,写专栏,加技术群做管理,做live,做外部分享等等,其实都是短期目标,这些短期目标组合到一起长久积累就能帮你实现长期目标了。 185 | 186 | 我也建议大家前端开发工程师都给自己订一些1-2年的长期目标,比如学习全栈,自己做出一个独立web站点,比如学习app开发,自己在一年时间内做一款独立app,比如说做专业的前端技术博客,公号等等可能对于目前阶段来说非常难做到的一个目标制定。 187 | 188 | 不好意思的说,很长一段时间我的目标都是,今年月薪要超过XXX,明年月薪要超过XXX。如果达不到,我就会选择决策和指定计划来达到,总之目标感非常重要,除了公司的,一定要自己明确的长短期目标激励。 189 | 190 | #### 明确定位: 191 | 192 | 一个前端工程师在自己团队的定位,其实之前我们过的职级和能力模型已经说明了常见的一些阶梯职责,这里有一个小技巧,我相信很多leader,都是希望自己的team的人能够自主进步的,所以首先要先跟自己的leader明确自己在团队里的定位,职责,分工。 193 | 194 | 在团队对你的预期上,做到超出预期,可能很多人说,怎么超出预期啊,这个很难做啊。其实简单也困难,超出预期确实非常难,但是也不是没有办法。首先,我们先定义什么是超出预期,超出预期就是你的工作结果和表现超出了你目前团队对你的定位。 195 | 196 | 很好,如果是一个业务性团队,承接更多的业务和项目管理,时间管理工作,是不是就超出了leader对一个普通开发的预期? 197 | 198 | 如果是一个技术型团队,打造团队品牌,提升团队技术氛围,主动进行创新和已有项目优化,算不算超出预期? 199 | 200 | 如果这些都有人在负责了,那很好,你有了目标和榜样,跟他们交流,参与进去是否也算超出预期? 201 | 202 | 初级工程师的职责是完成业务模块的简单开发,那么独立负责一个模块开发算不算超出预期?帮助中高级工程师带其他初级工程师进行开发和技术攻关也算是超出预期。 203 | 204 | 其实超出预期很简单,就是多做,少推诿,手里,眼里有活而已,相信我,我这么多年工作的经验和秘诀其实也就是这个。 205 | 206 | 搞定自己的定位,明确下一个定位的要求,不断的超出预期,即可。 207 | 208 | 209 | ok,说完了这4个明确的具体方法论,我相信,初中高级的工程师都能找到适合自己的成长学习路径了。我不怀疑每一个工程师的自学能力,如果自学能力不合格,是不可能走到这一步的,但是如何突破自我,确实是真的需要人来点破和指导的。 210 | 211 | ### part 05: 212 | 213 | 有点啰嗦了,下边我们进入前端职场晋升环节,这个我其实也比较有发言权,我面试的单位大大小小也有10几家了,在公司参与晋升也有3,4次,帮助团队程序员晋升培训和ppt review也有好几年了,最近也进场参加公司内部的职级评审工作,当然现在评审的不仅仅包括前端,也开始包括后端开发,数据推荐搜索等其他技术岗位了。 214 | 215 | 我相信在这一章里,能够帮助大家看透,看明白到底什么是职级晋升,晋升的策略以及原则,还有如何增加通过率的方法。 216 | 217 | 我总结了个5个点来进行说明,述职技巧,述职材料的通用组织结构,答疑技巧,评审标准以及评委视角,当然这都是我的一些个人经验哈,大家选择性参考。 218 | 219 | 首先说一下述职的技巧部分: 220 | 221 | 首先述职的时间,有些高级岗位是在30-40分钟,有些初中级岗位可能是在10-15分钟,这个不同规定不一样,但是大体上的原则都是越重要的岗位给你的述职时间就越多。 222 | 223 | 然后是演讲技巧,对于演讲者来说,首先最重要的是你的气场,尤其是技术岗位的述职者,一定要非常有自信的展示自己的材料和工作成果,如果自己都磕磕巴巴,说不明白自己要说的,这个是最要命的,我遇到不止一个工程师,明明是高级水平,就因为最笨,导致评不上。非常吃亏。 224 | 225 | 这里提几个建议,如果你是teamleader,一定要定期锻炼大家在公开场合说话的机会,组内的分享和沟通,项目协调等安排每一个开发都参与进来,轮流有机会尝试,在众人面前说话的胆量,甚至包括在陌生人面前说话的胆量。 226 | 227 | 不是危言耸听,很多程序员这一关的能力差到令人发指。。 228 | 229 | 还有就是演讲前,一定要做逐字稿,非常重要的述职,需要自己提前一到两周做试演练,找组内,组外的人来进行预演评审,自己在家对着镜子练。我就遇到过不负责的teamleader,在开始评审2天告诉大家要准备ppt进行述职,大家只有周末准备的时间,周一来了,练也没练就去评,能评过就见鬼了。适当的包装和演讲练习非常非常重要。非常重要。 230 | 231 | 选题方面,也有技巧,选择的项目一定要是能够代表你技术实力的项目,如果当前公司的项目不够高大上,说自己业余的开源项目也不是不可以,甚至说上一家公司的项目也是可以的。 232 | 233 | 准备的时候,一定要对项目的技术难点,攻关难点,行业标准,你选择这个方案的理由,竞标过程,一一说明,通过流程图或者脑图来进行讲解,做到技术人员和非技术人员都能通俗易懂又觉得技术深度够。(评委可能跨专业,甚至是测试,甚至是hr)。 234 | 235 | 选题一定要说自己的见解,而不是罗列开源组件,或者直接上code review,虽然有时候偶尔的code review有加分作用,但是千万不要通篇的code review,听起来评委非常累,还浪费自己的宝贵时间。 236 | 237 | 然后我说一下一般的通用述职组织结构和格式: 238 | 239 | 1,述职人的部门和要晋升或者评选的职级。 240 | 2,个人介绍,包括职业履历,技术能力的概括,业界内外的影响力,甚至一些出彩项目的罗列,总之就像面试一样的介绍自己,拿最出彩的说,不要谦虚,不要说什么我是新入职的,我是什么职场新人,我工作时间不久,什么掌握的不是特别熟练,要不别说,要说就说自己的过人之处,切记切记。 241 | 3,主要项目介绍。 242 | 243 | 一般是2-3个人项目的介绍,每个项目应该包含简单的项目背景,技术栈,团队组成,是否跨部门,项目相关的数据,你在项目的角色,你的作用,突出你自己,然后开始进行你自己所负责部分的技术讲解。 244 | 245 | 一般讲解都是需要配图辅助的,uml或者脑图或者流程图最佳,如果是说架构,就把架构抽象出来画清楚每一部分的关系,如果是说代码,一定要把类的生命周期,初始化过程,核心方法,调用以及API等关键特性点用图的方式展示出来。如果说组件或者自动化工程化,性能优化的,一定要把数据,结果,前后方案对比,优缺点分析明白,而且一定要有竞品分析。 246 | 247 | 最后总结和QA,不要说什么展望未来一类的废话,直接抓重点,我除了以上的项目,个人的能力之外,我还有其他什么软素质,比如跨部门协作,比如参加过什么技术攻关,创新大赛,内外部技术交流分享,得过什么公司的奖,拿过什么个人奖金,团队奖金,或者专利等,总之总结部分是让你说自己的其他除了项目外的能展示你软实力和素质的环节,而不是说什么未来规划和甚至个人缺点什么的。不加分只能扣分。 248 | 249 | #### 再然后说一下答疑技巧: 250 | 251 | 为什么我们要提前写逐字稿呢,因为有时候评委可能会打断你,质疑你,甚至问你部分项目的数据或者一些技术概念问题,为什么这么选型问题不那样选型等各种问题。 252 | 253 | 所以写逐字稿的作用就是避免在被别人打断的时候,自己的思路被打断,虽然有ppt,但是有时候ppt写的不一定多,主要是以自己说配合图来讲解,所以如果有了逐字稿,在多次练习后基本是可以做到不短片,不漏核心内容的。 254 | 255 | 再一个是在回答问题的时候,如果明确的技术点,你非常确信,评委和你争论时,注意措辞和技巧,适当给评委台阶,前提是你能把这个技术原理解释的非常非常深入和细节,如果你不确信或者说不明白时,可以选择虚心反问或者认怂然后台下交流的方式来避免尴尬,前提是也要答出自己的一定思路,然后再补充上一个想交流的态度。这样好处是一来,确实答不对,但是你答出了自己的思路,而来让评委之后也不要瞎问你他自己不会的问题,因为有的评委可能自己也不知道瞎问你的,那么下次他再问你的时候就会掂量一下自己到底会不会了,当然这个方法慎用…… 256 | 257 | 如果你的答辩非常有理有据,逻辑清楚,讲解的难点让人明白又觉得有技术难度,一般评委则会转为问你一些非技术问题,比如你带几个人,管理能力如何?跨部门协作或者说你的项目数据,性能指标方面的,所以这些我认为可以当做备选(除了数据部分)其他部分不写到ppt里,评委问了,你就直接补上,评委不问,在最后的总结部分,自己说出来。 258 | 259 | 这里我也给大家分享一下,我15年,应该是2年前在新浪职级晋升的ppt吧,给大家一些启发。 260 | 261 | (过一遍我之前的html的ppt)当时是在新浪评l3-b和l4-a的2份ppt。 262 | 263 | #### 然后我说一下评审标准: 264 |  265 | 仔细分析下,其实一个公司对一个人才的评审机制还是不单纯只在技术层面的,你的贡献,你的技术深度广度,架构组织以及额外贡献,说白了就是超出预期的部分,都在评审标准之内。 266 | 267 | 知道一些评审的标准之后,再对应准备资料可能会更有一些优势,评审不是小事,有些公司一年一次机会还不是每个人都能轮上,基本属于上学时候答辩的重要程度了。 268 | 269 | 说完一般的评审标准,最后说一下评委的视角,通过几次参加公司内部评审,学习了和看到了一些提问技巧: 270 | 271 | 1,关注你个人在技术中的重要性。 272 | 2,关注你个人在业界的影响力,突出成就。 273 | 3,数据,指标,前端的话可能不像后端,那么性能方面的指标比如首屏,白屏时间,cdn的使用峰值,平均访问速度,bug率,数等都可以,团队人数,模块数,类数,方法数等。 274 | 4,是否有架构选型能力,说白了就是对比框架和创造框架的能力。 275 | 5,技术价值,为公司节约了什么,生成率还是开发效率还是带宽,还是服务器。 276 | 6,沟通还有组织带人的能力。 277 | 7,某一项领域的深入度。 278 | 279 | ok,就职级评审的话题其实非常多,这里点到为止,后边看是否可以让芋头和叶俊星进行补充和分享吧。 280 | 281 | ### part 06: 282 | 283 | 我个人的职业规划。 284 | 285 | 这块就当我个人的一个总结吧,毕竟每个人的职业规划都不一样,我把我的规划制定方法论分享给大家。 286 | 287 | 首先通过刚才我说的一堆,其实不难看出,职业规划都是从小到大一步一步根据目标完成的,说到我未来的规划肯定要先讲一下我的现状,我个人的从业经历来说,最开始就是个普通的小前端,从小公司到大公司,是一个我毕业时的长期规划,大概用了1年左右时间,当时的准备主要是了解大公司的用人机制,技术栈,以及思考问题的方式,看技术问题的角度,这个我一直非常受用。 288 | 289 | 从小公司到大公司,规划也很简单,从初级晋升到中高级,从中高级晋升到资深。这个历程,也是大家一般前端工程师的做法。但是很多人会有个误区,初级,中级,高级,不是一家公司定义的,而是相对你自己来定义的,行业来定义的,比如如果我在一个小公司,我可能是这个公司的前端专家,去了bat,我可能就是个资深工程师。所以眼光一定要放大到整个行业。所以晋升这件事,并不只是在公司内部的晋升,跳槽,换工作也是一种晋升,换部门也是,换行业也是。 290 | 291 | 所以也验证了之前我说的,晋升等同于一次技术面试。 292 | 293 | 到目前我这个阶段,我也说不好自己到底是什么级别的前端,可能在某些大佬面前是一个小学生,所以一定要学会,找到行业内的技术标杆目标,和自己不断做对比,这也是做技术规划的一个我的根本原则。 294 | 295 | 到目前为止,我还是比较偏向技术的,但是这1年来我个人更倾向于技术管理,主要原因还是公司需求决定,还有个人的规划导致。 296 | 297 | 我在上一家找工作的时候,就面临了,技术管理还是技术专家的这个抉择,我后来选择了技术管理,其实并不是说专家路线不好,不适合技术人员,而是我个人在那个时间段,需要一个管理的机会来尝试锻炼自己到底适合不适合,如果不尝试,说白了,管理和沟通能力也是人素质的一部分,我想突破一下,突破后,视野会更开阔,突破不了,也不会后悔。 298 | 299 | 实战证明,我还是比较能够做技术管理的,当然这些不是我自己说了算的,公司和企业对你的认可才是最重要的,所以既然现在我的状态就是一个偏向技术管理的程序员。 300 | 301 | 那么我下一步的职业规划呢?其实也比较清晰,人生就像下棋一样,如果你明确了最终的目标,那么下几步就很容易去规划。我会在管理,或者技术管理的领域找到合适的标杆,这里就不黑别人了,然后尝试去做,成功了就更进一步,不成功自己和自己对比,也算是没有白忙活。 302 | 303 | 说白了,我的职业规划,就是不同的时间段,找到自己所在领域的标杆,如果实在突破不了,就换一个领域,深度挖掘一下,总有一条职场的路是适合各位的。 304 | 305 | ok,我的职业规划原则就是这样。 306 | 307 | ### part 07: 308 | 309 | QA环节,我们下面开始进行视频连线两位大佬。开始之前先说一下安排。 310 | 311 | 首先是芋头,然后是叶俊星,不过我们三个都是同时在线。 312 | 313 | 然后,芋头先分享他的个人职业规划,然后叶俊星再分享他的。 314 | 315 | 之后我准备了几个通用问题问两位大咖: 316 | 317 | 1,芋头: 318 | 319 | 1,是什么原因促使你进入前端开发行业 320 | 2,前端开发领域那些职业路径未来会更受重视 321 | 3,行业经验能否为求职加分 322 | 4,如何给自己的团队成员进行职业规划计划 323 | 324 | 2,叶俊星: 325 | 326 | 1,刚毕业的或者初级前端如何能够进入美团这样的大厂 327 | 2,前端开发哪些技能偏向未来会更有潜力 328 | 3,如果下次换工作会选择什么样的行业? 329 | 4,还记得第一次公开技术分享的内容吗?简单聊聊 330 | 331 | 最后是我们一起回答一下聊天室里大家的QA。 332 | -------------------------------------------------------------------------------- /data/l3b.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaojue/careerLive/1aef918b9d1d455cbfaf16688dfb751f53a02b19/data/l3b.zip -------------------------------------------------------------------------------- /data/l4.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaojue/careerLive/1aef918b9d1d455cbfaf16688dfb751f53a02b19/data/l4.pptx -------------------------------------------------------------------------------- /data/qq群和live直播间问题汇总.md: -------------------------------------------------------------------------------- 1 | ## QQ群: 2 | 3 | ##### 方块er: 小爝老师您好,我是软件工程专业的大三学生,自学前端一个多月,这次私信是有问题想问小爝老师。 4 | ### 方块er:实习城市选择哪里好? 5 | 我个人的经历给你参考,主要是自学1个多月的话,能找到比较好的实习单位本身就比较难,不清楚你是在哪个城市读的大学,我个人还是建议如果学校里有来招实习的科技公司可以通过学校介绍的方式来进入单位实习,我当年就是,还有一个办法就是在学校附近,和所在的当地城市找一份实习工作比较靠谱。不建议来北上广,一个是技术水平和经验可能不满足大城市公司要求,还有一个就是生活成本的问题也要考虑进去。在大学城市实习,至少吃住学校大三还是可以解决的。 6 | 7 | ### 方块er:以找工作为目标的话,应该要以什么为学习核心? 8 | 我的live中有提到,找工作为目标其实一直是我开始学习的一个方法,所以你只需要关注你要投递的那些公司的招聘要求即可,比如熟悉常用的js框架,熟悉页面构建和常见布局方式,浏览器兼容性,找到这些实习工作或者初级岗位的要求和工作职责的交集部分就可以了,然后逐个锻炼。 9 | 10 | ### 方块er:以去大公司为目标的话,应该以什么为核心? 11 | 其实去大公司也好,去小公司也好,我如果说能力达到了,就自然能进入了,可能很多人觉得特别虚伪,不过现实就是这样,一个是你的基础知识扎实,一个是你的工程经验丰富,这两样都缺一不可,尤其是一些非名校非计算机专业的同学,基础知识目前除了css,js,html,我觉得也应该包含nodejs或者php至少一门后端语言的curd开发,还有就是一定要有实习经历,或者半年到一年的项目经验,熟悉公司内开发流程和常见的工作用软件和环境,比如协同开发的方式,代码管理的使用,简单的linux操作,还有一些网络,优化的常见知识,能理解需求,与测试产品进行过交流。 12 | 13 | 所以如果一开始起步就不好,建议在小一些的公司好好培养和锻炼这方面的能力,做好总结和阶段性目标,再去面试大公司就很简单了。(毕竟大公司太多辣) 14 | 15 | ### 方块er:实习过程中,应该特别注重什么能力的培养? 16 | 工程能力和总结能力,比如一个项目可能做得很烂,但是结束后要有意识的总结,归纳遇到问题,还有就是学习一些师兄或者前辈们的从0到1的能力,其实也就是说一个项目从无到有,到底是如何实现的,你自己做有没有思路,这也是能独当一面的主要能力。 17 | 18 | ### 方块er:小爝老师,在找寻实习公司的时候,有没有什么特别需要注意的地方?应该从哪些方面去判断是否该去某个公司呢? 19 | 一个是团队氛围,一个就是薪资待遇,团队氛围不是说必须要有大牛,而是说这个团队是否为一个真正的技术团队,所谓的技术团队就是leader是否是真的前端leader,如果是后端带的前端团队我不建议去,还有就是团队是否有对成员的培养意识,比如code review或者项目总结,分享。如果都有,那氛围就很不错。还有就是薪资,很多人觉得不看中薪资,在你能拿到的offer里,选一个高一点的总是好的,因为钱这东西才是最能认可你能力的唯一说明,工资都给不到,还谈什么认可。当然刚毕业,肯定是优先团队选择,次之是待遇。 20 | 21 | ### uhey:爝神老师,请问工作3年的非科班前端想要备战BAT面试应如何着手准备工作?目前处于中级前端。 22 | 工作三年,单纯说工作年限的话已经符合去面试BAT的能力了,其实很多人1-2年就可以去了。准备面试的话,看你个人的情况,如果是一个中级开发或者资深开发的岗位,需要准备的点确实比较多,不同公司的面试风格也不一样,我说说我个人的经验,有些部门可能偏向基础,笔试题目肯定是都要做了,一般就是HTML,CSS,JS三个部门,有些公司会先来几道逻辑或者算法题,所以备战的全面一些,可以在面试前几周,集中看下不同公司的面经,补基础的话,建议看看《javascript权威指南》,css方面建议多看看兼容性方面的经典bug,和一些新出的属性,掌握下概念,还有bfc这些其实每天都用,但是说起来比较高大上的概念,重绘重排的机制。然后html多看看语义化相关的,和一些比较生僻的meta。最后就是算法和逻辑方面,主要是了解下算法复杂度的概念,临时抱佛脚的话就多看看递归和一些常见的排序题目,查找题目,还有不常用的一些数据结构的书,建议买几本js方面算法和数据结构的材料看看,最后就是把之前三年总结归纳出来的项目经验,技术难点,方案,好好自己熟悉下,这是2面一般会问的。最后就是DOM的API,建议原生的过一次,因为笔试的时候如果写不出来就尴尬了,动画,正则也得临时临时温习下。基本准备到这个层面,我觉得就够了,其他就是看你的临场发挥,表达沟通能力了,有时候也会看运气,所以多面几家总会有收获。 23 | 24 | 25 | ### 吕思远:最近老师们都在看什么书 26 | 别人看什么书我不清楚,我看的书分几类,一类是大学的计算机教材,我买了一套全的,正在复习,补补基础。一类就是算法和数据结构的书了,更多的是在补算法的经验这一块,毕竟经典算法的变种太多,只有多刷题才可以。所以可以理解成,我主要在刷基础题。这也是我非科班出身一直的痛,我倒不是说我要把这些补到多强,而是说至少我不能一点不了解,更多的优势可能高级前端都是在于项目经验和解决问题的能力。现在有时间就做做题,也挺好的,要不脑子会越来越渣。 27 | 28 | ### 吕思远:最近老师们研究什么问题 29 | 我最近一直在想着出一本介绍前端开发环境和工程化的书,所以研究的更多也是这些,预计花上半年时间写一本入门级教材,其他时间可能我有精力,会花时间在后端和客户端的学习上,前端方面我觉得我的瓶颈也差不多就这样了,和我live里说的一样,遇到瓶颈的时候,我会想办法去一个新的领域拔高下自己,好突破也方便扩展视野反哺前端的一些技术概念。 30 | 31 | ### 吕思远:最近老师们了解什么知识点 32 | 我可能最近更关注的是如何能写一些真正有用的程序出来,而不是去学习什么技术,因为我知道自己有能力在短时间突击入门任何语言,所以更多的是想一些好玩的东西,然后去做。还有就是会看一些项目管理的书籍和文章。 33 | 34 | ### JOJO:爝老师您好,我是计算机科学与技术专业的一名大二学生(下半年大三),刚开始自学前端不到一个月。因为明年暑假想去鹅厂实习,打算参加明年春季对实习生的招聘,所以想在暑假和大三上学期好好学习下前端方面的知识,但没有什么具体方向。想请问一下一家大公司对于实习生有哪些要求呢?如果想要通过校招成为一名正式员工又需要具备什么样的知识能力呢? 35 | 首先,你是想去鹅厂学习,还没拿到门票,那么其实你的竞争压力还是挺大的,互联网公司招人虽然说看能力,但是我建议参考你看我这个回答,来准备你的校招时候的考试。https://www.zhihu.com/question/20966351 虽然有些老的回答了,但是基础那部分一定要打好,其次是前端能力,当然有精力做一些业余小项目肯定会加分。 36 | 然后我们假设你进入了鹅厂,实习如何转正,这其实是一个非常看脸的问题,因为我就遇到过鹅厂在北京招到的实习生在入职的时候就明确告知你,无法转正,因为没有hc,除非有正式员工离职才可以,所以一旦进入鹅厂,更多的是去学习大公司的流程和规范,还有代码项目的组织,多参加公司活动和分享技术交流,主要是学习,然后一边工作一边恶补不会的知识(相信我,你实习的时候肯定会有很多不会的知识点),等你毕业要正式工作的时候,哪怕自己部门没名额转正,其他部门或者你的主管也应该会帮你推荐工作的,不要想着如何留下的方法,而是去想明白如何在这几个月里快速的让自己拥有正式员工的能力,那么,去哪个厂子都不怕了。 37 | 38 | ### 孙大炮:去广深投岗前端值得吗?石家庄普本大二非科班,如何选择城市 39 | 我也是石家庄毕业的,我还不如你,我不是本科哈,我当时的选择跟你说一下,你看看靠谱不靠谱。我毕业的时候是在北国那边实习,做设计师,后来去了一家网络公司做石家庄的一个门户网站,在那边主要负责页面构建和简单的js特效编写,我记得是08年的时候实习。后来我也知道自己特别菜,也没想过去大城市,再后来我回了老家,去了一家还是做企业站和门户网站的小公司,慢慢发现在公司没什么好学的了,就天天在技术论坛回答问题或者学习,认识了很多在北上广深的前端,他们也都是小公司,但是我发现我的技术比他们还好,然后我就来了北京找了第一份工作,而且我一天面试了3家,都发了offer。所以如果跨城市选工作,哪个城市不重要,重要的是你要提前了解你去了到底能不能找到工作,我是一个非常喜欢稳的人,所以我做的决策都是经过很久的酝酿,然后一次性抓住机会,当然每个人都不一样。跨城市找工作很辛苦,人生地不熟的,建议先试试投投看,如果面试邀约较少,石家庄也有不少公司,先骑驴找马做着,也可以学习。当然我也见过直接毕业就一个人跑到北京找工作的,但是大部分的结果都是租了一个月的房子最后没找到合适的,又回老家了。现实就这么残酷。 40 | 41 | ###卜喜友:怎么看待北京前端崩盘。 42 | 崩盘的主要是初中级岗位,高级岗位还好,而如何脱离初中级岗位,这个培训班也教不了你,所以竞争力肯定还是有的。想一想你平时看了就头大的知识点,什么时候他们被你攻下了,你就稳了。初学者和初中级前端共勉吧。 43 | 44 | ## LIVE: 45 | 46 | ### 小柚子:一直定位自己是前端工程师,但现在技术知识这么多(再看ES6),是否需要一个专门的方向或者说定位呢?这次的Live希望能帮助到刚入前端两年的我。 47 | 确实需要定位,但是我也是建议大家选之前需要慎重考虑自己的兴趣爱好,比如物联网智能硬件,比如视频,比如社交,比如电商,比如企业级应用开发,不同的领域因为业务的区别,需要的技术和积累都不一样,选一个有发展的前景肯定对自己来说是有很大的优势的,比如之前几年前端疯了一样去学H5开发,去学Hybrid开发,就是因为大家看到了移动互联网的发展趋势,当年我也是其中一份子。所以在掌握当前工作所需技能之后,业余时间去学习一些喜欢领域的知识或者做一些技术积累,比如组件库,比如一些简单的第三方包,都是可以给自己下一次切换领域增加砝码的。 48 | 49 | ### ziwei:前端新人,非专业出身,应该先追求广度,再求精,比如工作够用了,就先去学习HTTP,数据库,PHP,在深入前端技术。如何更快达到进入大厂的标准。 50 | 我的建议和你正好相反,应该是先追求精度,当精度深耕不下去的时候,再追求广度,然后在广度里选一个再精深学习,为什么呢,因为只有精深学习才能锻炼一个人的思维,学习能力,方法归纳总结,这些和什么技能无关,和思维有关,当这些思维和学习方法养成后,再去培养广度,你会事半功倍。我遇到很多人,什么都会一点,但是没有深入精通的能力,这样的人和有深入精通能力但是只会几样的比起来,可能后者更受到环境,因为公司会认为他可以培养,潜力很大。如何快速进入大厂,可以参见方块儿的第三个问题。 51 | 52 | ### 云峰:这次live能分配一部分时间讲讲即将参加秋招的前端应届生相应的职业规划吗? 53 | 应届生,更像是一张白纸,给团队带来活力,并且有培养潜力的,我觉得才更能有机会进入大公司,前提当然是基础都合格。如何让自己体现出更有潜力,我相信肯定是业余 54 | 项目了或者一些社区贡献,如何做呢,比如收集归纳的能力,比如一些模仿的能力,我不是说去抄,而是你有独立收集信息,学习并且总结出自己东西的能力。这其实对所有应届生和刚工作的人来说都非常重要。最后建议看一下这里:https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-04 通过目标的确立来做自己相应的职业规划。 55 | 56 | ### 冯如:一年经验的后端想往前端方向发展,有什么优势吗?现在初级前端市场是不是已经饱和了啊? 57 | https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#ok后端开发和科班计算机的同学再往后放一放他们的定位和成长路线和上面说的野路子完全不一样 58 | 后端往前端发展可以很快的越过初级阶段,这个只有试过才知道,因为和后端同事沟通,一起制定技术方案可以更流畅,知识体系也比纯前端入门的人要全面。 59 | 60 | ### 姿势就是力量:从传统行业转行进入前端,第一次找开发职位需要准备以及注意些什么? 61 | https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 前半部分就是学习方法。 62 | 63 | ### RickyGAO:大牛们,能不能分享一下自己平时获得新知识的途径,以及如何掌握新知识,讲心智运用到项目中,谢谢。 64 | 刚入门的时候我是看书和看论坛结合的,后来我发现论坛里大家说的东西都换汤不换药,后来就只看一些经典的国外的技术书籍了,而现在我获取新知识,前端方面的主要是通过阅读源码和源码相关依赖来获得的。如何运用的话,我觉得分2个维度,一个是抽象能力上的技能,这是可以随时随地发挥的,比如业务代码的抽象,组件的归纳等,而一些新api,新特性,如果业余用不到,可以自己尝试做些小尝试的demo,踩踩坑,也算是一个学习,以后项目用到了,就有了提前的技术储备。 65 | 66 | ### YM雨蒙:你好,我是机械行业的,最近刚学完网易微专业,能不能帮我梳理一下跨行业的劣势和进这个前端行业是不是很困难?大大不要劝退。 67 | https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 这部分有提到一些学习方案,跨行业的优劣势也都在part3部分,我倒不是劝退,而是你现在的难度是我当时的2-3倍,要有信心也要有backup,我说的backup就是说万一坚持不下去了,也能让自己不至于没有生计,我不知道你目前的水平,不好劝退,只是为你个人着想,目前环境确实比较恶劣。 68 | 69 | ### 韩松:主讲人能不能讲一下对于新手来说目前前端的一个学历路线,觉得东西好多无从下手。 70 | 可以参考https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 71 | 72 | ### 微词:2年前端,有java基础,全栈怎么规划,想一致coding不转管理现实吗?我是说30岁之后。 73 | 其实我不推荐全栈,全栈只适合小公司,而小公司一直coding是一个完全不可能的事,主要是体力,30岁之后,创业公司的工作量和大公司还是差的挺多的。所以想一直coding的意思就意味你要进入一个比较精神的领域,不是依靠体力解决问题的部门,比如一些公司的基础架构组,基础研发部这种部门,我理解上是可以不转管理coding到30岁的。而这些部门的要求都是多长一精。 74 | 75 | ### lingzhiqiannian:能分享下技术转管理路线时遇到的一些问题和解决方案吗? 76 | 可以先看看我专栏写的2篇系列文章。 77 | https://zhuanlan.zhihu.com/p/21779628 78 | https://zhuanlan.zhihu.com/p/21807979 79 | 然后我简单说几句,主要是刚转管理的人可能遇到的一个比较典型的问题就是不会分配任务,说白了就是喜欢亲力亲为,这是技术转管理人员最常见的一个误区,你能力强,然后一些核心技术实现都自己亲自来写,这其实是不好的,因为一个是大家容易形成依赖你,另外一个是技术得不到传承,团队其他人得不到锻炼。所以其实一般的开发任务可以适当分配,核心的技术难点,给一些中高级工程师来攻关,适当提醒和指导,因为团队管理的最终目标是团队里的每一个人都像leader一样,而不是一个team只有leader最强,搞清楚团队目标,提高团队技术能力才是正道。 80 | 81 | ### 不笠:仙子阿刚大一,软件工程在读,不太知道该向哪些方向发展,能介绍一下每个方向的大致状况吗?如果想向前端发展需要做些什么? 82 | 如果只是大一,我建议还是好好学习软件工程本专业的课程,可以提前学习一些实战的技巧,提高软件编写的能力,培养自己的基础知识和学习能力,其次可以根据自己的喜欢,把前端,后端都去了解一下,业余做点小项目,锻炼把编程转换成钱的能力,解决一下大学时期的生活问题,提高眼界和实际生活能力,我觉得是最重要的。毕竟毕业了就等于失业。然后每个方向的发展的话,看个人喜欢,比如前端也可以是客户端,也可以是web,可以是web编程也可以图形化编程,大学时间充足多了解点喜欢的知识,做出东西来我觉得非常重要,如果面向找工作的话,接触下web编程肯定是必须的了,可以从做一个个人网站或者系网站开始。 83 | 84 | ### ahole:对于没有校招进入大厂的我们,还有没有机会进入大厂,有那些可以作为亮点。 85 | 当然有,亮点我也提了,就是总结归纳的能力一定要有,还有就是加强自身的学习能力,比如读一本300页的技术书,比如个人的一些实际解决项目问题中的抽象组件的归纳和简单的开源尝试,都可以是自身的一个亮点,哪怕是去stackoverflow上回答问题攒积分呢,也可以作为一个亮点。机会肯定有,我见过很多跨专业,毕业1-2年的同学进入bat的了,机会大大的,也很多。 86 | 87 | 88 | ### 我别是个傻子吧:非科班,现在准备上大三,希望自学前端,这样本科毕业有什么就业瓶颈呢,谢谢。 89 | 学习方法说了很多了,就业瓶颈可能是校招的时候比较吃亏,不是特别好的学校校招的概率非常低,除非通过内推,所以更多的是让前端领域的前辈们看到你的潜力,我觉得这是一个捷径,当然路都好走,更多的是如何做准备,培养自己解决问题的能力吧,我大三的时候已经可以独立开发静态网站,二次开发wordpress了,也有个人的技术和设计博客,总之让别人知道你很在行这份工作即可,也许可以获得好的运气。 90 | 91 | ### 啦啦啦:开发目前主流前端的框架,需要局别哪些知识和经验? 92 | 目前主流的前端框架分为几个大类,我在前端开源项目那场live中有提到,我区分了4个类:系统,框架,插件,工具。框架类的话,就是大家比较熟悉的,一个解决特定场景下的,面对开发者的,并且有生态链的框架库。比如react,vue,jquery以及他衍生的项目,一些模块加载器也可以归纳与这一类项目,但是像包管理器的话我更倾向于工具类项目。如果你要自己独立开发一个vue,我劝你还是不要这么干,首先要知道一个框架的解决问题是什么,然后再考虑去做一个框架,这样才有意义,如果完全是一个100%的vue功能的框架,开发出来也没意义。当你知道自己的框架要解决什么的时候,需要几个方面的知识积累,一个是原生js维护一个项目结构的概念体系,比如如何设计多类继承,你的框架中的类继承方式选择什么,如何维护扩展性等等设计模式相关的知识,二一个是开发环境的问题,我推荐纯js框架使用rollup来进行模块开发,然后就是git和github的一些玩法,npm的玩法,如果还想了解更多建议参加我那场live,说的比较细致。 93 | 94 | ### 最爱constance:工作两年,主要使用bootstrap框架,h5cssjsjq感觉自己在行业没有竞争力,想提高自己,希望指明道路。 95 | 首先从重构做起吧,把项目从老的开发方式切换到新的技术栈和开发方式上,可以参考我这篇文章:https://www.zhihu.com/question/30683321 96 | 97 | ### bluesky:问一下现在node在实际项目中的应用。 98 | 实际工作中,nodejs主要用2个地方,一个是前端团队的工程化和开发环境的搭建上,一个就是作为某些平台的中间层,来包装web端,用rpc方式来调用服务接口实现业务逻辑,也就是所谓的大前端。还有一些用法会做一些独立的高并发服务,socket服务,还有就是一些前端团队的内部系统的开发。 99 | 100 | ### 我的十年:前端工作一年多,想进大厂,请问需要哪些素质。 101 | https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#uhey爝神老师请问工作3年的非科班前端想要备战bat面试应如何着手准备工作目前处于中级前端 102 | 1年和3年如果实力在我看来主要是项目经验积累不同,但是准备工作都可以参考这个回答。 103 | 104 | ### jessy:正在学习前端,想知道做的深入是不是需要了解后端。 105 | 肯定是需要了解的,至于了解多深,我觉得至少要明白后端框架mvc的一个原理,请求从前端到后端经过了多少流程,命令行工具开发,网站后端优化的一个思路,数据库不同的选择,还有简单的一些增删改查要会写。我觉得拿nodejs都可以玩明白,并不是很难,也许半年左右时间就可以看会了,如果工作中有机会接触也许就几个月,当然需要有人带。掌握这些概念后,很多理论上的东西都是可以反哺前端的,比如优化的技巧,比如分层的技巧,还有就是可以帮team做一些自动化工具和系统。 106 | 107 | ### lamar-aquameo:工作一年,想知道怎么提升。 108 | https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-04 参考这4个明确吧,然后指定符合自己的计划,希望能帮到你。 109 | 110 | ### evans:前端是否应该学习一门后端语言,如果学习应该选择哪一门后端语言比较友好。 111 | 当然应该学习,我觉得php和nodejs都挺好的,不建议学习java。。php比nodejs高级一些,nodejs更底层些,如果你不想鼓捣lamp这些开发环境之类的,nodejs也不是不可以拿来入门后端。 112 | 113 | ### 造梦姬:可否分享一下,专科生没有接受系统计算机基础的人,工作三年如何备战BAT面试。前端进阶的技巧,路线,非初级前端的进阶。 114 | 备战的一些方法和心得我上面已经答过了,看来问这个问题的人还真多。https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#uhey爝神老师请问工作3年的非科班前端想要备战bat面试应如何着手准备工作目前处于中级前端 115 | 然后就是说前端非初级的晋级路线,我建议大家一个办法,就是多去思考团队中效率低的那部分工作,如何使用程序来替代和改善,这是一个方向,还一个方向就是在项目代码中找到系统瓶颈或者优化点,进行局部重构,养成自己的代码风格和尝试把公司项目中一些不涉及业务的部分进行抽象,沉淀下来作为自己的业余开发项目,工作和提升互相结合。比如我之前做过一个类似兔展一样的h5建站的项目,然后我就把一些和业务无关的部分进行了归纳做出了https://github.com/xiaojue/EasySlide 这个过程技术和思考方式都会得到锻炼。 116 | 117 | ### 李奇缘:不知道现在各大厂对angularjs框架是否有投入使用,运用情况如何? 118 | 有部分公司还在用,主要是因为以前拿angularjs写的,换不了了,成本太高,就我个人而言,这个框架基本已死,年轻人和社区还是比较偏vue和react的,如果说vue和react学哪个,我建议react,因为复杂,更能让你深入掌握mvvm里面的一些细节和更加具象的了解这种框架的开发思维,我不是黑vue简单,vue也挺好的,上手简单社区也强大,完全我以上都是个人喜好问题,我自己的项目也是拿vue来写的,不过我个人还是挺想试试react的团队,平均水平就不一样,当然大家都在用vue,我觉得这还是看公司和团队的要求了。至于angularjs,那一套概念太像java了,我做angularjs的项目,比较痛苦,再也不想写了,当然最新版我长时间没关注了,这个问题可以找知乎或者微博的 大漠穷秋 深入讨论。 119 | 120 | ### doublejan:本人大三设计转前端,目前对js,css,h5,bootstrap,vue,jq,等语言和框架有一定掌握,并且有半年实习经验,单感觉进步不得要领。 121 | 这个问题参考是先广度优先还是深度优先的回答,我建议还是把vue或者jq等需要掌握的东西,牢牢掌握扎实,也许其他领域的学习就会开窍了。当然设计师转行可能底子薄一些,我的设计老师给我讲过,要想成为大师得先知道大师的东西什么样,也许不得要领还是好代码看的少,可以没事多去扫扫一些前辈的项目,就知道差距和学习的点了。 122 | 123 | ### console:对已有项目重构还是学习工作中不用的框架哪个收获多一点。工作中用什么方法能更好的提升自己。 124 | 我觉得还是重构收获多一些,但是,有时候可能你不知道怎么重构才是最好的,所以需要多阅读不同风格的代码和项目来提高自己的代码审美。这也是学习的过程,可以看书也可以直接看好一点的代码,不同风格作者的代码。工作中我的提升方式大体都是这样,看优秀的项目,学习借鉴转换收纳成为自己的东西。 125 | 126 | ### Qber:macbook是前端最方便的生产力工具吗? 127 | 我从工作到现在,09,10,11年都是windows,12,13是ubuntu,13,14,15,16,17是macbook,我觉得,是……,而且我非常后悔买晚了。 128 | 129 | ### jeaven wong:我想知道非科班生怎么学习web前端并从事这方面工作。 130 | https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 参考前半部分。 131 | 132 | ### syria:应届生毕业生面试时应该做哪些准备呢? 133 | https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#jojo爝老师您好我是计算机科学与技术专业的一名大二学生下半年大三刚开始自学前端不到一个月因为明年暑假想去鹅厂实习打算参加明年春季对实习生的招聘所以想在暑假和大三上学期好好学习下前端方面的知识但没有什么具体方向想请问一下一家大公司对于实习生有哪些要求呢如果想要通过校招成为一名正式员工又需要具备什么样的知识能力呢 参考这个,两个问题类似。 134 | 135 | ### 米公子:想问老师没有机会进入成熟互联网公司的应届生,应该如何做职业规划。 136 | 我的意思是在小公司的职业规划么,那我觉得还是要跟对老板跟对人,这是大实话,因为小公司更多是人治,所以你的努力大部分的认可是基于非理性衡量的,这也是很多不喜欢在公司干的原因,而大公司如何做职业规划,可以参考我职级晋升部分的逐字稿,如何做准备和规划,还有part4部分的几个方法论。 137 | 138 | ### 小柚子:一直以为只要一直学习就能获得好的工作,然后积极性就慢慢没了,两年也每一份好工作,迷惑。 139 | 我在我第一场 前端开发工程师如何自我提升中说了这个问题,其实学习是需要得到正反馈的,无论是乐趣,还是待遇,还是公司光环,还是团队认可,只有不断让自己找到正反馈才能不断的坚持,保持积极性,比如我写这么老多回答只为了心里踏实,和能帮助大家一点是一点,我是能收获到成就感的,工作方面也是,当你不断的充满正反馈机制的学习下,我相信这样运气也不会差,我个人的经验是一个人每年都会有几次运气好的时候,让你来进行机会选择,积累和抓住这些机会,可能就能帮你改变人生。。(有点鸡汤了) 140 | 141 | ### 特立独行的猪:从设计转行,前端经验2年半,计算机基础知识并不扎实,技能树只局限于前端,应该如何规划。 142 | 和我很像,我觉得更多的是如何转变自己的思维上下手,还有就是设计本身并不是短板,他可以帮助你在职场获得其他方面的好处,比如做的晋升ppt更好看,比如对用户体验更关注,对细节更关注。至于职业规划,其实我的方法论https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-04 是一个通用的规划技巧,可以适当针对你目前的情况来做调整。 143 | 144 | ### 马博:随着前端技术飞速发展,更新越来越快,前端的核心是什么?到底怎样才能轻松的应对发展迅速的前端技术?之后的规划应该这样?全栈还是产品经理? 145 | 我个人的经验,前端的核心就是完美的用户体验,这也是为什么前端之前都是和UED组在一起的,说白了前端还是面向用户端的开发,只有性能流畅了,交互体验好了,才最能展示前端的技术价值。发展迅速的前端技术,他们解决的问题一直没变,就是解决越来越负载的胖客户端开发,所以面对技术选择的时候,尤其是复杂问题的时候,要把问题和选择最小化,就像代码不超过100行bug最少一个道理,面对技术选型也是,这样的话也不会困惑到底学,而是自己需要什么,用什么。之后的规划可以一直做技术,也可以转项目管理,技术团队的管理,或者产品经理都是不错的选择,全栈就算了,除非打算创业,我个人觉得只有创业适合全栈。 146 | 147 | ### 匿名用户:上班族今年想转行学前端,应该如何学习前端,有哪些有关前端的实战项目的书或者教程推荐。 148 | https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 可以按照前面7步尝试自学。 149 | 150 | ### 匿名用户:对于js高级程序设计入门的初学者来说,书中的有哪些知识点是需要初学者先学习然后结合掌握的实际情况作出项目的。 151 | 我觉得22章之前都是可以完全0基础学习的,当然你得先了解最基本的js,css,html是什么,干什么的。从23章之后可能就开始深入拔高了。要是我说的话,初学者能把前15章看明白就很厉害了。后边的平时用的机会也不大,可以选学或者结合实际项目使用。 152 | 153 | ### 青山橙香:非计算机专业的大三学生想转行做前端,应该怎样规划,求指导。 154 | https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 可以按照前面7步尝试自学,问题重复了。 155 | 156 | ### 三石:大三学生想做前端工作,但是学了一大堆,又找不到工作,希望能指点一下如何继续学习。 157 | 学了一大堆的话,我觉得可能还是没有入门,或者只是入门了最基础的部分,找不到工作的话原因有很多,你的期望和单位不一致,或者单位对你的期望不符合,那么上面说了很多针对找工作的办法就是多找一些岗位工作要求的交集,去针对学习,而面试失败后,记得问一下面试官自己的不足和缺点,回来再继续努力。当然不是每个人都是适合编程的,如果对一些概念真的不懂,搞不定,搜索了一个字也看不懂,很多名词解释都不会,那么我还是建议不要勉强自己。总之,找不到工作,面试后记得总结,知道自己缺在哪里,再去针对突击。 158 | 159 | ### 小胖:28岁高龄,0基础,我的问题是如何系统高效的自学,第一份工作应该如何成长,希望得到解答。 160 | https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 可以按照前面7步尝试自学,第一份工作如何成长建议参考:https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#jojo爝老师您好我是计算机科学与技术专业的一名大二学生下半年大三刚开始自学前端不到一个月因为明年暑假想去鹅厂实习打算参加明年春季对实习生的招聘所以想在暑假和大三上学期好好学习下前端方面的知识但没有什么具体方向想请问一下一家大公司对于实习生有哪些要求呢如果想要通过校招成为一名正式员工又需要具备什么样的知识能力呢 这个回答。 161 | 162 | ### egoist:大三UI学生找实习公司会问会不会vue,react,但是我只会js,jq,html,css,继续学习js还是框架? 163 | vue和react还有jq的差距,可以看看我这边文章:https://zhuanlan.zhihu.com/p/23508136 了解一下来龙去脉后,其实vue学起来,蛮简单的,把之前的一些项目重构成vue的就好了。练习时间不会超过2周,我相信干活没什么问题。所以找工作的时候这也不是一个特别难的问题(vue的生命周期图解也记得搜一下看看,理解他整个实例运行机制)。 164 | 165 | ### 芦苇:实习前的项目经验,实习时的项目经验,实习后的项目经验,很像听听对这方面的说辞。 166 | 实习前的项目经验积累主要来源于大作业和个人业余项目,实习时的项目经验主要是一些打杂或者简单业务逻辑的编写,主要是细心和对第一次接触专业QA的时候可能会有些招架不住,但是了解了一般公司的QA套路后,就慢慢适应了,实习后的项目经验可能离开公司后就没有实战商业项目的机会了,那么其实又回归了大作业,毕设和业余项目了。所以有点自己的小项目也是挺不错的,我记得我在阿里的时候,一个比我小一届的同学,现在在阿里数据平台,他上学和实习的时候一直维护一个项目,就是做了个小的业余项目,实现了微博,人人网,豆瓣,facekbook,twitter,饭否等这些平台的授权登陆或者模拟登陆,然后通过他的平台同步消息。我觉得其实很多小项目都来源与平时生活的观察,自己找合适自己的小项目的一些思路。 167 | 168 | ### 张峰:上班族想转前端,应该如何学习,推荐书籍和教程。 169 | 重复的问题,参考https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 170 | 171 | ### 人笨嫌刀钝:我感觉现在js作用域,闭包,浏览器兼容不重要了,es6,mvvm框架,构建工具更重要了,实际工作和面试中是这样吗? 172 | 看是什么级别的前端,有些公司是只要能干活就行,那么闭包,作用域,兼容性其实框架大部分都帮你做好了,但是高级前端,一定是需要的,工作中需要,面试时也会适当考察。不过你说的这些,我面实习生的时候也会考察。。。主要是对原型链和作用域链的理解,这个属于常识我感觉,其实更高级一些的是类的多种继承方式,优缺点,在项目中你是怎么组织代码的,可能更重要。 173 | 174 | ### 活不过第一集:小爝老师,我是大三的学生,想要知道前端工作实习适合去哪些城市?选择实习公司的时候应该注意什么,冲着找工作学习的话,学习的核心应该是什么?如果想进入大型互联网公司,学习的核心应该是什么?实习过程中,前端的工作强度大概是什么样的,完成任务的同事,应该注意什么能力的培养。 175 | 你和去腾讯的那个同学问的一样,可以看看给jojo的回答,https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#jojo爝老师您好我是计算机科学与技术专业的一名大二学生下半年大三刚开始自学前端不到一个月因为明年暑假想去鹅厂实习打算参加明年春季对实习生的招聘所以想在暑假和大三上学期好好学习下前端方面的知识但没有什么具体方向想请问一下一家大公司对于实习生有哪些要求呢如果想要通过校招成为一名正式员工又需要具备什么样的知识能力呢 176 | 177 | ### 抱元衫:目前做人力资源的妹子转前端,不知道这样的职业规划发展怎样好? 178 | 这是一个特别公平透明的行业,所以其实就像打游戏升级一样,入门玩家,初中级玩家,高级玩家,手艺人,所以如果你确信自己有学习能力和很强的逻辑思维,细心,沟通能力ok,并且喜欢编程就可以学习下试试。职业发展的话,女生可以参考张秋怡大神的学习路线,其实还是找到一个好的团队,不断自我进步的过程。职业规划并不是万能针对每一个人的,不同阶段都不一样,https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-04 先给自己定个位然后看需要补什么吧。 179 | 180 | ### 匿名用户:基层员工到经理,需要必备能力? 181 | 大家都是码农,我也是,所以我觉得管理者更多的是协调资源和对项目进度把控,技术评估的能力,而普通开发更多偏向于技能的深入和对业务的理解,帮团队分担业务,帮大家多争取一些学习时间吧。这些都是非技术能力部分,技术方面的话,可能管理者更要关注效率,协作,流程,规范方面的事情。 182 | 183 | ### 吕思远:对于前端什么才是最重要解决问题的能力。 184 | 我个人认为是对新知识快速理解和学习的能力,其次是对业务需求理解和性能优化的能力。还有就是一些调试技巧和快速理解别人代码的能力。 185 | 186 | ### 人笨嫌刀钝:现在随便看一个前端开源项目,都有测试驱动,持续集成,工作中的实际项目都是怎样做的? 187 | 业务驱动的大部分都是只有功能测试,只有框架类型的才会有完善的测试驱动,和UI打交道的很少有人做到测试驱动,大公司也没有。持续集成的话,有些公司有有些公司没有,主要看公司是否崇尚敏捷开发那一套,但是我个人认为,软件项目适合,web项目并不适合。实际项目中如果做持续集成,说简单点就是不区分大的迭代版本,每个开发者对自己的代码都有测试用例保证,提交的就是可运行的代码,测试部门也必须随时跟着持续测试回归,这么一个流程,而很多公司因为部门大,业务多,并且不好写测试用例保证代码质量,只能依靠人来测试,那么持续集成就很难推动。我觉得这更适合高精尖的小team来玩。 188 | 189 | ### 天道酬勤:我想知道非科班出身,怎么规划学习前端。 190 | 重复的问题,参考https://github.com/xiaojue/careerLive/blob/master/data/Transcript.md#part-03 191 | 192 | ### evans:后端能力主要指哪方面。 193 | https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#jessy正在学习前端想知道做的深入是不是需要了解后端 参考这个。 194 | 195 | ### 言先生:不是211,985,普通二本如何进入BAT? 196 | https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#方块er以去大公司为目标的话应该以什么为核心 参考这个回答。 197 | 198 | ### 珠玑之间多沧桑:全栈怎么看,后端转全栈? 199 | 全栈的概念我个人认为目前为止还没有一个明确的定义,所以要我说,还是先深度优先为好,全栈很容易发展成什么都会点什么都不是特别强的一个尴尬境地,对于管理者来说这样很不错,对于想一直钻研技术,解决问题的人来说,这其实是一个非常错误的选择,当然除非不做技术了,去创业,但是那个比做全栈还难。后端转全栈我觉得主要还是在于客户端开发那一块,而且你说全栈到底包括什么,我个人理解全栈是连UI层面都是可以搞定的人,我觉得后端转前端可以,转全栈不是一个明智的选择。就我目前来看。 200 | 201 | ### 活不过一集:实习如何选择城市? 202 | 参考这2个回答:https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#方块er实习城市选择哪里好 203 | https://github.com/xiaojue/careerLive/blob/master/data/qq%E7%BE%A4%E5%92%8Clive%E7%9B%B4%E6%92%AD%E9%97%B4%E9%97%AE%E9%A2%98%E6%B1%87%E6%80%BB.md#孙大炮去广深投岗前端值得吗石家庄普本大二非科班如何选择城市 204 | 205 | 206 | 207 | 208 | 209 | -------------------------------------------------------------------------------- /data/前端开发工程师职业规划.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaojue/careerLive/1aef918b9d1d455cbfaf16688dfb751f53a02b19/data/前端开发工程师职业规划.pptx -------------------------------------------------------------------------------- /data/前端职级能力描述.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaojue/careerLive/1aef918b9d1d455cbfaf16688dfb751f53a02b19/data/前端职级能力描述.xlsx -------------------------------------------------------------------------------- /data/嘉宾回复.md: -------------------------------------------------------------------------------- 1 | ## 芋头 2 | 3 | ### 个人职业规划 4 | 5 | 一直以来的定位:纯技术路线,架构,架构管理,会夹杂团队管理,这个是上升时必须的,所以即使你是纯技术路线,也不是意味你可以完全投入到底层,不关心交流沟通甚至管理的能力,否则天花板会非常明显,大家核心关注的还是你解决问题的能力,要解决越来越大范围大工程的问题绝不是某个技术点的问题,你需要协调各方,甚至协调业务,协调各种技术来解决问题,有时候对沟通和主观能动性的要求反而较高,需要主动去推动沟通,不会有人来推着你指点你要做什么事情。 6 | 7 | 之前我的技术路线一直是偏应用层,广度大于深度,核心关注解决业务的问题,做过前端后端客户端开发,对开发一个产品的整个体系较为了解,也尝试自己做产品运营市场,一是了解他们的工作,二是增强自己的综合能力。 8 | 9 | 架构师不一定是对底层特别深入的人,现实场景的大多数问题还没有到底层,我们要解决的就是这些问题,特别是工程问题,这时候广度更重要。当然,广度不能停留在表面,要深入了解不同栈能做什么不能做什么,常见的开发方式和生态,编程思想等,而不只是语言本身。 10 | 11 | 如果你的职业路线是业务型,你的关注点应该是什么呢?不要跨越自己的职责一直想着从技术角度出发看问题,而是梳理现有业务,把握业务的组织和发展,把关每个新业务可行性,关注未来业务走向。然后是整个团队的工作方式,工作质量,将需要技术解决的问题反馈给架构组,流程的问题则需要自己解决。 12 | 13 | 这只是说一个中高级leader的关注点。其实在没有达到一定层级之前,大家的关注点都差不多,只是会有一些倾向,而且大多数时候还是先天性格决定了职业的走向。 14 | 15 | #### 1.什么原因促使你进入前端 16 | 因为可视,有意思,有艺术性,面向用户。这是最初的初衷,后来能走下去还是因为前端有可挖掘性,是一个很好的可持续发展的职业。 17 | #### 2.前端领域未来哪些职业路径会更受重视。 18 | 这个问题有点虚了,我觉得前端还是要有前瞻性,及时了解业内最新动向,不要成为啃老族。同时不要把自己当成一个切图的,把自己作为一个真正的程序员来学习和发展,切勿设限。 19 | #### 3.行业经验能否为求职加分 20 | 当然可以,但是对基础也要有要求,现在竞争激烈,有各种技术站开发经验的人太多了,现在我面试主要考察解决问题的思路,会有一些场景题和算法题,但是也不会太变态,而且一般是6选2这样。不会考察偏的知识点,所以基础的编程素质是很重要的。 21 | #### 4.如何给自己团队成员做职业规划 22 | 我们公司还没有太明确的升职路径,都是leader说了算,最终老大审批。我平常会给大家各种和cto接触的机会来提升他们的职业竞争力。 23 | 平常主要会给大家把关事情和技术上的规划。首先不管是做规划还是技术方案我会让他们自己先做,然后我也会自己默默做一个,最后和他们review修正他们的规划或者方案,最后再汇总把整个团队的规划发给大家。 24 | 平时我会做一些流程的规范让大家去执行,以便给他,恩输出一些工作管理的方法论。 25 | 做事情还是鼓励自主,以提升大家的能力,我会把关过度设计或者设计不足这样的问题,他们从这种把观众也能学习到很多架构的方法和边界。 26 | 当然这只是一个架构团队的工作方式,仅供参考。 27 | 28 | ## 叶俊星 29 | 30 | ### 职业规划: 31 | 32 | https://hackmd.io/JwUwjArAxmYCwFphQAwoXOBmdBDFAHLggQCa4BMwAZrgEZZ0p1A= 33 | 34 | 问题: 35 | 36 | #### 1.作为技术专家,未来2-4年的职业规划是怎么打算的 37 | 38 | 正如我们大家都知道的以及我之前在文章里也提到过,咱们工程师有两条路线可以走,一条是管理路线,另一条是技术路线。我自己本身对技术非常狂热,这么多年技术也是自学过来的,所以我一直坚定不移地在走技术路线。 39 | 40 | 当然,虽然说我走的是技术路线,但这并不代表我完全就不用去学项目管理、团队管理等等的管理知识了。其实对于工程师来说,技术水平和管理能力,都是我们能力模型中的一部分,两条不同的路线对于这两种能力都有要求,只是侧重点不一样。比如说管理路线会要求管理水平要更高,而技术水平一般;技术路线的话,要求技术水平会更高,而管理能力一般。当然这些只是相对的。 41 | 42 | 但是说,我光是定了要走技术路线这个方向是不够的,因为这个目标是模糊的。所以我需要先捊清楚,我这个所谓的技术路线,最后到底是一种怎样的状态?我每天想要做的事情是什么? 43 | 44 | 前一段日子我带着这些问题找了一些前辈,比如业界有名的贺师俊、顾轶灵、小爝、芋头他们,以及我老板和老板的老板,再加上自己的思考,我大概有了这么些小总结: 45 | 46 | 首先技术路线这个路线,其实还可以再细分,可以分为架构师路线和技术专家路线。 47 | 48 | 架构师路线的话,我们会是做一些团队和业务相关的设计。具体工作上,会有一些具有周期性的或者创造性的事情,周期性里,长周期的话,会有团队技术体系梳理、技术体系规划、业务架构梳理和设计等等的工作;短周期的话,会有技术选型、技术评审、业务沟通等等的工作。那么除了周期性的工作以外,架构师还需要抽象一些机械重复的工作,比如说在日常的工作当中,我们可能可以发现一些共同面对的问题,比如说 B 端页面不复杂,但是需求很多,需要很多初中级的工程师去堆页面,那么架构师就可以抽象出一些脚手架、组件库呀之类的东西——也就是说产出工具——来达到提高团队开发效率的目标。这个路线有个很关键的点,就是我们需要经常去跟业务方接触,要去了解他们的痛点,去发现多个业务团队共同的问题,不能远离业务,因为架构其实是为业务服务的,做出来的东西如果不接地气推广不开,那其实也是没什么用的。 49 | 50 | 技术专家路线的话,我们会是做一些比如像 W3C 规范制定、alinode、Chrome 这种项目的设计和开发等,在某个领域比较深入,输出一些工具呀、框架呀又或者是思想之类的,对团队乃至整个业界都有影响的事情。但是这个路线会对技术要求非常高,并且需要所在的公司业务有足够的复杂,机会并不多。 51 | 52 | 那么除了这两个细分路线需要做的事情不一样之外,技术路线其实有一些事情是一样的,就是保持技术的广度和前瞻性,不能说别人过来给我提个新技术,我从来没有听说过,这肯定不行,因为我这样根本就没办法做判断。要做到这一点,就要做到巨量的阅读了,我每天会在上下班之类的时间,去阅读一些文章或者看一些演讲视频,这对我保持技术的广度和前瞻性有着重要的意义,我常常也说这个习惯就是我的其中一个核心竞争力。 53 | 54 | 那么回到我自己本身来说,来了美团之后,我的大方向是没有变的,仍然是技术路线,但是我要结合我现在这家公司的实际情况,来细调一下自己的职业规划或者说工作规划。目前我的策略是减少管理工作所消耗的时间,把更多的精力投放在技术路线上,这样会更加的纯粹、更有效率。具体要做的事情的话,就是首先第一,我需要通过技术能力来提高我在团队的权威和影响力,比如说我会做很多不同粒度的知识输出,小到日常分享我看到的不错的文章,大到做专题技术分享,以及在别人遇到困难时及时帮忙提出解决方案等;第二的话,就是要去梳理、建立以及完善我们的技术体系,并且做规划,这就需要我先去摸清楚集团目前从开发到生产到监控的一整套工具和流程,并且从中发现问题,再提出更好的解决方案;第三的话,就是要经常跟业务开发团队沟通,甚至我可以去组建一个虚拟的架构师团队,每个业务团队都选择一两个技术水平比较好的同学来加入,定期地做总结和梳理,发现问题和解决问题。 55 | -------------------------------------------------------------------------------- /data/晋升评分.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaojue/careerLive/1aef918b9d1d455cbfaf16688dfb751f53a02b19/data/晋升评分.jpeg -------------------------------------------------------------------------------- /data/研发汇总-晋升标准-2015.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xiaojue/careerLive/1aef918b9d1d455cbfaf16688dfb751f53a02b19/data/研发汇总-晋升标准-2015.xlsx --------------------------------------------------------------------------------