关于校招历程与零声教育在其中重要作用的总结

本科前两年半

大家好,我叫王怡珅,是22级26届的本科生,来自一所中游或中下游985院校。在大学的前两年半,也学习一些学校的重点课程,但是没有个人性质的钻研一些技术,只是学习一些理论基础,比如网络、操作系统、数据结构与算法等等,由于本人忘性比较大,所以总是在期末考试之后就把所学的内容全部忘干净了,也有不爱进行实践的缘故。

业余生活也比较丰富,熬夜看比赛,周末去另一个校区踢比赛,爱看连续剧,偶尔去旅个游等等。导致个人技术提升的时间剩不下多少了,到了大三下学期,才意识到要找工作了。其实从大一开始对于未来的规划虽不清晰,但也大致想往找工作的方面发展,也知道应该学习一些对口的开发技术,但是知道道理与切实地实践之间还是有着巨大的鸿沟。

大三下:校招正式开始

方向的选择

我的方向是C++语言的Linux服务器开发方向,类似于大家常说的岗位不多的C++后端岗位。选择这个方向的原因有很多,我的校招是匆忙开始的,总感觉留给自己的学习时间不够长,所以我想从头学java或者go的时间可能不太充裕,而C++语言方向我是有基础的,虽然这个基础也不太深厚。另一个主要的原因就是总是听说C++方向的程序员比java程序员的不可代替性强,门槛高、壁垒厚等等。其实现在看来,语言不是最主要的因素,方向才是。比如说,你学习java,所以能投递的岗位几乎之后互联网企业的后端开发,或者一些外包出去的软件公司。但是你学习C/C++,所能投递的岗位方向就非常多了。

单看C++后端的岗位,远不如java后端的岗位数量,但是C++语言所覆盖的宽度、行业的数量,是更广的。比如传统互联网大企业的基础架构/中间件开发,金融互联网企业的低延迟交易系统开发,量化开发,工业软件开发,音视频,嵌入式,游戏服务器等等。这些岗位统统加起来,数量应该是比java后端要多的,尤其从今年的行情看来,java后端也许并没有那么吃香了。而选择C++方向,你可以进入对于“快速上手开发”要求没那么高的企业有更大的优势,这种企业看重你的基础,甚至你会基本的C++语言知识,加上你有不错的学历,这种企业就会给你机会。

学校对于学分的要求有一项就是毕业实习,可以自己找,也可以跟导师干活。对于我们这种就业方向的同学,自己找实习应该是必须的选择。寒假回来,才真正意识到要拿到一段实习,甚至是暑期实习,要真正准备面试了,可是这个时候自己的技术都没有多少,大概只掌握了C++语言的基础语法,常见的数据结构类型,操作系统与网络的基本理论知识。

实习面试初探,裸面

找实习的第一段面试是字节的客户端,也是人生中第一场面试。当时几乎纯小白,对于八股文都几乎没有准备。面试官问我从输入一个url到看到界面,整体的过程是怎么样的。我当时就稀里糊涂简单回答了几句,因为之前甚至都没有见到过这个问题。后面问虚拟内存,也是说不清为什么有虚拟内存比没有,效率更高。

一年多了,我仍然记得这个面试,因为对于八股与项目的问题回答了25分钟,面试官就看不下去了,让我写代码题。题目是反转给定区间内的链表并连接回去,我戳弄了半小时都没有写出来,对于指针的运用没有那么熟练,也是非常尴尬地结束了。

隔了几天,第二个实习面试是一家小公司的CAD开发实习生,面试官没问啥八股,主要看对于语言的了解和基础的能力。有一个问题我现在都记忆深刻,就是,在C++中的派生类中,如何在覆盖父类的虚函数中调用父类的原本的虚函数。这应该不算八股问题,只要对于这门语言有基本的认识,就可以说得上来。我没答上来,面试官让我现场用AI查答案了。从一年后的现在这个角度看,不招我作为实习生是很有道理的,如果这些基本的问题都答不上来,那基本就没有写代码的能力。

