Cpp选手的秋招体会

今年二月转码确定秋招方向的时候咨询了很多人,大多数都是劝入Java,但是由于本科课程带来的Java阴影,还是头铁选择了Cpp,找暑期实习的时候已经真正见识到 Cpp 找不到工作的恐怖了,但是为时已晚,只能一条道走到黑了。目前秋招也是被疯狂感谢信,侥幸入池的也基本上都是 Java 或者 Go 的后端岗,由于语言不匹配,也是眼睁睁看着各位牛友们泡出来了而我还在池底等着补录

首先讲一下 Cpp 选手的标准技术栈开局 Cpp11语法 -> Linux编程 -> 408 -> Cpp14-20 新特性,学完这些是几乎找不到工作的,只能算刚刚开始,其中 Cpp 语法尤其繁杂,各种细节、惯用法能把人淹没了,甚至学到现在半年,很多 Cpp 语法至今难以掌握。例如眼看着同期的Java小伙伴已经开始冲刺中间件了,我还在琢磨什么移动语义引用折叠完美转发,最后发现还是一头雾水。

历经千辛万苦,学完上述知识点,总算部分掌握了吧,做个烂大街的服务器,开始投递简历,一投一个不吱声。这时候才发现,好家伙,Cpp 能投的岗位:

  1. Infra:各种基架如车企的实时操作系统、互联网的中间件、编译器、数据库研发,壁垒性贼强,需要极高的能力和对口的 bg,否则简历直接挂,并且基架基本上也是吃力不讨好的岗位,研发难度大、重复造轮子,不适合我这种混子。
  2. Ai研发:Cuda 和 TensorRT 算准入门槛了,有些岗位甚至需要有能达到算法岗 bg、论文等,壁垒性依旧很强。
  3. 量化:神的战场。
  4. 嵌入式:嵌入式基本上在 C 上做文章,然后要学的东西很多,不亚于重新走一趟 Java 全家桶了,感觉也是吃力不讨好的方向,像我懂一点 stm,懂一点 Linux,但是根本不够应聘要求。
  5. 后端:除了部分大厂的少数岗位,基本上 Java 一统天下了,加上部分 Go,Cpp 只能投一些不限语言的岗位,发 offer 的优先级也不高,毕竟Java自己人都够挑了,招进来就能干活,何必再看C选手呢?并且Cpp选手能面后端,不是因为能写 webserver 会造轮子,也一定是拷打你各种中间件,能掌握中间件,才是过面试的原因,所以还得学各种中间件。
  6. 游戏:技术要求很高,并且至少要求图形学、引擎知识,了解游戏开发领域相关的算法、知识点,有自己的游戏Demo,还得学。
  7. 客户端:Cpp 基本上就是 Qt 和 ios 研发了,难度会小一点,但是前景也不太妙。
  8. 音视频:真的还有岗位吗?真的还有人在做这玩意吗?

发现没有?只会Cpp,死路一条,必须要依照自己选择的方向继续深入学习,并且不同方向间又细分了很多方向,各方向间壁垒性也很强,不通用。Cpp本身岗位就少,还要细分成许多方向,并且彼此间兼容性差,找工作必然竞争大。相比较Java,大一统,所有人都一套技术栈,岗位也多,机会自然多一些。

因此除了神,选择 Cpp 必须要补足对口方向的知识,做相关项目,找相关实习,并且有一颗强大的心脏,才能有更多机会,这是需要沉淀的。

