一、前言
( 一定要看完 , 文末有读者福利 )
写这篇有以下几个原因 :
- 对过去一年找工作的一个详细总结
- 自己找工作也看了许多攻略 , 没有一个特别有用 , 特别好的 , 所以就自己写一个攻略 , 如果能帮助到别人 , 当然最好了。
- 好吧 , 总有读者来问 , 额。就写一份得了。
- 个人的一些想法 , 如有意见和错误 , 欢迎指出和讨论。
二、内容提纲
- 个人经历介绍以及一些找工作误区
- 如何写好简历 , 做到最完美的简历
- 如何准备知识 , 做好规划
- 如何笔试
- 如何面试
- 公司介绍
本文注重方法 , 不会具体说具体的题目 , 因为每个面试官问的不会一样 , 没有太多的意义 , 而且方法掌握对了 , 知识都是通的 , 具体实践自己怎么操作都可以。
三、个人经历
- 阿里蚂蚁金服:3 月初第一个面的公司 ,3 面过了。暑期实习 3 月
- 网易游戏互娱:3 月面 ,1 面 , 通过发了 offer, 没去实习
- 百度:9 月校招 , 笔试 +3 面面试 , 最后拿到 special offer
- 腾讯:9 月校招 , 笔试 +2 面面试 +hr 面 ,special offer
- 华为:9 月校招 ,3 面 +2 面 ,special offer
- 今日头条: 笔试 +3 面 , 拿到 offer
- 微软:4 月面 ,3 面 , 通过 , 算法偏弱 , 最后没给 offer
- 猿题库:9 月 ,3 面过 , 算法偏弱 , 最后没给 offer
四、误区
以为看越多面试题越好
许多同学看许多别人的面试题 , 看面试是什么题目 , 然而真正面试发现并没有什么用 , 本人第一次面试前看过 1 ,2 篇面试题经验 , 之后就再也没看过。因为面试可以说是一种谈判和博弈 , 每个面试官 , 问到的题目肯定不一样 , 许多都是顺着话题而展开 , 而且技术发展这么快 , 去年的面经的题目可能就过时了 , 算法题目除外。如果花过多时间和经历去看面试题 , 那么就跑偏了。
盲目的投各种公司
许多同学投各种公司 , 然后忙的焦头烂额 , 发现最后收获的很少 , 又很沮丧 , 很累。其实选公司也是有许多策略的 , 不易贪多 , 注重质量 , 而且第一次面试的公司一定要慎重选择 , 如果第一次面试成功 , 那么有保底的 , 又能增加信心 , 在以后的面时间过程中肯定也会越来越好。如果第一次面试失败 , 那么会很打击 , 很沮丧 , 会怀疑自己 , 缺乏自信 , 那么之后别的公司的面试也会越来越紧张 , 没有自信。所以第一次面试的公司要选好 , 争取一下成功。
各种跑招聘会
额 , 本人找工作没有去一次招聘会 , 个人觉得没有特别大的作用 , 如果想了解 , 想搜集信息 , 网络完全可以搜集的很全面 , 而且跑很多招聘会 , 看那么多的同学 , 人容易焦虑 , 缺乏精力 , 又疲惫 , 又累 , 所以直接网上投就好了。
五、准备和规划
规划 : 学习知识 -> 简历 -> 内推 -> 笔试 -> 面试。
1. 怎么学 ?
- 看书 , 看书 , 看书 , 记录 , 记录 , 记录
- 总结和思考
- 巩固和举一反三
看书是最好的学习方式 , 书具有系统性 , 会涉及到各个细节 , 多看书能很好的打好基础 , 增加广度 , 其次是记录 , 记录重要的知识点 , 关键的知识点 , 容易忽视的知识点 , 重点理解和思考 , 增加深度。然后不断巩固 , 加深记忆。
2. 我在找工作之前看了这些书 ?
- Java 方向 :
《Java 编程思想》,《Java 核心 I /II》,《Java 虚拟机》,《Java 特种兵》,《Java 数据结构与算法》,《Head First Java》,《Java 特种兵》,《Effective In Java》,《Java 并发编程艺术》,《Java 面试指南》
- Android 方向 :
《第一行代码》,《Android 群英传》,《Android 权威指南》,《Android 开发艺术》,《Android 深入理解内核思想》,《Android 系统源码分析》
这些书全部都买了 , 当然是二手的 , 一本一二十。
3. 这么多书 , 怎么看呢 ?
精读一本 , 例如 Java, 看《Java 编程思想》, 认真看完 , 做好笔记记录 , 自己不理解的 , 容易忘记的 , 觉得重要的记下来 , 当然是记关键词 , 使自己之后能看到关键词想到相关知识点 , 之后不断巩固。
然后你看别的书 , 就发现 , 都是熟悉的 , 因为许多都是重叠的 , 那么就查缺补漏 , 做记录 , 之后看的就非常快。
4. 获取信息
每天抽取一定的时间 , 获取招聘信息 , 然后根据时间记录 , 其他时间打基础。
六、做简历
1. 要认识清楚自己
- 简历不是说把自己所有的有的无的都放上去
- 简历针对不同公司 , 不同职位 , 要做相关更改 , 最好不要一份简历通用
- 把简历当作一个入口 , 和面试官沟通的入口 , 每个点相当于开始 , 针对每个点 , 都做好接下来的对话。
2. 亮点和优势 ?
好的简历无外乎以下几点 :
- 学校奖学金(XXX 奖学金 ) 代表你的学习基础
- 技能 , 简单列一下几点比如 Java: 熟悉 Java (多线程 ,IO, 虚拟机 ) 了解常用 jar 包源码, 了解 Java 设计思想等
- 项目 :xxx 项目 , 自己做了哪些工作
- 竞赛 :xxx 竞赛 xxx 几等奖
- 论文和专利 :xxx 论文
3. 简历格式
- 用表格来规范简历的格式
- 字体要清晰 , 统一 , 看起来舒服 , 如微软雅黑
- 不要超过一面
- 清晰简洁 , 每个模块加粗 , 下一横线
- 中英文简历都要做 , 英文注意单词用法
- 提交得提交 pdf 格式 , 内推是发现许多同学交到是 word 版本 ,word 版本因为兼容性问题 , 布局会变的。
- 尽量填充一面 , 内容多的 , 缩小字体 , 缩小行距 , 内容少的 , 增大字体 , 增大行距 , 一页满 , 不留空白
4. 个人信息
- 标题不要写简历 2 个字 , 都知道写简历没必要多此一举 , 直接写自己名字
- 手机 , 邮箱 , 性别 , 出生年月 , 技术博客 ,github。技术博客和 github 很重要 , 是加分点 , 许多面试官会看 , 这个是最直接能了解一个人的技术基础 , 如果没有 , 那么 ok 去准备 , 去总结 , 去写 , 去填充这些。
5. 校园经历
如果只是本科 , 直接写到个人信息里面 , 如果硕士 , 可以写两行 , 也可以加上自己获得的奖 ,xxx 奖学金啥的 , 动态的调整内容
6. 技能
切记不要写精通
- 列清点 : 如果直接写熟悉 java 语言 , 那么很宽泛 , 面试官可以在这么大的范围里面随便问 , 问到很偏的东西 , 就完蛋 , 比如 java8 新特性 ,java 多线程 ,java 泛型。如果改为熟悉 Java 语言 ( 基础 , 容器 , 多线程 ,IO, 面向对象)这样就很好 , 相当于把一个很大的集合 , 缩小为可控的集合 , 那么只要认真准备擅长的 , 重点的几点 , 再兼顾其他的知识点就 ok。其他也是一样 熟悉机器学习 ( 列自己擅长的算法 ) 熟悉数据结构 (…)
- 这样写法一个可以丰富自己的简历 , 使每一行都占满 , 另一个缩小集合 , 限制在自己擅长 , 拿手的重要知识点上面 , 这样自己准备起来有方向 , 当然其他的知识点也要准备。
- Java 可以如下写 : 熟悉 Java 语言 (…) 熟悉 Java 虚拟机(…) 了解 JDK 源码(arrayList,HashMap…) 熟悉 Java 并发(…) arrayList,HashMap 的源码非常重要 , 必掌握知识点 , 而去写到简历上 , 很大可能会被问 , 一旦问道 , 自己顺手纸上写出来 , 多么完美。
- 数据结构 (…) 操作系统(…) 网络(…) 数据库(…) 如果没有精力准备 , 那么不写 , 问到能回答则回答 , 不回答 , 就说不会。
- 语言 :CET-4:xx CET-6:xx 能熟练阅读官方文档。
7. 项目
- 有项目最好 , 项目上标清和 xxx 公司 , 和 xxx 国外老师 , 和 xxx 创业团队合作项目 , 这样看上去就显的项目重要 , 有底气 , 比上面都没有 , 让人以为自己捣鼓的小项目好很多。
- 没有项目 , 那么自己要准备一个项目 , 途径 : 教学视频 , 带你手打项目 , 语速 2 倍 , 了解项目整个逻辑 , 属于拿来主义 , 站在巨人的肩膀上 , 加上自己的思考 , 改进 , 进行包装 , 这样也可以 , 但是自己要圆过去 , 重要的不是项目本身 , 是项目中 , 自己做了什么 , 涉及到什么知识点
- 项目写清自己做的工作 , 关键知识点 :xxxx
8. 自我评价
- 不要写什么踏实 , 努力 , 这些很虚的东西。
- 有爱好 , 特长可以写 如 xxx 几级 , 志愿者 , 社团工作 , 可以写 ,xxx 主席
- 有优势的写 : 如 3 年读了 100 本专业书 , 写了多少篇博客
- 职业规划 : 职业发展
9. 注意
- 简历是一个引子 , 上面的每一点 , 每一句话都是有用的 , 如果问到那么必须自己能对话下去
- 为什么技能 , 列点 , 这些就属于自己抛出去引导面试官问的 , 这样就会化被动为主动
- 比如列了熟悉 arrayList,HashMap 源码 , 这样就抛出去这样一个问题给面试官问 , 而且属于数据结构知识 , 又有语言实习 , 极大可能面试官看到简历这点就会让你写 , 你在写这点在简历上的时候 , 就肯定准备的很周全 , 那么面试的时候 , 顺利的写下来 , 这样就很好。技能 , 项目都是如此 , 抛出去相关点 , 准备周全 , 等着来问。自我评价也是 , 抛出去读了多少书 , 那么问到你最印象深刻的书是什么 , 准备好 , 顺利答出 , 这样就会掌握面试的节奏 , 化被动为主动
- 简历的每一点都要认真准备 , 写的准备好 , 虚的 , 不会的那么就不写。因为自己真的遇到面试官 , 就拿着简历 , 对着上面一点一点的问 , 然后扩展。
七、笔试
一般最开始都可以走内推流程 , 不过现在大部分内推也是要笔试的了 , 笔试有以下类型 :
- 在线编程 : 网易微软的 hihoCoder, 没有 acm 基础的很难通过 , 这个时候就是发挥人脉的时候到了 , 当然自己要努力经常刷 leetcode, 等在线编程题目
- 选择 , 编程 , 简答之类的 : 涉及的知识面真的很广 , 大家都懂得。不明说了
八、面试
第一家面试的公司最重要, 慎重选择自己把握大的 , 可以不上来直接 BAT, 可以面一些小公司 , 使自己适应 , 增加自己的信心 , 如果一上来 BAT, 那么可能直接撞死 , 信心将受到强烈打击。本人一上来就是 B , 幸好还是通过了。
把握时间节点, 在自己把简历准备好 , 知识点准备好 , 怎么抛 , 怎么把我节奏准备好后 , 再投简历 , 切记没准备好 , 盲目的投。
约好时间, 许多面试可能在你做别的事情 , 比如搬砖 , 比如吃饭 , 比如睡午觉的时候打电话过来面试 , 这个时候正确的姿势是 : 不好意思 , 然后约半小时后。然后在这半小时中 :1. 找一个安静的空间 ,2. 看笔记关键词过一下知识点 , 清空大脑 , 平静心情。刚开始可以这样 , 如果有把握 , 那么随时开始。本人刚开始几次都是突然打电话 , 然后都是约了靠后的半小时到一小时 , 平静好心情 , 清空好大脑。后面面试多了 , 就随时可以开始面了。
面试有这几个阶段 : 自我介绍阶段 , 基础知识 , 扩展知识 , 项目 , 提问
1. 自我介绍阶段
简历上有的就不需要说了 , 说以下几点 :
- 简单介绍项目 , 重点突出一个 , 看面试官是不是感兴趣 , 动态调整
- 已经有的职业技能规划
- 未来的发展规划
- 自己的看法 , 为什么投这个公司 , 自己对这个公司的业务 , 和公司这个职位的工作情况 , 工作环境 , 使用的技术。
- 中间可以加入一些问句 : 比如说完自己的未来发展规划 , 问公司的对信任的职业规划什么样 , 或者问面试官个人 , 这样使对话能继续下去 , 有的说 , 有点聊 , 双方都舒服。
2. 基础知识
因为简历上已经抛出引子了 , 自己也准备好了 , 那么简单的基础知识很容易就能答上来 , 会的就说会 , 不会就说不会
3. 扩展知识
如设计题目 , 考思维 ,ok 首先归类到哪方面的问题 , 然后搜查知识点 , 看有没有类似的知识点 , 涉及到。因为这样的题目 , 大多都是从基础知识扩展出来的 , 所以从对应的基础知识搜查。
4. 应用知识
最新的技术 , 开源项目 ,xx 语言新特性。这些需要自己平时积累的
5. 项目
知识点介绍项目 , 说清楚项目的应用场景
以上知识和项目这些完全没有技巧可言 , 全部都是靠自己的功力 , 当然抛出去的引子使知识点范围可控了
6. 提问
- 问具体公司文化
- 问使用什么开源技术
- 问个人发展规划
- 问公司培养新人计划
- 问面试官面试反馈 : 最后问 , 如果前面谈的好的话 , 这个时候就知道自己是不是面过了。
7. 优缺点
经常遇到 , 这是一个很难回答的题目 , 重点是 , 缺点不能是真正的缺点 , 如果说缺点是不喜欢加班 ,ok, 完蛋。本人经历后总结出以下几点 :
- 实践能力不足 , 解决问题能力有待提高 , 随着自己的实践和努力 , 怎么怎么样
- 职场专业性不足 , 学校学生的思维更多 , 然后自己会尽快转变从学校到职场多过度
- 心理抗压能力不足。
- 任务时间规划和细分。
8. 几家大厂的面试流程
- 阿里 : 电面 , 内推没有笔试 , 网站上有进度 , 面试完成后 , 面试状态会变动如果挂的话 , 没挂的话过几天就下一面 , 最后有一个 hr 面 , 只要价值观没问题 , 基本没事。然后优缺点问题回答好 , 参考上面。基础知识 , 根据个人抛什么样的引子 ,java 的话常规的题目如 : 抽象 , 多态 , 虚拟机双亲模型 ,gc, 内存结构 , 多线程 , 线程池 , 自动装箱 ,io, 等。结合数据结构问的重点是容器 , 抛了引子 , 会写源码 ,ok 了。然后并发库 ,equal 方法源码等。之后排序 , 各种应用场景排序 , 大规模排序 , 分桶。偏项目 , 每一面都会问项目 , 二面 , 三面扩展知识比较多 , 涉及多线程比较多 , 虚拟机比较多 , 或者源码。阿里的氛围是狼性文化 , 适合张扬的性格 , 公司争吵比较多 , 当然是对事不对人。弹性上班 , 下班部门不同 , 时间不一样。基本 9 点后把。
- 百度 : 现场面 ,3 面 , 在宾馆 , 问的题目难度比阿里难 , 有算法题 , 手写代码 , 问题偏低层居多 , 本人 android, 问了很多底层的原理 ,AIDL, Binder,AMS, 启动流程 , view 绘制 , 消息队列 ,Binder open(), map(), JNI, 当然这些自己在简历上也抛了引子。前两面一天面 , 之后过的话会有 3 面会涉及一些 hr 面的问题 , 很少 , 项目比前二面问的多 , 有设计题目。3 面后无 hr 面
- 腾讯 : 宾馆 ,2 面 ,hr 面 , 100000 人里选 1000 貌似是这样。扩展连续深入问题居多 , 比百度好一些 , 不是特别篇底层 , 有手写算法题目。腾讯文化柔和。
- 微软 :3 面 , 手写算法题目 , 看编程之美 , 程序员代码面试指南 , 准备充分就 OK 了
- 猿题库 :3 面 , 手写算法 :2 面远程 , 在线编程 ,1 面线程 , 链表 , 数组居多 , 不涉及树图。
- 今日头条 :3 面 ,2,3 题算法题 , 基础知识 , 随着面试进度 , 越来越偏底层。
九、总结
- 充分的准备 数据结构 , 在线编程刷题 , 看书基础知识 , 实践项目 , 兼顾计算机基础知识 , 自己的知识积累最重要 , 其他面经 , 题库 , 也只是景上添花。
- 心态调整好 , 第一公司选择最重要 , 成功则一路信心倍增
- 每次面完做总结 , 思考 , 学习 , 提高
- 关注新技术 , 关注开源项目
- 多花功夫 , 只有比别人更努力才行
- 祝找工作的新的一年顺利找到自己满意的工作。
读者福利
最后 , 预祝各位广大同仁找到自己满意的工作 , 如果对于面试有一些迷茫 , 对于自身工作几年遇到瓶颈期了 ,可以 点击加入 获取, 我整理了一些面试真题资料 , 技术知识点剖析教程 , 还有和广大同仁一起交流学习共同进步 , 还有一些职业经验的分享。
可以 点击加入 获取 ,QQ 社群 :908676731
原文链接:https://blog.csdn.net/weixin_45136579/article/details/91511772