0%

社招面试总结

前言

最近因为个人原因,一直在准备面试换工作,并成功拿到了阿里的 Offer,现在有时间将最近准备的面试经验总结一下,分享给大家【其实是被还想离职找工作的朋友催着写的( ╯□╰ )】,主要技术是 Java,希望大家都能找到自己满意的工作O(∩_∩)O

技术面试

一般来说,对于社招,第一面都是技术面试,但是技术面试占总体面试的比例不高,因为对于工作后的人来说,工作经验更加重要。这里我就整理了一些技术面的面试资料,大家根据自己的需要慢慢学习了解就可以了。以下这些也是我的一个好朋友分享给我的。

  1. 计算机基础:https://hadyang.github.io/interview/docs/basic/
  2. 高并发架构:https://github.com/doocs/advanced-java/tree/master/docs/high-concurrency
  3. Redis:https://github.com/Snailclimb/JavaGuide/blob/master/docs/database/Redis/redis-all.md
  4. 大数据面试:https://github.com/CheckChe0803/BigData-Interview

注意事项

  • 要根据自己简历所描述的技术复习,首先要保证自己简历里写的技术都了解。面试官肯定优先都会问简历里的技术,如果答不出来,会给面试官感觉你的简历不够真实。
  • 刷题刷题刷题!!!LeetCode 上的题,有空一定要多刷,每次面试肯定都会有几道算法题,如果面试正好遇到了,那么你就偷着乐吧!如果准备的时间很短,那么可以选择的做,比如做面试金典和剑指 Offer 的题,看到题,自己思考一段时间,半个小时,做不出来的话,就可以翻题解,从简单的题开始,看解题思路,看解题过程中遇到的数据结构与算法,进行了解,快速的学习,从简单题开始,能更快速的了解解题思路和算法。之前刷题无意间看到一个大佬整理的【从零开始刷力扣】,有兴趣的同学可以参考,感觉整理还不错。
  • 技术关键字:集合、队列、栈、HashMap(要去看源码)、ConcurrentHashMap、HashTable、HashSet、Spring(IOC 和 AOP 、Spring Boot、Spring MVC 等)、Hibernate、Redis、Zookeeper、消息队列、Java 多线程、线程池、锁、Java 内存模型、Java GC、缓存、Http/Https、Cookie 和 Session、JMap 和 JStack(排查 Java 内存溢出,死锁等)、数据库相关(事务、锁、索引)、分布式(分布式锁)、各种树和图、排序算法及时间复杂度、测试相关(功能测试、安全测试、场景测试、兼容性测试、页面测试、性能测试等)
  • 最后,上面说的关键字可能比较多,也比较乱,还是那句话,优先了解自己简历上描述的技术,还有就是要了解你面试岗位上要求的技术。每次面试其实反反复复就那么几个问题,所以每次面试结束后都要好好总结,把面试官问到的问题记下来,结束后深入了解,这样面试多了,大概就能知道面试官都会问些啥了。

项目面试

项目面试在社招中尤为重要,我面试了阿里两个部门,基本每个面试官都会问你的工作经历和项目,所以在面试之前,一定要写下来,总结好,这样讲的时候不至于不知道该说啥,或者说的时候语无伦次,拿不住重点。我就是刚开始面试的时候没有总结,导致前面几次面试的时候,项目经历说的很差,面试官表现的也不是很满意,但是随着后序不断的总结完善,在面试的时候对答就如行云流水了哈哈哈。接下来就把自己的项目面试总结分享给大家。

  1. 首先就是要描述下你的工作经历,我是一直在华为工作,但是换了三个项目组,所以就由远及近,分别描述下三个项目组里的工作,这里可能涉及的工作项目经历比较多,可以找一个自己印象最深的详细去讲(一般是自己最近的一段工作经历),其他之前的工作经历简单描述下就行,说多了反而表现的没有重点,比较啰嗦。我是挑了我最近的项目描述的,因为最近的项目印象也最深,大概的模板如下:

    • 项目描述,大概是做什么事情,为了解决什么问题,用了哪些技术、版本节奏、未来发展等等。
    • 项目使用的局点,为谁服务等等。
    • 个人职责,负责哪些部分,自己的工作分为阶段一、阶段二……个人绩效如何。
  2. 工作过程中的收获成长,独立完成了某某需求、框架、从0到1、为后续项目搭建、项目发展做了哪些贡献,在这过程中不断提升自己,构建了自己的核心竞争力,得到了主管的认可。从中了解了只要有心,没有完不成的项目、解决不了的问题。
    一句话总结:从一个刚刚毕业初入职场的应届生,到后来通过自己的努力,成为了一个有经验的能够独立思考分析完成项目,有自己核心竞争力,能够得到主管和周围同事认可的人。

  3. 对未来的规划,我写的是:纵向的,近几年要深入技术学习总结,横向的,不仅了解开发项目相关的技术,还要了解开发过程中的各个阶段要做的事情,比如需求分析设计、打包构建持续集成、测试(功能测试、安全测试、场景测试、兼容性测试、页面测试、性能测试等)、版本节奏、项目发布流程等项目整个生命周期需要做的事情。这样对于自己更后面的职业规划,无论是继续在技术岗位钻研,比如专家开发、SE(设计)、管理岗,比如主管、版本经理、客户经理等职位,测试岗,都能有丰富的经验积累沉淀,快速的在对应岗位上做出贡献。

  4. 自己的不足。我写的是:平时工作自己可能总结不够,要多进行总结,包括自己的经验收获成长,自己有什么亮点优势,可以让自己有核心的竞争力,让项目组离不开你,主管认可你。看事情比较片面,挖掘不到深层次的含义。自己平时可能话太多,导致废话太多,拿不住重点等等(每个面试官都和我说了这个缺点╯︿╰)。还有就是要对自己的未来有一个明确的职业规划等。

  5. 自己的优点价值,和上面的不足结合起来就是对自我的认知。比如积极主动细心认真、开朗、乐于助人、乐于分享,无论是在工作中还是生活中。每个人都是无价的,但是要看能体现出来的价值有多少,为社会带来的价值,为工作,为公司所带来的价值。

  6. 为什么换工作,个人原因,家庭原因,现在项目组的不足,导致无法满足自己的职业发展等等。

  7. 有没有什么问题要问面试官,要了解岗位的哪些方面等等。

注意点

  • 一般刚开始介绍工作经历的时候都是简洁明了,能够抓住重点,针对面试问题,给出提炼总结的答案。然后根据面试官后续的提问,针对某个项目进行详细描述。
  • 要表现的对面试的工作岗位很向往,并做了哪些准备(比如每天工作之余看某些技术方面的书,了解行业动向,刷 LeetCode 了解一些算法),如果后面入职了后,作为团队的新人,我可能面临什么样的问题,我要怎么解决,为了这个目标,要做哪些事情。(面试官问了再说吧,没问就算了。)
  • 我的社招总结可能是针对我自己,或者是针对阿里这个部门量身定做的,只是作为参考,自己提前要对自己面试的部门有所了解,如果是朋友推荐,可以提前问问面试流程,可能问的问题,做好总结。
  • 其实项目面试,只要自己总结好,面试回答的时候流畅、不啰嗦,一问一答,不会说不出来,就基本没问题了。所以我上面说的可能都是废话哈哈哈哈哈!

后续

  • 根据现在的笔记,能想到的就这么多了,如果后续还想到了什么,还会进行持续的补充,大家加油~
  • 附自己的一份简历:个人简历