为什么我不建议你学C++后端

背景

经常看到有前辈建议,后端岗位要么主C++,要么主Java,然后辅go。

个人情况

  1. 24届,双非本,准备早,小卷王,项目是Raft-KV Cpp,还不是webserver,大三时C++后端找实习,上岸滴滴Go实习,顺势转go。
  2. 秋招投Cpp无果,得到反馈之后我就立马补齐Go,主go,C++放在次要位置。
  3. 秋招8个offer7个是go后端,一个CVTE的C++开发,还不是后端。

C++后端是真不行。

C++后端是真不行。

C++后端是真不行。

避坑

  1. 互联网后端,要么php、要么C++、要么Java、要么go。C++后端大厂的百度和腾讯,逐渐迁移到go,C++的岗位越来越少,校招更是少得可怜。
  2. 这还是只是大厂,你看看中小厂哪里有用C++写后端的。非常非常非常不建议大家卷C++,你非要走后端,学Java或Go一定比C++好。

原因分析

是因为C++的定位和特性、它的生态,注定他业务开发效率低。

  1. 它更加偏向底层,也不提供垃圾回收(防杠,智能指针不算特别完善),所以业务还需考虑各种垃圾回收。
  2. 同时,他的web框架、微服务框架等等生态,都不如Java和go来的完善,很多都需要自己造轮子(webserver都知道吧),效率极低,在后端这一方向上,完败Java和Go。
  3. 报错定位不完善等等....

C++就业方向预测or推荐

  • 嵌入式:这也是个热门方向,代表企业是影石和大疆和一些智能硬件企业(这不比后端强?)
  • 学QT,做客户端:代表是金山办公和部分传统行业
  • 车企里C++搭配ROS做自动驾驶:代表是Momenta、图森未来
  • 需求极少,要求高精尖:CUDA、编译器、AI框架、音视频
  • 进去再转其他语言:学历够好,互联网大厂一般可以接受进去再转语言。

C++的大部分就业方向,都是需要学习更多的补充知识的,C++更多的是作为一个工具是实现这些技术,比如QT客户端就需要你对QT熟悉,通常要求你有QT项目,比如自动驾驶需要你会ROS,比如音视频需要你熟悉ffmpeg。

总结

如果你学历不错,那你C++后端可能能拿到百度or腾讯C++offer,但是,对你来说学Java or Go不是嘎嘎乱杀?

双非就别尝试C++后端了,只有寄。

别学C++后端、别学!!!

看的人多的话,可以出个经验分享,双非本,实习转正无望,秋招上岸高薪wlb图森未来,但被毁约,春招字节B站,应该没人比我大起大落。

#后端##Java##Go##劝退##C++后端#
全部评论
中肯
4
送花
回复
分享
发布于 04-30 08:32 四川
佬,几月份上岸的滴滴啊
4
送花
回复
分享
发布于 04-30 09:24 河南
滴滴
校招火热招聘中
官网直投
极其中肯
3
送花
回复
分享
发布于 04-29 16:10 湖北
佬,我想问问补齐go需要做哪些,需要重新准备go项目吗,还是背背go的相关技术栈八股?因为我也是主cpp辅go,现在拿到腾讯的go后台offer,go项目只有一个6.824,不知道转go的话要不要补个业务项目
3
送花
回复
分享
发布于 04-30 11:04 福建
大佬非常有道理
3
送花
回复
分享
发布于 04-30 20:53 广东
双非去了量化开发😁
3
送花
回复
分享
发布于 05-03 18:34 广东
中肯,分析的透透的😅。只能在一个月左右的机会看能不能转Qt成功,不然真是毕业即失业喽
2
送花
回复
分享
发布于 05-01 16:50 山东
Qt为主,linux为辅,会OPenCV,ffmpeg,OpenGL中的一个及以上。是不是这样?
2
送花
回复
分享
发布于 05-04 09:18 广东
已转Java
1
送花
回复
分享
发布于 04-30 10:19 浙江
到位
1
送花
回复
分享
发布于 04-30 15:07 福建
m
1
送花
回复
分享
发布于 05-01 15:30 安徽
佬,推荐一下qt的项目呗
1
送花
回复
分享
发布于 05-04 15:27 辽宁
这暑期实习找的,我也想放弃 C++后端了
1
送花
回复
分享
发布于 05-06 17:35 江苏
主C++,辅Go这都是我大一的时候经常看到的说法 ,大二开始就没看见有人这么说了
点赞
送花
回复
分享
发布于 04-29 20:59 四川
中肯😃
点赞
送花
回复
分享
发布于 04-29 21:19 上海
数据库内核或者分布式存储咋样呢?我看好像也主要是C++
点赞
送花
回复
分享
发布于 04-29 21:55 吉林
我也是C++,但实验室项目是区块链用go写的。我想的就是主C++副go
点赞
送花
回复
分享
发布于 04-30 16:20 陕西
大佬就是大佬,说的贼正确
点赞
送花
回复
分享
发布于 04-30 22:05 河南
服务器开发呢佬
点赞
送花
回复
分享
发布于 05-01 15:07 江西
可以请教下吗,末2的话,现在大二,想本科出来做自动驾驶开发 / C++后台开发 / 大厂测开,这三个方向可以吗,楼主,可以请教下自动驾驶相关的吗,目前所了解到的有(自动驾驶90%都是端侧,也就是ROS这块比较多,TCP/UDP,MQTT,zmq这些,而且单自动驾驶这一个方向,就能细分5个方向.....)
点赞
送花
回复
分享
发布于 05-01 23:55 广东

相关推荐

头像
不愿透露姓名的神秘牛友
05-09 08:46
1、智能硬件/单片机开发单片机开发是生活中最常见,也是就业面最广的一个就业方向。就是做一些小的电子产品,比如一下穿戴设备,蓝牙耳机,智能手表,小的玩具,智能电饭煲、热水器、体温计等电子产品,都属于单片机开发。单片机开发是不需要跑操作系统的裸机开发,只需要在在单片机上做一些功能开发即可,常见的像是STM32的板子都可以实现。单片机开发在众多的就业岗位中是门槛最低,需求最多,最好就业的一个方向。除了在一线城市,在二三线城市也有很多这样的工作岗位。2、嵌入式Linux应用程序开发嵌入式Linux应用程序的开发是一个纯软的开发工作,不涉及硬件的控制,仅仅是设计上层应用的开发。一般都是基于QT,C++这类的编程语言进行开发。这类的产品在日常生活中也比较常见,就业市场的需求也比较大,相比较单片机开发有一些难度,但不是特别的难,但是入行的门槛和待遇都会比单片机要高一些。3、Linux底层驱动开发被这个名字唬住,做这一方向的开发多数以音视频,平板这一类带界面的东西比较多,也是现在比较主流的一个方向。但是嵌入式Linux内核 驱动开发的就业方向会比单片机开发的方向会窄一些,一般都是在一线或者是二线城市。常见的产品像是超市的收款机,银行的自助业务办理机,平板电脑等产品,这一类的需要涉及到操作系统,和内核。嵌入式Linux底层驱动开发的难度是要比单片机开发要难得多,同时收入也会高很多。4、嵌入式人工智能开发这个一个最近刚刚兴起的一个就业方向,这方面的人才还是比较稀缺的,难度也是之前提过的几个方向中最难的。嵌入式人工智能开发就是将人工智能部署嵌入到具体的嵌入式产品上进行优化。这个方向不仅需要懂嵌入式Linux内核驱动还是要了解和人工智能相关的知识。  c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
转发
56 89 评论
分享
牛客网
牛客企业服务