这两场面试之后,就没再投了,一方面是对于自信心打击很大,一方面是明确认识到自己的技术与面试能力与达到通过入职要求的水准之间隔着一条难以逾越的鸿沟,再去疯狂投简历也没啥用。于是就潜心学习将近三个月,期间重要是搞项目,背八股。项目的来源主要是某些知识星球,其中项目难度参差不齐,我做了一个简单的缓存系统(其实就是实现LRU,LFU,ARC)这些缓存淘汰策略,代码量也就一千多行,现在看连玩具都算不上,也就是个demo。另一个是一个外国大学的操作系统实验,也没有自己去做,而是稍微看了看答案就写在简历中了。

暑期实习,有准备地面试

经过两个半月的学习,技术栈方面,我逐步了解了网络编程,比如知道了各类IO模型,IO多路复用,epoll的原理与作用;八股方面,也背了一些基本的问题,比如进程之间的通信方式等等,算法题方面,也做过几十道题,稍稍有了基础。

25年五月底复出投递暑期实习,在学校线下的实习招聘会中投递了某金融互联网中厂,也进入了面试环节(没有笔试)。一面是我的组长,基本的八股问题大多答上来了,代码题是一个力扣中等题,链表,比较紧张,也是勉强写出来了。二面比较短,是更大的领导,让我手写一个多线程按顺序打印数字的demo,我当时对于多线程编程,基本只停留在理论层面,只看得懂却写不出。甚至没有意识到这个题目需要用到条件变量,面试官就让我写伪代码,最后用的信号量,也不太对,但是面试官以为我做对了,最终于是通过了面试,7.1暑假开始正式入职。

暑期实习艰难历程

这是一段不太想去细细回忆的经历,总的来看并不是成功的。

刚入职,我头一回参加工作,对于职场还没有深刻的了解,表现起来也不是非常自然,一开始对于带教称呼老师,后来一位比我大一届的同事对于工作中各类详细的事情都事无巨细地给我讲解,算是我第一个职场领路人。他告诉我大多同事直接称呼名字后两个字就好,对于自己不懂的技术,不要到处宣扬,偷偷自学就好了。

但是我感觉始终都没有融入进去我们这个开发组,业务方面,对于金融交易类的场景几乎毫无经验;技术方面,基本不具备自己写代码的能力,都是要借助AI。其实一开始也没有给我派发正式开发的需求,大多是在外围打转。公司的代码也读不太懂,只是感觉代码量巨大,异常大,超出我认知的大,感觉永远也难以掌握这个系统。工作态度方面我也有问题,对于组长嘱咐的内容,我可能也并没有太放在心上,和带教老师的沟通也不多。每天下班后总是卡点走人,不愿意多呆呆。工作遇到困难的时候总是怀疑自己是不是做技术的这块料,甚至一看到代码就烦,周一到周四就盼着周五。最终的实习答辩我盲目自信,结果却是没有通过。这也是我职业生涯起始的一个挫折或者心理阴影。

离职回校参加秋招

其实在实习的过程中我还是有软性的成长的,比如对于大代码量大复杂系统没有恐惧感了,而是有一种渴望征服的感觉。我审视自己的秋招简历,感觉没有成熟的项目,于是又在知识星球中搞了一个重构muduo网络库的项目,当时搞下来感觉其实挺复杂的,看代码总是看的脑袋晕晕,各个回调函数,各个互相包含、引用。这个muduo网络库的重构当时还不知道是一个烂大街的项目,难度上甚至不如webserver,也还是用了大概一两周的时间赶紧写在简历中了,开始秋招的时候都已经9月中旬了,代码题和八股文也没怎么准备。

秋招处子面就是腾讯,一面就挂了,面试官对我的反馈是深度的不够。面试中印象最深的问题就是Linux系统中查看进程的命令和系统卡住如何排查的问题,答不上来,面试官提示我,top命令,但是当时我甚至都不会用top,只是隐约有印象听说过,所以整个面试的表现也是非常不好。面评应该非常差,因为我自此以后再也没有收到腾讯的再次面试邀请,即使我在官网更新好几次简历。

秋招剩下的面试就印象不是太深了,总的来说就是给我面试机会的大多是与我暑期实习的经历相关的金融类企业,比如同花顺、国泰君安期货这样的,大概加起来一共十来场面试,大多进不去二面。都没有收获正式的校招offer,只有同花顺的实习转正offer,不太能接受。

秋招进行了一个半月,十月底了,也没有更多的结果。