#你的秋招进行到哪一步了#
全部评论
这就是我们的洗屁屁啊😆
53 回复 分享
发布于 2024-10-12 23:39 江苏
两年前把cpp忘光 梭哈golang 已经结果了
14 回复 分享
发布于 2024-10-13 12:57 江西
太对了 cpp 必须要有一个深入的方向。cpp 后端是最jj的。人家有java,有go,有匹配语言的大佬来面试,除非是大佬,要不为什么要选择一个需要转语言的候选人。
13 回复 分享
发布于 2024-10-13 09:41 河北
你别说,你还真别说,我四月份cpp转java,搞了半年,结果拿到的第一个offer是cpp的
8 回复 分享
发布于 2024-10-14 23:58 湖南
唔,嬉皮皮,然后捂着肚肚似掉了😖
7 回复 分享
发布于 2024-10-14 10:45 四川
2段实习2项目四六级奖学金校内外活动,目前0offer😂😂😂cpp的惨痛教训
5 回复 分享
发布于 2024-10-13 13:27 广东
然而我舍友双飞本硕,做了个游戏demo就去腾讯实习转正了,爽拿40w年薪
4 回复 分享
发布于 2024-10-14 16:53 河北
昨天面试被疯狂拷打python,5分钟速通只答上来一个面向对象我人麻了😁
4 回复 分享
发布于 2024-10-14 10:39 陕西
选择cpp后端确实需要很长的时候备战,半年是绝对不够的。但是如果能有实习、项目,再加上扎实的基本功,还是能找到不错的工作的
3 回复 分享
发布于 2024-10-14 09:30 黑龙江
不但如此c嘎嘎去国企银行也没人要的
2 回复 分享
发布于 2024-10-14 09:19 江苏
好家伙,我音视频干过实习,量化拿了offer,算不算cpp卷出头了
1 回复 分享
发布于 2024-10-14 23:54 天津
丸辣!
1 回复 分享
发布于 2024-10-14 16:00 湖北
等死了已经
1 回复 分享
发布于 2024-10-14 14:58 北京
嵌入式cpp转c了
1 回复 分享
发布于 2024-10-14 11:33 四川
确实同感,好难受啊
1 回复 分享
发布于 2024-10-14 10:04 天津
但是你有鹅
1 回复 分享
发布于 2024-10-14 01:11 浙江
还敢学c++吗😃
1 回复 分享
发布于 2024-10-13 10:13 北京
咦~佬什么专业转的码呀?😄
点赞 回复 分享
发布于 2024-11-09 10:33 河南
转go了
点赞 回复 分享
发布于 2024-10-15 11:38 广东
太认可了 cpp今天感觉真的很难找工作哇😭
点赞 回复 分享
发布于 2024-10-15 08:16 浙江

相关推荐

