通用能力
- 学习&提炼。你是如何学习前端的,你有blog或者学习笔记吗?说说这一年来你遇到的最困难的任务是什么以及你是如何解决的?
- 沟通&谈判。关于跨团队合作,如果你需要另一个团队的同学帮忙才能做好一件事情,你会怎么做?怎么样才可以让别人可以跟你同心协力去帮你完成一件事情?
- 承压。一个困难的任务交给你你要怎么解决?
- 执行力。老板给你一个任务,怎么样做,怎么做是最好的。
学习路线
- 打好基础多面试,先去面一些简单的查漏补缺知道自己还需要会什么,可以的话找人给你讲讲整个行业是什么样的情况。
- 先开始的话是视觉模型转化为界面,后边学会用node等进行数据交互,grand打包代码什么的。
- 作为一个工程师你需要知道自己做的东西能达到什么效果,能够用数据化的东西验证自己的成果。
简历
- 有什么成就。比如说知名公司工作经历、论文专利开源项目等等。
- 有什么项目经验。具体项目是什么?遇到了哪些难点?用什么方案解决的?有什么成果?STAR。注意成果的量化以及对项目的深入了解。
- 自我介绍。把简历变成一段自我介绍,不要怕重复一定要能熟练的说出来。面试官不一定看过你的简历,不过只是不一定。
- 建立能力模型,准备题库,通过追问收集STAR。STAR是否全面?能否体现能力模型中的能力?能否体现自己的业绩成果?是否有虚构和欺骗的成分可能被挑战?准备好自己的STAR故事。需要能把自己做过的事情讲得很清楚,然后还要体现出你的能力模型,让别人觉得你是一个靠谱的人。
- 给自己一个明确的定位。我想做些什么?哪些事情最能发挥我的作用?我觉得自己在哪一个层次?这个职位适不适合我?
面试
- 把面试当做查漏补缺的机会,改变心态能够更加从容。
- 常见的一个问题:你的缺点是什么?既不能回答你没有缺点也不能把那些看上去像缺点实际上是优点的缺点拿出来更不能耿直的说出自己的缺点,这里需要一点技巧。缺点肯定是要说的,但是不能说那种三观上的,也最好不要说性格上的,最好就你的能力模型谈一谈你有哪些不会的地方,但是最好不要涉及你的专业领域。比如说你去应聘Java工程师你就不要说什么编程方面的缺点,说一些无伤大雅的技术方面的缺点并且说明你现在正在努力改正。比如说你可以说你的字写的很难看。
- 判断面试官意图。面试官问你一个问题,你需要知道面试官真正想问的是什么。如果不是很理解,你可以用自己的理解再重复一遍面试官的问题。
- 如果面试官问你为什么选这门语言,即技术的选型原因。你要清楚面试官其实并不想知道你为什么选这门语言,他不想听你跟这门语言的渊源,也不想听你的个人历史,更不需要你来告诉他这门语言有多火。你需要让他知道,如果有需要,你是可以换语言的。毕竟这是一个日新月异的年代,没有谁想要一个那么固执的人。你要告诉他当时选这个方向是业务的需求,你要知道技术是为业务服务的。你要分析在当时的情境下选这个是最好的选择,所以你这样选了。
技术面
面试官其实主要目的并不是说让你解出这道题,而是通过这道题了解你解决问题的能力,代码的可读性以及你的编程习惯(比如说去除重复代码,边界条件的确定之类的),还有的会看看你有没有良好的QA意识(主动写一些单元测试),从而确定你们能不能一块工作。有的可能还会说让你分析一下这个时间复杂度,问一下你能不能继续优化什么的。记住一点,思路一定要清晰。