加入零声教育:将校招的大局逆转

居家潜心沉淀

十月底十一月初,我正式加入零声教育,跟着Darren,廖老师进行学习。

其实十月初就在网上看廖老师的视频(B站主页,程序员老廖),然后加微信领取一些资料,主要是现代C++的一些特性。一开始廖老师(Darren老师)推荐我加入零声的课程,我并没有非常在意,因为我以为他是卖课的销售人员,后来才发现他就是授课老师本人。更主要的没立马加入零声的原因主要还是在十月初我仍然相信秋招能够拿到不错的offer,但最后事与愿违,我没有更好的选择了,在十月底正式加入零声教育,跟着Darren老师一对一的进行规划、学习。

Darren老师对于我最重要的规划就是项目的更改,我的muduo网络库是个烂大街的简单项目,有经验的面试官一看就知道,我是速成的选手,没有自己真正的开发经历。技术栈方面我也有诸多不足,比如对于Linux系统编程、网络编程缺少实践能力,后端开发常用的组件、中间件也不甚了解,做大项目是需要有全面技术栈的,在Darren老师建议下我也逐步进行学习。

经过三五个月的对于技术栈的扩展学习,我逐步掌握了mysql,redis,gRPC,kafka,gdb,cmake等常见的工程技术能力,项目也慢慢成型。这段时间,每当遇到不会的问题或者困难都随时微信咨询Darren老师,汇报自己学习的情况的时候,就是老师拉个腾讯会议或者微信通话进行语音沟通。

过年期间,我选择呆在自己家里做项目、学技术栈、背八股、做算法题,日均大概时间五六个小时,也不至于太久,不过还是沉淀了很多东西。年前甚至还和朋友去河南旅游了三天,调整身心。

沉淀结束,回校参加春招

二月底回学校的吧大概,这个时候个人项目已经比较成熟、熟悉了,虽然八股和算法题做的不是非常多,但是总体感觉提升非常大,信心也大幅提升了。在经过Darren老师的模拟面试之后,稍加准备就开始海投简历了。

简历的投递是有规划的,总体来说先投那些不太想去的小企业来练手,再投比较想去的、技术非常对口的中小企业,最后再投递比较想去的大企业。

我在文档中做了投递公司的记录(不完整),包括公司名称、岗位、进度、结果、意愿度等指标,如图所示。

从整个春招的进程来看,我没有太多失败的经验。大多数都面试都可以进入到技术复试之中,而有无HR面试则要看公司本身的情况。以我的经验来看,中小型的公司也许没有HR面试,你只要通过了两轮技术面试就可以谈论总包、薪资了;而互联网大厂一般来说是有HR面的,中小互联网企业则可能是HR或者技术负责人综合面试。

单拿C++方向的经典八股问题之一,智能指针来看,就可以看出我在整个校招季的成长。秋招的时候,大概我只能分得清shared_ptr和unique_ptr的语义不同,经过一段时间的深入学习常见八股知识,在春招中遇到智能指针面试题的概率是50%,而我每次遇到这个问题都是直接开始吟唱,对于三大智能指针的哲学、作用、原理、优势等方面我可以侃侃而谈七八分钟。智能指针的核心在于所有权语义的明确,其次才是RAII的思想。面试官有耐心,我可以给他讲解强弱引用计数,何时使用shared_ptr的构造函数来初始化一个shared_ptr、何时使用make_shared<T>来初始化,以及在C++11中并没有make_unique这个特性,而是在14中才出现。

算法题方面,其实也不需要刷上千道题目,我个人其实只有一两百的题量,不过有些经典题是反复做过的。大多面试之中,只要你的前面的表现(项目+八股)说得过去,面试官基本只给你出力扣中等难度的题目,除非说你表现非常不好,才有可能出hard。相对的,如果你前面的表现堪称逆天,面试官通过一两个问题就能看出你的功底,非常想要你,可能就给你出一个easy题走个流程。

春招的结果与成绩

春招的offer,大大小小我拿了十个左右。从三月到五月都有录用的通知,收到offer的日子也是我进行抉择的日子。

