内容大纲
一、确立目标
1、设立目标
本人是学软件的,打算往大数据方向发展。这里以自己为例,想达到国内一线互联网公司的水平,再往上是顶级国际厂商的心仪岗位任选。
2、达成标志
收到某几家国内一线互联网公司的Offer;再工作几年有能力拿到国际大厂(如谷歌、微软)的心仪岗位Offer。
二、明确要求
1、能力建模
算法:LeetCode中等题可以较为轻易做出来。
语言:理解与实践Java的并发、理解与实践GC原理。
数据库:索引底层原理、理解并实践分库分表等。
操作系统:常用命令、shell脚本、监控工具、进程与线程关系。
计网:七层结构、三次握手&四次挥手、可靠传输。
方向:以大数据为例,掌握Spark的底层原理,对源码要有深入掌握,有深入的优化实践。
难题:攻关过难题,能够及时总结出来,并且能够像讲故事一样动人,能让感受到其中艰难与自己能力。
系统设计:暂时要求不高。
其他:
学习能力、沟通能力、好奇心、解决问题的思维&方法、热情。
不同面试官的考察范围:
- 一二面更多地考察技术能力。
- 主管面更多地考虑候选人难题解决能力、学习能力、个人素质等。
- HR面更多地考察一个人的软素质,包括表达能力、沟通能力、协作能力、价值观。
三、面试准备
1、找到目标公司的人,让他帮忙内推。
- 渠道有知乎、微信群、QQ群、牛客网、熟人。一定要找内部员工一对一内推,千万别找广撒网的那种,很可能填上内推码就不鸟你了。嗯,这里除了找人内推,还可以在牛客网上填写建立,投递一些企业,这里推荐校招,亲测有效,社招不太清除。
2、列下来投递公司,然后记录进度,有条不紊地推进面试。当超过一周没消息了,要及时联系内推人,这样还有希望进面试。
3、针对岗位能力要求进行面试问题准备。
- 面试问题总结要简洁有效,直抵本质;在之后能力提升后,要不断反思迭代,想办法把它做到极致。
- 功夫在平时。平时一定要攻克技术难点,并形成技术文档沉淀下来,重要的的问题一定要根据面试的频率和重要性不断优化。
- 拆解攻克。一些大而难的东西(如算法)可以拆解,然后用五毒神掌的办法慢慢攻克。
- 准备算法时,没必要一