作者:zk12345
时间:Mon Sep 14 13:45:05 2020
研三渣硕来分享一下秋招的心得,面试岗位后台研发,以Java为主,现在收到蚂蚁数金借呗(杭州)的转正意向书、抖音直播(杭州)的意向书、腾讯云Serverless(深圳)的口头offer,预计不会再投其他公司,提前结束秋招。
希望自己的经验能够帮到目前或者之后想要做研发方向的同学,也希望大佬们能够给自己职业方向规划给一些建议~ema3ema3
下面按照一年的时间轴来整理一下我的秋招之路
研二上 9-12月
三个月零碎的时间刷题,建议可以跟下bt极客时间覃超的算法课,系统学习后再刷,开始时间可以尽量早,当时我抛开算法课的题目刷了100左右,以medium为主
实习准备:12-4月末
12-3
保持每天关注牛客+论坛的内推信息;
保持每天的刷题,剑指offer+leetcode每日一题+面试题实战,到4月底为止leetcode250+,剑指offer大部分刷透;
制定计划学习/复习面试基础(github:cyc,bilibili:talkdata),同时做自己的笔记补充上面不够完整的地方;
准备简历,思考自己的技能点和项目难/亮点(实验室项目不相关,用了本科毕设增强版+小公司实习的一个项目);
每天有效学习时长大概8-10个小时;
3-4
关注牛客的面经,查缺补漏;
关注各个大厂的提前批(提前批非常重要!!!),提前加vx联系bu的面试官,了解bu的hc和工作内容;
各个公司笔试+面试,面试后的记录与复盘,查缺补漏,完善知识体系;
4-6
面试数量逐渐减少,实习offer逐渐到手
没啥大事可以放松一下节奏,准备实习
6-9
蚂蚁实习+实验室项目;
腾讯提前批;
字节秋招直通终面;
实习+实验室强度大,没有再刷题了;
接下来整理一下后端研发面试内容和推荐的学习方法(懒的自己整理的同学我直接建议去B站找talkdata买一套他的java知识点总结,书籍划重点在博客中也有推荐,确实良心):
- Java基础:Object方法、重载重写、String常量池、equals、final/static,最重要的是HashMap等容器的底层源码实现,推荐书籍《Java编程思想》
- JVM:JVM的内存区域、垃圾回收算法、垃圾收集器、GC内存分配/GC调优、类加载与双亲委派,推荐书籍《深入理解Java虚拟机》;
- Java并发:线程生命周期、volatile、synchronized、ConcurrentHashMap、CAS、AQS、线程池等,推荐书籍《Java高并发程序设计》、《Java并发编程的艺术》二选一,我看的前面的;
- Mysql:ACID、隔离级别、B+ Tree、InnoDB/MyISAM、聚集/非聚集索引、主从复制等,推荐书籍《mysql必知必会》、《高性能MySQL》;
- Redis:面试问的频率较低,可选,Redis性能高的原因、5种数据类型、过期策略和缓存淘汰机制、持久化机制、主从复制、缓存雪崩等,推荐书籍《Redis设计与实现》;
- 计算机网络:网络分层、TCP/UDP区别、TCP头部结构、三次握手四次分手、TCP可靠性保证手段、DNS、HTTP/HTTPS、Cookie/Session、浏览器输入网址后发生的事情等,推荐书籍《图解TCP/IP协议》,没时间不看,根据知识点去知乎、csdn等自己补全;
- 操作系统:进程、线程、进程通信方式、内存管理、IO管理等,不推荐书籍,自己根据面试点补全;
- Linux:inode/block、僵尸进程/孤儿进程、常用指令(top、more/less、ps、netstat、lsof、cat、rm等),不推荐书籍,去看博客;
- 设计模式:六大原则、单例模式(懒汉/饿汉)能手写、工厂模式、其他模式结合项目理解,推荐书籍《大话设计模式》
- Spring:SpringIOC、SpringAOP、bean、Spring事务,会不会不是特别重要,我项目都是Spark/Hive啥的,Spring是进公司学的,但是如果本身项目就是Spring,那么一定要准备充分,推荐书籍《Spring技术内幕》、小马哥讲Spring视频等
- 可选加分-大数据:MapReduce/YARN/HDFS/Spark等大数据框架
- 可选加分-分布式-Zookeeper:ACID、CAP、BASE理论、2PC/3PC/Paxos/ZAB/raft、Zookeeper系统模型、Leader选举等,推荐书籍《从Paxos到Zookeeper分布式一致性协议》
笔试流程:
现在内推不给面笔试了,所以笔试还是比较重要的,通常时间是两个点,5道题左右,a出2.5以上都有面试机会,难度不会特别大,medium左右的情景题,腾讯没参加过,字节、美团、快手、网易笔试都差不多,阿里恶心人两道hard一个小时,面过后低分要补笔试,难度正常
面试流程:
通常是一个小时的面试,也不排除2个小时的超长面;
首先介绍自己,聊简历项目和难点攻克;15~30min
基础问答,一般是java,计网,数据库相关;20~30min
做题,基本是剑指offer的原题,所以剑指一定刷透,或者是情景设计题,让你设计解决方案,如腾讯25马选最快5马问题等;10~15min
所以面试基础问的比例还是不是特别高,答得准确答得深入是加分的关键;
实习面经:http://note.youdao.com/s/cWe9G6L0
实习后的没有整理ema3
公司和方向推荐:
对于Java同学,可以做大多数的服务端开发,包括使用Golang(进去后培训转语言),同时也可以选择大数据方向,需要关注的重点是自己的兴趣、公司与行业领域的发展;
自己实习收获了蚂蚁、字节、美团、网易的offer,秋招收获了蚂蚁、字节、腾讯的offer,结合自己之后应该不会留在一线城市(买不起房,相对考虑杭州南京重庆成都等二线),从面试感受、工作地点、工作强度、内容与待遇上,比较推荐蚂蚁、字节和网易(阿里杭州10w真香),借呗这边团队995,周三周五6点下班,网易差不多,字节大小周,可以参考下。