一开始,我手上的offer只有一个学校本地的通信制造企业,是做路由器、交换机软件开发的,规模有限,薪资也一般,月base1开头。几乎与此同时的offer,就是另一个一线城市的游戏/互联网企业,规模较小,不过提供的薪资比较可观,月base2开头,加上季度奖金、年终奖,总包甚至能达到30w。技术栈也非常对口,做C++服务器开发。可惜的是,工作强度非常的大,互联网行业的顶格强度了,甚至还需要去提前实习。我其实在这两个offer期间也犹豫了很久,虽然最终是没什么意义,但是在当时的我看来是唯二的机会了,以为自己的能力与最终去处顶多到达这里。

后来经过了漫长的面试,我手上的offer逐渐增多。来校园招聘会的企业给我机会比较多,给我offer的有一家车企的子公司或者外包公司,家乡的一个资源再生、医疗材料相关的上市企业,深圳的一家数控科技企业。不过这三个企业所提供的薪资都比较有限,质量上可能不如自己网申的公司要高。

自己投递的企业也是规模不一、行业不一。有一家小型的量化公司的offer,国产操作系统企业的offer,中型互联网企业的广告引擎开发的offer,阿里钉钉的C/C++研发工程师offer。

除了上面的9个offer外,对我最重要的是这两个offer:一个是某AI芯片企业的算子开发,另一个是虾皮的搜广推部门的高性能后端开发工程师。这两个录用通知之间我犹豫了很久,有的老师、朋友、网友告诉我title大小很重要,也有的内部人员告诉我公司内部具体的稳定性情况与工作氛围。这两家提供的薪资都不错,方向也是不错的方向,但是最终还是需要各个维度、各个方向来综合考虑。有点类似于我最初在两个条件较为一般的offer中选择的境况。

总的来说,我在春招中的结果是比较成功的,从我在去年这个时候的期望来看,我超出了预期。当时以为我与互联网大厂无缘了,但是现在来看我仍有不少的机会进入大厂;当时不知道能否拿到2开头的月base,现在几乎2开头才是来见我的门槛。这不只归功于我个人的努力,也要特别感谢零声教育和Darren老师(廖老师)对于我的规划、指导与帮助,没有他们,也许真的没有我的今天。

全部评论

相关推荐

不愿透露姓名的神秘牛友
昨天 15:37
1、这群人晚上&nbsp;11&nbsp;点发朋友圈:"凌晨&nbsp;11&nbsp;点,三环的灯还亮着。"&nbsp;实际下班时间:19:30。2、什么是嘉豪呀?我最近在字节实习,没什么时间上网3、同龄人:学校社团、酒吧蹦迪;我:acm、字节/腾讯实习4、别人朋友圈发:“今天不想上课”;我朋友圈发:“今天的班就上到这里啦”,定位:字节跳动5、别人的朋友圈都是到处旅游的定位,我的朋友圈天天都是“字节定位”,还一定要是在【公司的健身房】里拍张照片,实际只练了10分钟,其中凹造型5分钟6、mentor布置任务的时候,别人都是:”好的收到“,我:”是不是要xxxx,xxxx这么做也可以吧,这个技术方案会不会更好些“7、别人书包里装的:王道408、轻薄本、四六级真题。我书包里面装的:显存24GB4090独显gpu(24小时开机运行,屏幕上贴着“字节/腾讯等贴纸”)、速效救心丸(代码报错用)、电棍(熬夜写代码困了用),就很……你们懂吧8、入职大厂第一件事:发朋友圈、发小红书,晒工牌,985计算机硕|字节实习生|可以接咨询|有偿改简历,9、别人的社交软件简介:25岁|男|希望遇见有趣的灵魂;嘉豪的社交软件简介:25岁|程序员|字节跳动工程师|一张佩戴工牌的自拍照大厂嘉豪标配:1.&nbsp;挂胸前的工牌(地铁里只挂不收,怕你看不见&nbsp;logo)2.&nbsp;降噪耳机(不放音乐也戴着,避免别人跟自己说话)3.&nbsp;印&nbsp;logo&nbsp;的电脑包(字节红&nbsp;/&nbsp;腾讯蓝&nbsp;/&nbsp;阿里橙&nbsp;/&nbsp;美团黄)4.&nbsp;手表(最好显示心率,午饭后必发"步数已破&nbsp;6,000")
牛客30247842...:因为不好进啊要是大厂随便进哪来这么多人装逼
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务