04-21 21:57
已编辑
门头沟学院 Java
发一下后端暑期实习中部分面经,还有不少公司没有记录或者整理的,有空再更新下腾讯:一面(一个小时五分钟左右)java相关(部门不用java,但是面试官说他刚好会,就问下,而我刚好没看java哈哈)对象比较,equalserror和exception,exception都可以被捕获嘛,有什么常见的exceptionjava线程同步方式gc项目实习相关幂等组件实现,顺带说了下可靠消息通知事务问了句项目里面的缓存数据库一致性问下认为实习项目的价值,给我建议说可以更宏观的看待手撕一道滑动窗口的,秒撕后加了一点难度,也秒撕接雨水,单调栈秒撕二面(四十八钟左右)实习相关介绍了下部门的业务,个人开发的规则介绍了下一个工具的实现,顺带说了下分布式事务rpc调用对象的组装(protobuf,但是我讲的是应用层面的,没有回答到面试官想听的点上)八股虚拟内存java gc进程通信方式常见的设计模式,讲一下工厂模式其他会不会其他的语言想做业务还是基架怎么学习的未来的规划对ai的了解没有手撕,问为啥没有,他说上一轮不是有吗,他能看到(感觉是一个比较传统特别的面试官,很多问题都不是跟着题库走)三面实习相关(不是细节,宏观角度问项目的价值,优缺点,怎么保证完备化)讲一下自己的优点最近发生最大的冲突(我讲了是实习中和业务放沟通问题,他引申问了下,是不是可以引入第三方仲裁)最近最自豪的事情算法:读取一个英文文档,找到行尾出现次数最多的一个或多个字符串(题目比较奇怪,而且我忘记了文件读取api,幸好不要求编译他也没有往优化的方向问)毕业几年内的规划b站:一面(五十多分钟)八股object类的方法 equals和==区别string适合+拼接吗hashmap结构,set的过程单核cpu可以处理多任务吗线程死锁violatile原理,是原子性的嘛乐观锁和悲观锁,乐观锁常见实现synchronized线程池常见参数对象创建的过程,类加载到初始化gchttps和http区别聚簇索引和非聚簇索引最左匹配原则redis用处缓存三剑客spring常用注解手撕:回环链表二面(55分钟左右)项目拷打几点项目实现,对比延时消息redisson分布式锁手撕:lru蚂蚁:一面(电话面,65分钟左右)拷打项目穿插场景题分库分表如果不是分片键应该怎么范围查询(答的很不好,应该可以用路由表或者复合分片键)数据分区有了解吗(只说了对冷热数据库有了解,但是怎么实现共同查询不太了解)怎么保证mq的消费(分布式事务,个人答的用的是本地消息表)保证消费幂等(redis维护状态字段,分布式锁修改状态)下单时一些实际场景出现的情况手撕(口述):多线程单双数打印synchronized和reetranlock聚合索引的失效,b+树结构二面三十多分钟,没手撕,有点像kpi也有点像走流程项目中支付相关内容实现项目中高并发场景的方案实习中的难点对ai应用在金融、支付上的一些场景会英语和粤语嘛实习时间阿里云:一面(约50分钟,压力面,好多不会的,所以有些问题不记得了) 上来手撕 不用锁完成双线程交替打印(volatile加原子变量,但是他说有问题让我下去自己看看)八股(全部是非常规八股,很多没看到过的)redission原理,怎么实现的释放通知(publish,不会)还有什么可以实现分布式锁(想着mq,他说用zookeeper)为什么使用zookeeper(我一直说注册中心的作用还有服务保护,他说这些只是功能,没答道点上)接着问为什么不用redis也能实现上面功能,为什么不用而下做注册中心(提示后说zk是保证cp的,redis是保证ap的)redis pipeline,多条指令发送过去后中间会有其他指令插入吗;是谁负责把响应打包起来的(记错了,以为redis负责发送结果的线程打包的,他说redis内部没有pipeline概念,只知道来了很多指令,是客户端打包起来的响应)redis怎么设置过期时间(直接说px);过期淘汰策略(难得有正常八股)还有个关于rocketmq我都没听懂,从来没有见过的概念,直接说没听过了还有一些不记得了二面50分左右,很长时间是在闲聊,收获良多,面试官很和蔼,爱了,和上一个面试官两个极端项目中binlog使用,讲述了一下我数据库缓存一致性方案;此外,问我用redission分布式锁时使用设定过期时间和等待超时时间相关问题进程通信,操作系统底层实现互斥锁tcp粘包拆包遇到的最困难的事情反问:为什么不问八股,他说应届生本来也都是背的,理解不深入,没有这个必要业务,数据库底层,c、cpp、go京东:一面为什么去美团实习(后面说考察我的规划性)java exception项目中联合索引,还有两颗b+树项目和实习中怎么设计数据库表项目中写的set环境,还有相关的一个通知型事务怎么学习的遇到的最大困难,ai的了解反问:为什么时间这么短,他说主要是考察潜力,不想问常规的八股问题,然后夸了我一顿,说我什么规划性强,学习能力不错,然后什么是实实在在做了事情,不是包装的等等我说想下一轮再问业务,他说下一轮可能是人事了,所以给我讲了五分钟的业务二面hrbp面三面实习项目相关内容字节:一面45分钟左右实习相关为什么分页查询,除了分页还有什么可以防止oom怎么做的线程的安排(completablefuture)题目:双线程交替打印(简单讲了下synchronized)+sql(面试完之后发现做错了呜呜)怎么使用的联合索引,索引怎么查询的;给了一条sql分析应该加上什么索引,查询的过程;如果索引太多会怎么样(从联合索引字段多和所有索引多入手)手撕:返回最长公共子字符串二面一个小时左右详细讲了实习的一条并且引申问了个场景进程线程区别、什么场景用多线程,什么场景用多线程堆和栈的区别,为什么一定要区分堆和栈cpu怎么调度任务(讲了几个调度策略)tcp四次挥手,为什么一定是四次,可以三次吗;timewait状态,为什么两个msl保证包消失如果服务端重新发送的第三次握手又丢失了怎么办char、varcharmysql的limit(我顺带提及了分页优化,然后他问如果数据量是1kw的话还用分页优化合理吗,为什么这时候用limit会慢)手撕:15. 三数之和三面没记录 #暑期#  #后端#  #大厂#
点赞 评论 收藏
分享
评论
81
178
分享

创作者周榜

更多
牛客网
牛客企业服务