男生一旦做了嵌入式,基本上就定型了...

那天在地铁上,看到旁边小哥戴着降噪耳机,手指在平板上飞快敲代码,屏幕上是密密麻麻的C++代码和ARM汇编指令。
他抬头接了个电话,声音压得很低,大概是跟客户讨论智能手环的固件更新。
那时候我突然觉得,嵌入式这行当,好像挺有意思的。

嵌入式行业确实不算那种天天换岗的互联网行业,但也不至于"定型"到动弹不得。
我表弟就是例子,2 01 5 年从浙大毕业,一头扎进嵌入式开发,现在在深圳某车规级公司做架构师,天天琢磨的是自动驾驶的传感器数据处理。
他跟我说,当初选这行,就是看中它"硬核",越老越吃香。

但要说稳定,也得看位置。
去年我邻居老王,在江浙一家做医疗设备的公司干了十年,公司突然被收购,他整个人都慌了。
最后人家把他调去成都分公司搞物联网项目,工资降了点,但总算保住了饭碗。
这事儿让我明白,嵌入式技术本身是稳定,但依托的公司和行业生态,才是真正影响职业寿命的变量。

再比如我认识那个做FPGA的工程师,3 2 岁那年突然想转行做产品经理,天天泡在客户现场,研究市场需求。
现在他在苏州搞智能硬件产品线,比以前还忙,但他说这感觉比天天改驱动代码带劲多了。
这就说明,嵌入式背景的人转行,优势特别明显。

最近在看深圳某大厂招聘的嵌入式岗位要求,起薪普遍在2 0K上下,三年经验能到3 5 K,十年以上的架构师能到5 0K以上。
但有个特别有意思的细节,他们要求应聘者得懂Linux内核,还得会Python脚本,这明显是AIoT时代的要求了。
这让我想到,嵌入式这行当,就像那块平板电脑,表面看是金属外壳,里面却一直在更新芯片。

等等,还有个事。
我上次去成都参加嵌入式展会,看到好几个展位在招AIoT工程师,薪资比普通嵌入式高1 5 %左右。
有个展商跟我说,现在做智能家居的,光靠单片机已经没竞争力了,必须得懂机器学习算法。
这话让我突然想到,十年前谁会想到嵌入式能和人工智能搞到一块儿去?
反正这行当挺有意思的。
你想想,从单片机到自动驾驶,中间隔着多少技术迭代啊。
但奇怪的是,那些老工程师们,好像总能在变革中找到自己的位置。
就像我表弟说的,"硬核"的技术,总有人需要。

哪位大佬有 Linux C与C?? 一线开发实践,急急!求这个百度网盘资源!阿里嘎多

上周,我那个朋友在百度网盘分享了《LinuxC与C++一线开发实践》的资源链接,提取码是1 2 3 4 这本书对初、中级读者来说是个宝,因为它不仅贴近实际开发,还详细介绍了Linux下的C/C++编程。
共1 9 章,从Linux基础到网络编程,应有尽有。
不过,资源链接和提取码可能过时了,你可以自己搜索看看是否有更新的资源。
2 02 3 年,这技能在就业市场上真的很吃香,你看着办吧。
我刚想到另一件事,如果你对C++跨平台开发感兴趣,这本书里也有涉及。
算了,你自己看看吧。

C++ & Linux后端进BAT的学习路线

说实话,想进BAT做C++&Linux后端,路子得走对。
我给你捋捋,具体点,别泛泛而谈。

一、C++基础
视频推荐:B站上“程序员的C++学习”系列,找老牌的讲得细的。

书籍推荐:《C++Prime第五版》,虽然有些地方跳得厉害,但真啃下来收获大。

学习建议:别老盯着语法转,基础打牢就行。
比如函数重载、类模板这些,初学别怕绕。
我当时学的时候,一周啃两章,配合视频看,一个月差不多过一遍基础。

