我的单片机转嵌入式Linux之路:一位大佬的完美转变!

别频繁跳槽

首先需要强调的是:能不跳槽就不跳槽,跳槽的成本极大。以下分享个人经历:

毕业两年,我最后悔的事情就是在找工作这一块欠缺考虑了,导致需要频繁跳槽。

本科毕业,一手还不错的牌被浪输了(电赛3个省一、一等奖学金、三好学生、校优秀实习生等),基础不够扎实也没好好准备,错过了秋招,去不了心仪大厂,春招将就去了一家国企。一年后发现情况不妙(软件岗,竟没代码可写),感觉自己不但没有进步,反而对一些东西感到陌生了,警醒之下裸辞。

后来,急需一份养家糊口的工作,来深圳面试了两家公司之后草率入职了一家芯片+产品公司(其中芯片研发是新业务),当时想着经验不足怕找不到好的,也没经济来源了,先安定下来学点东西积累点经验,之后实在不行再做打算。干了几个月之后,感觉不对劲,怎么与我想象中的不一样,前期还能做点应用,后面逐渐变成测试工程师???很糟心。只能业余时间自己学习提高一下。

当时刚来深还不稳定,等到年后3、4月份再做打算。没想到遇到了疫情,一拖就拖到了七月份才敢换工作。这一次,很谨慎,没敢轻易做选择,做了很多对比与调研,总算找到一份还可以的工作。

初入社会,频繁跳槽的成本很大,特别是在不不同行业之间来回跳,就没法很好地积累行业经验。我觉得毕业三年内能不跳就不要跳,可以允许有 1 次给自己试错的机会,像我这样第跳两次就有点冒险了,三思而后行。

前两份工作找的不顺心我的总结如下:

(1)校招没有好好准备。校招是一个很难得的机会,还在校的小伙伴要好好珍惜,该刷的题还是要刷;

(2)面试经验不足。前两次找工作面试得都太少了,导致没有更多的信息来做决策,草率选择。

一步一个脚印

借一张图:

来源(公众号:嵌入式Linux)

这张图描述了单片机转到Linux的两条路子。一条是初学单片机之后直接跳到Linux;另一条是单片机->多任务->RTOS->Linux。我走的是第二条路子,无论是工作、还是业余学习,都是这么一步一步地走过来的。现在,终于走到了嵌入式Linux。

单片机与嵌入式Linux大家肯定都有所了解了,做嵌入式Linux最好的机会我觉得是应届毕业的时候。

单片机与嵌入式Linux算是两个细分方向,毕业之后,再想单片机往嵌入式Linux转,那也是个不小的跨度。搞了一段时间单片机之后,再去找嵌入式Linux相关的岗位,人家有 n 种理由拒绝你,别问我怎么知道。。。

这里给想从单片机转嵌入式Linux的一些小伙伴做一些分享:

单片机也好好搞着,嵌入式Linux也好好学着。机会总是留给有准备的人。Linux我是业余时间自己学的,观看我公号的一些老读者应该知道,我大概在三月份的时候买了一块韦老师的板子,当时是跟着板子的资料学的,花了一段时间基本学完了当时资料的内容(现在追加更新了很多),也做了一些总结笔记。

虽然我是倾向于往应用方向发展,但是我同样对其它方面感兴趣,有些广度是必要的,可以加深我们对整体地理解。

然后找工作的时候我的想法是:两方面都投,能找到嵌入式Linux的更好,实在不行的话再找回单片机相关的工作应该问题不大,只要找准行业那也很香的,这一点后面再讨论。

找工作的时候,对于我们这种之前只搞过单片机的,投那种全是嵌入式Linux的要求的岗位,难度还是比较大的。但是那种擦边的(岗位要求多与单片机相关的,但是有那么一条:熟悉Linux更佳),机会很大,多找这种擦边球。

我就是找了这样一个擦边球的岗位,岗位要求STM32+RTOS、Linux。面试的时候也全都问道了。但我到里面是做Linux相关的,没让我做单片机,出乎意料也正合我意。Linux虽然还只是入门阶段,但门槛总算进去了,之后再慢慢补回去。

找准发力点

刚毕业,我们更多地可能是追求技术上的成长,比如学STM32、学嵌入式Linux。因为我是做业务/应用开发的,所以我从应用这方面来做说明,其它岗位可能不太适用。我们需要明确的是,从做产品的角度,STM32、嵌入式Linux这些都是工具,只会使用工具,我们的价值可能还没那么大。比如做消费类电子,怎么设计我们的功能/应用/业务逻辑,用户体验才会更好。

做应用,是最接近产品需求的,需要多考虑产品相关的方面,而这方面是可以积累的,这就是经验积累。毕业前三年,我们可能靠面试的时候做几个题就可以找到一份工作,随着工作经验的增加,之后再找工作的时候面试问的可能就是问产品经验了。

比如一个很牛的做音频产品的应用开发工程师转去做一些工业类的应用可能也做不好。所以我们可以找准一个发力点,一直深耕,积累行业经验,这个经验后来是可以换钱的。所以,哪怕我们只会STM32,如果我们能找到一个很有前途的行业,进行深耕,那也是很香的。

给小伙伴们一点建议

如果可以重来,我一定读个研究生,然后搞算法相关的,算法两个字现在很值钱。前几天,我前公司的一位辞职去读研究生的朋友问我怎么选择方向。他说搞ROS、搞算法太难了,要不要转去搞嵌入式、搞JAVA。我给他的建议是:能搞算法方面就搞算法方面,实在不行再做回嵌入式也可以,做JAVA的话跨度有点大,有点冒险,牺牲有点多,付出得更多。

最后,做为当代打工人,我们打拼奋斗的终极目标,就是为了有更好的生活质量。因此,在工作之余,处理好自己的生活节奏,在合适的年纪,做合适的事情。在还自由的时间,尽量能游山玩水,多增长下见识。等到你的生活有了牵绊,那个时候出去游玩的成本就会增加。

不要本末倒置,把工作占据了生活的全部。做技术的很容易把工作带入生活。导致自己没有了烟火气息,失去了生活的乐趣。我们不能一直宅在家里,要多跑动,多沟通,建立一定的朋友圈,以及不局限自己的职业范围,可以交一些各行各业的人,来增加生活的层次,避免太过闭塞。享受生活,才是你的终极目标。

综上,就是我的一点经验分享和一些走心的建议,希望你能有所收获,有所思考,有所行动。


1.从嵌入式角度分析“可解释性”对人工智能的影响!

2.【MCU】寄存器、标准库、HAL库、LL库,这么多库!你叫我怎么选?

3.用Linux开发嵌入式项目拢共分几步?

4.程序本身如何知道自身大小?这是鸡生蛋还是蛋生鸡的问题!

5.国产集成开发环境助力国产RISC-V打破国外巨头在芯片技术上的垄断

6.做嵌入式开发时,你是怎么实现LCD显示的?

免责声明:本文系网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容。

猜你喜欢

转载自blog.csdn.net/DP29syM41zyGndVF/article/details/109974691