暑期实习面试结束啦,写个总结吧

3k 字手打长文求赞,想变成大橘已定

省流

19 场面试结束暑期,去阿里云了,Timeline 在这里 https://www.nowcoder.com/discuss/733707788249034752?sourceSSR=users

碎碎念

想写个流水账纪念一下暑期实习面试,后面有学习路线,不是特别有用,但是都是自己总结的,可以参考。

暑期一面挂,二面挂,三面挂都集齐了,投的都有面试,全靠双 9 bg 撑着了。我也逐渐理解为啥他们总说到双 9 最后都有 offer 的原因,很多时候面试真的是运气占很大一部分,面试官心情好就放你过了,问的也简单点。只要投的多总能幸运的遇到人好的面试官,而双 9 就是容易进面一点。虽然我觉得这也很不公平,我自己在牛客上看到好多双非的同学,他们简历、项目、业务能力都很强,就是被学校卡着(这里点名阿里系,虽然作为既得利益者说这些也惭愧

举个我同学的例子吧,他们也是双 9,叫小 a 和小 b 吧:

  • 小 a 是投了好多大厂但是都一面挂,但是投的多,最后遇到比较顺利的流程,第一次进二面就有三面,直接 oc 了。
  • 小 b 简历只有实验室项目,就看了下小林 coding java 面试题,随便投了腾讯字节还有 TME,平时都很佛,每次回去看他都在玩和看直播呢,牛客也没看过,问他刷题就说只刷了 codetop 前 20,面试手撕基本都中了(运气爆表),最后字节 TME 都 oc 了

小 b 的经历我在牛客上都没看到过这么顺的,不可思议,没有压力面,就算技术栈不对口面试官也说没关系,只能说运气也是实力的一部分。我感觉他们心态都很好,挂了就挂了,等复活就行,面完后就不要再去想它了,及时回顾总结就行。

银四还有很多 hc 呐,金三没准备好的假期回来继续冲

我自己的准备和面试

  1. 2024 年底意识到要准备暑期实习,开始刷 hot 100,虽然有 acm 经历,但是平时科研组会比较多,一个月才刷完。面试除了 morris 遍历没想到外,手撕都撕出来了。
  2. 2025 年 1 月中想准备后端项目,但是发现 c++ 的后端项目比较少,搜了下牛客的 webserver 基本都是劝退的,但是也没其他好入门的,webserver 涉及的知识点也挺多,就先做着了。
  3. 2 月 14 号做完项目,开始准备简历投腾讯实习基地提前批,但是投到了应届生岗位,3 天后才发现
  4. 2 月中发现自己看不懂牛客上的后端面经,发现自己对于数据库一无所知(除了本科学过的),搜了下小林 coding 的 c++ 后端,发现小林推荐 cpper 去客户端,基本上可以零基础入门,cpper 后端很难进大厂,转客户端开发。
  5. 2 月 17 号重新投腾讯实习客户端开发,没有后续了
  6. 2 月 24 号投字节客户端(又给我投到应届生了,眼瞎啊),25 号投腾讯实习正式开启后又重新投了下,26 号被 pcg 客户端捞起
  7. 2 月 14 - 2 月底补小林 coding 的计网,操作系统,b 站学 c++ 11 新特性
  8. 看到牛客客户端劝退第一人的帖子,麻了,又想准备后端了,此时 2.27 字节财经后端电话约面(3.3 一面)
  9. 3.2 一天速成小林 mysql,但是字节面试问到了 redis,完全不会,但是一面过了,约 3.4 二面
  10. 3.3 一天速成小林 redis,但是二面啥都没问,挂了,很难受,但是很快又被抖音电商捞了
  11. 3 月初到 3 月中,在疯狂投递,完善简历,刷牛客补面经,不会的马上用元宝搜
  12. 中间面了京东,发现自己对分布式和中间件一无所知,直接秒挂了
  13. 开始从 小林 Coding 和 JavaGuide 补分布式和中间件八股
  14. 到这里就基本补完了,但是都是八股,没有一点实战经验,后面还做了半天 mysql 测试后面其实就没啥好说了,就是一直在面和挂,最后阿里云也没答出啥,就进 hr 面了,我也很迷惑

最后战况如下:

  • 腾讯因为不会 morris 遍历和元编程,工程化经验不够挂了
  • 字节两次都是因为业务能力不够挂了
  • 小马智行难度太高,面试题目过于超前挂了
  • 阿里云运气好过了
  • 京东不会分布式事务挂了
  • 淘天,蚂蚁,美团,快手,作业帮面的太晚,喉咙发炎拒了

总的来说要进后端岗位还是太难了,最后去的基架,好像是做存储这块的,cpper 除了大佬不然真的尽早转吧

推荐网站和 Tips

  • 计网和操作系统:小林 coding,讲的很细,但是其实不用看特别多,面试一般不会问太深的。

计网时间紧就看 2.2,3.1,4.1,4.2,或者直接看 java 面试题中的计网部分,操作系统同理,重点看 4.1,5.1,5.2,5.4,5.5,6.1,有空第九章也要看完

其他部分可以看看面经或者根据你的项目、技术栈,有漏的再看也行

  • mysql 和 redis 也是看小林 coding,因为我是从 0 开始学的,就不提供意见了,我自己是基本上看完了,除了一些锁和 redis 数据结构没看太全,但是常见的跳表还是要知道的
  • 消息队列和分布式这个我看的好杂,小林 coding 公众号, javaGuide,Java 全栈知识体系都有看,但是因为没用过,只能死记硬背了,效果不太好,但是因为简历没写,所以面试官没怎么问

我一开始有个很天真的想法,我想凭借自己比较硬的 bg 进面,但是简历上可以问的很少,然后面试官只能问点简历上出现的八股,作为八股选手的我负责吟唱,手撕我也基本能做出来,就能进下一轮了。但是实际上还是会考查到他们工作中使用到的技术栈的,特别是二面和三面,不是很喜欢问八股了,场景题和 sql 题也会出现。

  • c++ 看阿秀的学习笔记,c++11 和设计模式看爱编程的大丙
  • 简历看编程指北,这个很重要,真的有很多人简历做的太随意了。我自己用的超级简历,但是其实是有很多瑕疵,比如页边距有点空,个性化设置不灵活,但是总体还行。
  • 项目其实应该看代码随想录的,上面有很多 c++ 后端项目,我是看 github 的 webserver,非常不推荐
  • 代码部分分为笔试和面试的手撕:
  • 笔试大部分都是 acm 模式吧,要知道怎么自己处理输入输出,牛客有练习网站https://ac.nowcoder.com/acm/contest/5657#question,美团好像是不怎么看笔试的(做出几题不影响),阿里的笔试偏难,挂的概率高,我打的几场一题就能进,没有被问过笔试做的题
  • 面试手撕基本就是 hot100 了,时间紧并且你之前已经刷过 hot100 的可以直接刷 codetop,二叉树的遍历要会非递归的,还有 z 型遍历(我被考了两次)
  • 字节腾讯有一些变形的难题(不一定很难,第一次见容易写不出来),我自己收集面经里出现过的:lfu(有原题),带过期时间的lru,奇数升序偶数降序的链表重排,两个有序数组的第k大数,数据流的中位数有删除操作版,删除无效的括号(有原题),大数乘法,大数除法,判断大小端。
  • 智力题:https://www.nowcoder.com/ta/nine-chapter 面试鸭也有不少,有空可以看看套路
  • 场景题面试鸭有,牛客上有大佬也在总结,可以关注下他们呀 https://www.nowcoder.com/discuss/733322587777888256?sourceSSR=users https://www.nowcoder.com/feed/main/detail/aa3f5b34ecc04ea8ae7ea71aa1d9372d?sourceSSR=users
  • 面经看牛客和xhs,多搜搜同一个厂的,面试题挺容易重复的
  • 测评也很重要,可以提前在牛客和xhs搜一下题型,找一下套路。阿里的测评要认真做,每一个集团独立招聘,也就是说每个测评都要重新做一次 ,但是也防止你一次没经验导致无缘阿里了。注意阿里的暑期和秋招共享测评结果,真的要认真做。我同门有直接测评挂的,救都救不回来。

其他

  • 这两个月高频使用牛客,以前刷手机,现在改成刷牛客信息了,私信评论基本都回了。大家都喜欢收藏不喜欢赞是为啥
  • 不要因为一时的失利否定自己,心态最重要。我在接了阿里意向之后面了 5 个厂,都进下一轮了,因为心态很好,答得多少就多少,答不出就道歉摆烂,反而容易了很多。
  • 注意身体不要久坐!阿里有入职体检,我之前因为担心过不了体检所以上周还在面试,真给我查出了心脏不太好,可能是体检前一晚没睡好,后面复查结果正常也顺利接到正式 offer 了。大家一定要注意定时休息啊,推荐 stretchly 弹窗休息软件,但是记得笔试面试的时候关掉防止弹窗干扰。
  • 租房子一定要多看xhs经验了,不要贪便宜。我昨天还看了一个串串房,味道特别大,赶紧跑了,那个中介还跟我说零甲醛。最后我还是在xhs发贴了,有挺多中介找我,鱼龙混杂的,要注意甄别

#牛客AI配图神器#

#面试题刺客退退退#
全部评论
小b太幸运了吧
3 回复 分享
发布于 04-06 06:31 湖南
不是,你们92,双2、双9的本来就羡慕了但是你的小b朋友也太幸运了吧,嫉妒了哈
点赞 回复 分享
发布于 04-29 16:21 广东
厉害
点赞 回复 分享
发布于 04-17 13:19 湖北
mark学习路线
点赞 回复 分享
发布于 04-16 19:59 安徽
mark学习路线
点赞 回复 分享
发布于 04-14 21:27 广东
mark学习路线
点赞 回复 分享
发布于 04-14 01:14 广西
双9真的优势大吗
点赞 回复 分享
发布于 04-13 13:53 辽宁
接好运
点赞 回复 分享
发布于 04-12 16:40 湖北
mark学习路线
点赞 回复 分享
发布于 04-12 15:43 黑龙江
mark学习路线
点赞 回复 分享
发布于 04-08 17:44 湖北
mark学习路线
点赞 回复 分享
发布于 04-08 17:37 上海
mark学习路线
点赞 回复 分享
发布于 04-08 11:22 辽宁
举报了
点赞 回复 分享
发布于 04-08 09:45 广东
举报了
点赞 回复 分享
发布于 04-08 00:33 陕西
mark学习路线
点赞 回复 分享
发布于 04-07 14:20 陕西
接好运
点赞 回复 分享
发布于 04-07 08:38 湖南
大佬牛逼
点赞 回复 分享
发布于 04-06 16:09 四川
我真的感觉开发的手撕真的好难,很多都是数据结构的
点赞 回复 分享
发布于 04-06 10:55 江苏
楼主什么学历啊
点赞 回复 分享
发布于 04-06 10:49 山西
楼主,你项目是只有webserver吗
点赞 回复 分享
发布于 04-06 09:36 北京

相关推荐

04-29 10:02
已编辑
腾讯_微信_客户端开发
最近xhs刷到一些因为劝退不敢接字节客户端offer的,今天还是想聊聊这个话题。首先鄙人见识浅薄,认识的小厂客户端很少,所以小厂客户端不在讨论范围内,因为不了解。这里默认大家都能进大厂。(你都做客户端了,那不就是奔着大厂去的吗)简单自我介绍,本人211本,25校招大厂客户端基本都拿了,有几家ssp总包都60+回答第一个问题,客户端能不能进?答案是肯定的。估计很多人听到客户端就怕,因为刷到不少劝退帖,评论区也有人劝退。事实上这些劝退者大部分自己都不是客户端,也不认识很多大厂客户端的人,只是跟风劝退。我做客户端加起来也有半年多了,在腾讯字节都待过,实际感受并没有比后端差。我也问了相当多的同事,在腾讯pcg实习的时候甚至在open day上问了这个问题,得到的都是比较正面的回应。这里就针对劝退者劝退的几点做一下解释:1. 岗位少,集中在大厂,难以回小城市发展。确实主要是大厂有,但大厂的客户端岗位可不少,完全是能和前端差不多持平的水平。大厂也主要集中在北上广深成杭,所以如果很想回老家发展的那确实不建议入客户端。2. 逐渐被前端取代至于被前端取代,这点见仁见智。跨端确实是趋势,但这并不影响你客户端的饭碗,跨端又不是无端,怎么跨也得有人开发客户端吧。至于比较激进的大前端厂,前端移动端放一块的,那你作为客户端进去还能学前端,你还有什么好怕的呢?更不用说大公司永远离不开原生开发。3. 裁员第一线,校招就是减税背星工具人这一点主要是某第一人这种魔怔的在发,纯纯放屁。大厂裁员从来看的是业务,经常是一个部门一锅端,先裁客户端再裁后端根本闻所未闻。至于减税工具人,不招不是立减100%?开年薪四五十万招进来减税的?这也说得出口。4. 整天就是画UI,没有成长,没有技术含量,上限低不排除有这样的部门。但后端整天crud的不是更多吗,crud难道比画UI更有技术?你要觉得客户端就是画UI没技术,那不妨看看我主页的面经,你能答出来几个?至于上限低,首先你得达的到上限,其次但凡进过鹅厂,也能看到客户端有不少高T(T11,T12),我也见过有人客户端毕业4年跳槽1次总包120的。5. 校招容易,社招地狱难度,被裁就失业身边统计学,本人也认识不少客户端,有个别被裁的,也基本无缝去下一家公司了。也有主动跳槽的。在我看来这个所谓地狱难度是站不住脚的,大厂之间互相跳槽没有那么难。我先前在腾讯字节实习的两个部门,都有社招hc,并且招不到人。我也问了ld,说面试不难,经验和工作年限匹配就行。当然你也可以不认同,这只代表我的观点,有技术是不会怕跳槽不了的。那么客户端有什么好处?1. 竞争小,薪资高竞争小一方面是劝退的很厉害,客三消的观念深入人心(实际都几个三年了,消了吗)另一方面是学校确实也基本不教客户端,教的都是Java、数据库这些至少和后端沾边的技术。这些决定了应届做客户端的人越来越少,所以大厂招不到人,就会开出更高的薪资。例如字节客户端校招签字费就是9w起步,而后端只有1w。有基础的人不多,这也代表着你更容易脱颖而出,秋招大厂ssp乱杀。客户端大概是最容易应届总包50w以上的方向了。这就是最主要的优点,校招起薪其实很重要。有人说微信客户端顶多和小厂后端比,有中厂后端都不会考虑客户端,这种人非蠢即坏。你去小厂起薪10k,哪怕你后面跳到了大厂,也会卡你涨幅,结果达不到校招生的水平,到时候看看谁成小丑了。2. 技术比较通用本人纯做安卓的,完全没有iOS基础,进入微信一个月就作为最主要客户端开发参与一个iOS新功能的开发,并且比较顺利。一般跳槽也接受另一端的经验。3. 不太容易被AI取代大厂的客户端基建做的其实相当夸张了,基本用的都是自己的组件,自己的sdk。受限于上下文长度和检索信息能力,AI很难获取项目结构、知道应该用什么。AI目前在客户端开发上的作用主要体现在减少重复劳动,让它找规律生成一段代码或者直接用插件补全是不错的。业务大部分用AI写是不现实的。这是其一,其二客户端技术更新迭代速度很快,每年一个安卓、iOS大版本,都有很多新特性,都需要程序员去学习和适配。4. 广度和深度都很大客户端涉及的技术范围非常广,如果你有幸进入字节,可以在ByteTech里搜知识地图,这里不展开讲。至于深度,客户端是和操作系统打交道,前端是和浏览器打交道,谁更有深度高下立判了吧。当然写这个也不是建议大家来客户端,只是希望消除一些偏见,理性讨论。 再次叠甲,重复一次,讨论的是大厂客户端,小厂不在讨论范围内。
牛氓立章哥哥:25校招?那就是还没正式入职。 mark一下,蹲一个两年后😊
投递字节跳动等公司7个岗位 找工作,你会甘心进小厂还是猛冲大厂
点赞 评论 收藏
分享
05-11 22:04
门头沟学院 Java
前面就是基本上是八股盛宴,然后看你说什么词触发他被动然后追着问。复盘的时候确实发现底层网络和操作系统问得挺细的,可能客户端偏底层?总体来说面得挺舒服的,面试官也很友善,一个小时很快就过去了。提问环节:1. 自我介绍2. 面试官强调这是客户端面试 说明一下base地,进来要转cpp3. 了解cpp吗?不了解,对于两者的理解我认为最大的不同在于内存管理,cpp可以灵活地控制内存,提高程序运行效率。Java通过jvm来进行内存管理,好处是系统自动分配内存和垃圾回收,安全简单,缺点就是不能更颗粒度地操作内存。还有就是cpp的学习曲线比较陡峭,其他的就不太清楚了。4. Java集合有哪几种?ArrayList,Linkedlist,HashSet,hashmap,ConcurrentHashMap5. ArrayList和LinkedList有什么区别?底层实现,读写应用场景,6. 具体到每一个节点上,他们两在内存占用上哪个更优?ArrayList底层是连续内存的动态数组,利用了计算机的局部最优特性,所以更优一些7. 什么是反射?通过类名在程序运行时构建类实例,操作类方法,类字段,增强编码的灵活性和解耦,但是也存在着安全的隐患8. JVM是如何反射构建类对象的?通过方法区中存放的类信息,字段和方法,去构建类对象实例9. 讲一下类加载机制,描述一下类是如何被加载的?加载-验证-准备-解析-初始化-使用,然后具体内容10. 类加载的时候,它对静态成员变量和非静态成员变量的处理具体有什么不同?静态放在方法区,局部变量放在堆,基本数据类型放在栈帧11. 讲一下CAS是什么?12. 有没有遇到ABA问题?13. Mysql底层存储的数据结构是什么?14. 平时写sql查询语句时需要注意什么,对查询进行优化,结合一个例子说明?15. 你的主表的主键ID是增长是+1吗?还是怎么样?16. 推荐使用顺序递增索引,说了一下顺序递增和UID的优缺点17. 有遇到并发插入,出现ID空洞的情况吗?没有,加行锁了18. 你刚刚说了行锁是吧,那Mysql具体有哪些锁?行锁、表锁、全局锁,间隙锁防止幻读19. 什么是幻读?20. 我看你有提到计算机网络,介绍一下UDP和TCP差异21. 如果在客户端建立TCP的话,一般会怎么做?(愣了一下)一般是操作系统底层通过协议栈来进行网络连接,通过JavaAPI来操作Socket层来进行网络连接通信22. 你有用过java的Socket相关的这些,手动去建立连接的API吗?用过简单的http网络请求连接,还有使用Java的网络应用框架Netty来进行网络通信,可以自定义消息序列方式和序列头等信息23. 你刚才提到操作系统负责网络连接,你知道操作系统提供的TCP的API是什么吗?不太清楚,没有在操作系统层面上实现过这种网络通信的调用24. 解释一下TCP和HTTP这两个专有名词?25. HTTP一定要建立在TCP上吗?还是说UDP也可以?26. 你刚刚说了QUIC协议,关于QUIC你知道哪些呢?27. 既然你提到了中间密钥,那它建立连接的大概过程是什么?28. TCP协议的握手是干什么的,为什么要有握手的过程?29. 它如何保证不接收过去的数据呢?30. 说了一个乱七八糟的问题,什么什么API和你刚刚说的握手有什么关系?(没听懂)31. 那我换一个问法,你知道半连接队列吧?那它在握手的哪一步把链接从半连接移到全连接队列?32. 如果第三次握手的ACK,客户端没收到,会怎么样?33. OK网络相关的就,嗯(话锋一转),HTTP头的大概结构你清不清楚?34. 问你两个操作系统相关的问题,kill命令有用过吗?(玛德没听清,没回答出来)结束一个进程一般用shutdown或者close函数35. 嗯我不是说在你程序内,那你有个jar包跑起来了,你怎么把它删掉?一般在服务器上用docker部署多个容器,用docker stop来停掉程序36. 那你知道在Linux平台,进程退出的时候会有几种信号,你知道几种它们有什么不同?不清楚具体哪个信号,说了个shutdown和shutdownNowPS:GPT说有6种,对应不同触发的方式:SIGHUP是终端关闭挂起,SIGNT是Ctrl键+c优雅退出,SIGQUIT是Ctrl键+\用于调试,SIGKILL是强制终止进程,SIGTERM是kill <PID>用来杀死进程优雅终止,SIGTOP是暂停进程可恢复37. OK,那你对Window系统相关的知识了解吗?不太清楚,只用过一些简单命令行做题:翻转数字?(“123456”输出“654321”)聊天环节:1. 因为我们这边是客户端开发,你这个经验都是服务端的,有做过安卓或者是其他平台的开发吗?做过一个功能比较全的C#全栈作业2. 那你愿意找客户端吗?(灵魂拷问)(流汗黄豆)可以考虑反问:3. 腾讯对于转语言或者转岗位的同学会有过渡的培训吗?会有,但也看部门,主要是看你有没有意愿去做这个方向的工作4. 元宝客户端具体是做PC端还是移动端?都有,具体看你兴趣就行(😥)5. 那具体的业务是干什么的?业务就是元宝客户端,你在各个平台都能搜到的吧,这就是我们的业务(😥这不没说吗?)6. 那客户端主要的工作是集中在哪些方面?用户使用界面?类似前端JS的逻辑处理?都会做,不光是UI展示,还有用户交互层面,也有数据要处理。虽说是客户端,但是整个数据的上下链路都是要做的7. 腾讯对实习生会不会苛刻一些?主要看不同部门的要求,我们这边还好,更注重你的基础是否扎实,解决问题的能力。
点赞 评论 收藏
分享
评论
121
275
分享

创作者周榜

更多
牛客网
牛客企业服务