二、C++1 1 及进阶
书籍推荐:《深入理解C++1 1 :C++1 1 新特性解析与应用》、《EffectiveModernC++》、《modernC++tutorials》。

视频推荐:侯捷老师的C++视频,特别是关于C++1 1 的。

学习建议:智能指针、lambda表达式这些新玩意儿,现在项目里用得溜。
比如auto关键字,写代码方便多了。
内存管理这块儿得下功夫,STL源码可以看看,不用全懂,但关键流程得清楚。
我是在学完基础后,花了两个月补这块儿的,真的有用。

三、操作系统与计算机系统基础
书籍推荐:《深入理解计算机系统》、《程序员的自我修养-链接、装载》、《操作系统精髓与设计原理第8 版》。

学习建议:进程、线程、内存管理这些,得真懂。
比如进程的创建、销毁,内存的分配、回收,这些在实际项目中老用。
计算机系统这块儿,数据表示、处理器架构这些,别怕枯燥,基础不牢,后面全白搭。
我是在大三下学期系统学的,花了三个月。

四、Linux系统编程
书籍推荐:《UNIX环境高级编程》(APUE)、《UNIX网络编程》(UNP)。

视频推荐:B站上“Linux网络编程”系列,找更新的。

学习建议:文件I/O、进程控制这些,得会。
网络编程这块儿,TCP/UDP协议、套接字编程,现在后端哪能离得开。
我是在学完操作系统后,直接上手写小项目练手的,比如做一个简单的聊天器,边学边写,效果不错。

五、后端开发基础
书籍推荐:《Linux高性能服务器编程》。

开源项目:Muduo及Muduo讲解视频。

学习建议:I/O多路复用、事件驱动这些,得懂。
Muduo这块儿,源码可以看看,不用全会,但关键流程得清楚。
我是在学完Linux编程后,跟着Muduo的例子写的,一个月差不多能上手。

六、后端进阶与RPC
RPC框架:jsonrpc、brpc。

序列化协议:protobuf、json、xml。

学习建议:RPC这块儿,得懂工作原理。
比如jsonrpc、brpc这些,选一个学学。
序列化协议也得会,protobuf现在用得广。
我是在做项目时才真正接触RPC的,当时项目要求用jsonrpc,就抽时间学了,两周吧。

七、Redis源码学习
书籍推荐:《Redis设计与实现》、《Redis5 设计与源码分析》。

网址:Redis中文指令参考、Redis指令官网。

学习建议:Redis的服务器设计、数据结构这些,得懂。
源码这块儿,分布式设计这些,可以看看,不用全会,但关键流程得清楚。
我是在学完数据库后,直接上手写小项目练手的,比如做一个简单的缓存系统,边学边写,效果不错。

八、数据结构与算法
书籍推荐:《算法》。

视频:清华大学邓俊辉老师的《数据结构与算法》、左神老师的针对性视频。

刷题平台:Leetcode、剑指Offer。

学习建议:链表、树、图这些,得会。
排序、搜索这些算法也得懂。
我是在准备面试时,每天刷两道题,一个月刷了1 00多道,效果挺明显的。

九、计算机网络
书籍推荐:《TCP/IP卷一》。

学习建议:协议栈、数据传输这些,得懂。
TCP/IP协议族的关键技术和应用场景也得了解。
我是在学完操作系统后,直接上手读这本书的,花了两个月。

十、工具与技能
构建工具:cmake。

调试工具:gdb。

版本控制:git。

学习建议:cmake得会,现在项目里用得广。
gdb得会,调试能力得强。
git得会,代码管理得利索。
我是在学完Linux编程后,直接上手用这些工具的,边学边用,效果不错。

十一、最后几点建议
学会使用markdown记录笔记,有助于整理学习内容和思路。

创建github账号并更新项目,展示自己的学习成果和项目经验。

持续学习并补齐基础,技术发展快,得不断学。

以上就是我给你捋的学习路线,具体点,希望能帮到你。