211大四CS专业,自学C++框架春招0offer,是不是该放弃这个项目?
网友提问:
YT老师你好,我是末流211大四CS专业的学生。我大概是大四10月份左右才开始较为系统地自学C++,基础可能有点零散,对Linux网络IO和TCP/IP协议栈有较为深入的学习。
我借助AI摸索着写了一个C++的异步网络框架,底层用了 io_uring、Actor 模型和 Thread-per-Core 架构,勉强能跑通。我想着去验证它能用,就用它去做了个视野同步等逻辑来验证。春招拿到过一个golong的游戏实习offer,当时想找C++的工作就给拒绝了。后来一直在boss海投,有的笔试就挂了,面了可能有10次左右,大概一半一面挂,一半二面挂。在二面中面试官问我项目价值是什么、解决了什么痛点、我自己的优缺点,以及为什么没去实习之类的,我就不知道怎么回答,就开始贬低自己。现在很迷茫和焦虑,不知道该学什么,该往哪个方向发力。不知道是应该继续完善目前这个项目还是干脆放弃它,去重新构思一个项目?希望能听听您的建议。
Yt回复:
一、你的背景:211科班,但准备得太晚了
你是211计算机科班,这个背景肯定是有面试机会的,乃至大厂机会。
但是,你10月份才开始系统自学C++。
很多朋友还没有搞清楚找工作的节奏。作为26届,你找工作应该从25年三四月份就开始找暑假实习,然后9月、10月秋招,再到次年春招。
你10月份才开始学、才开始搞简历,虽然比一些室友准备得早,但整体来说,准备得比较晚了。所以基础零散,是正常的。
二、你做的“异步网络库”:没有任何价值
你借助AI写了一个C++异步网络库,底层用了io_uring、Actor、线程绑定CPU(Thread-per-Core),勉强能跑通。
这个项目没有任何价值。
为什么?
因为它没有解决任何具体问题。它唯一的作用,就是解决了你自己“学”的问题——让你了解了网络怎么用、线程池怎么用、内存池怎么用。
这种项目跟烂大街的Web Server是一样的:练练手可以,但没有任何实际价值。
很多同学去GitHub上找开源项目照着做,到头来都是同一类问题——没有解决任何具体问题,只是为了“学”而做。
三、春招拒了Golang实习:你犯了两个错误
春招的时候,你拿到了一个Golang的实习offer,但因为想找C++,给拒绝了。
这里有两个问题:
问题一:你对“实习”的理解有偏差
26年三四月份春招,你找到的根本不是“实习”,而是能签三方、毕业之后正常入职的工作。
如果你三四月份去实习三个月,后面不给转正,你的情况会更加尴尬。
问题二:因为“想找C++”就拒绝offer
很多应届生朋友都有一个先入为主的思维:我要干C++,我要做某某方向。
你要干什么,根本就不重要。
站在理性的角度:你缺的是一份工作,不是一份“干C++”的工作。
所谓的纯C++工作岗位,少得可怜。你以C/C++入手学习是可以的,因为它是偏底层的。但后面找工作的时候,Golang的offer也行,Python的也行。多拿几个offer,从中挑选一个好的企业就可以了。
你不是去挑选技术、挑选编程语言。那个东西毛线都不是。
很多面试官跟你讲“我们主要用C++”,等你入职后会发现,大量的工作还是以业务为主导。因为公司是以产品盈利的,大部分问题是客户的问题、业务的问题。
那种“我要干C++”的执念,体现出来的是一种很迂腐的感觉。
四、为什么你会一面挂、二面挂?
你海投了很多,笔试挂、一面挂、二面挂。
面试官问了你的项目,然后就挂了。
本质原因:你的技术能力没达到那个层次。
什么是技术?不是你会io_uring、epoll就叫技术。
技术是解决具体问题的手段。 你能用技术解决具体问题,那才有价值。
你意淫出来的那个io_uring + Actor + Thread-per-Core项目,在简历里提出来,没有任何价值。它解决了什么痛点?没有。你用AI生成的,你自己也说不出什么。
你的迷茫,从思考方式上就不对。看问题的方式不对,导致有些东西看不透,又拼命想理解透,但姿势不对,努力都白费。
五、这个项目还要不要继续?
你问:是继续完善这个项目,还是放弃它,还是重新构思一个项目?
我的建议:这个项目没必要继续下去了。
这个网络框架,距离“能解决具体问题”还有很长很长的距离。它只能给你提供一些经验,让你在后面做真正项目的时候有一些底子。
但不要再在这个“玩具”上浪费时间了。
重新去构思一个能解决真实问题、能落地、能给别人用的项目。哪怕很小,只要是有实际价值的,都比这个万行代码的网络库强。
六、总结
- 你的学校背景不差,211科班有大厂面试机会。但你准备得太晚,基础零散。
- 你做的异步网络库没有价值,只解决了“学”的问题,没有解决任何具体问题。
- 春招拒掉Golang实习是错误。你缺的是工作,不是“干C++”的工作。多拿offer再挑,而不是先入为主。
- 面试挂的根本原因是技术能力不够。技术是解决具体问题的手段,不是你会几个名词。
- 那个项目不要再继续了。重新做一个能落地、能解决真实问题的产品。
你现在要做的,不是继续完善那个没有价值的网络库,而是静下心来,重新思考:我能用技术解决一个什么真实的问题?
然后动手去做。哪怕很小,只要是有价值的,面试官都会愿意跟你聊。
查看3道真题和解析