[IT技术] 女生嵌入式软件开发,快六年,越来越没有精力去做,工作没有任何成就感,快迷失自己了,求问知友何去何从?

[复制链接]
czp820401 发表于 2023-10-4 19:58:57|来自:北京 | 显示全部楼层 |阅读模式
女生嵌入式软件开发,快六年,越来越没有精力去做,工作没有任何成就感,快迷失自己了,求问知友何去何从?
全部回复5 显示全部楼层
renshen 发表于 2023-10-4 19:59:32|来自:北京 | 显示全部楼层
看到了题主的问题,其实这个问题何尝不是很多软件开发人员的困惑呢。至少我自己如此。
不知道题主和各位知友意识到没有,在任何公司,个人永远就是一枚螺丝钉的角色。公司的平台越大,工作细分粒度越细的时候,螺丝钉的感觉就特别明显和突出。毕竟,任何公司都是以盈利为目的的团体,而非为了满足个人的兴趣和发展。所以就我个人的经历而言,当你在某个技术领域或者细分点有一定的经历和经验后,你会发现公司以后的新产品基本这个部分的开发依然都是你的活。说的有点空,给题主说个自己的经历。
前面的很多回答中,我都提到自己毕业后就加入了华为,从事嵌入式底层驱动软件开发工作。从最开始几十万行的代码维护,到后面参与新平台的研发,其实一直都在围绕我最熟悉的几块业务单元:CPU相关的驱动(Cache,MMU,Memory),各类定时器,各类锁(Spinlock,rwLock)和DMA功能。哪怕后面我参与了多个项目,用了很多款ARM主控芯片,依然都是在负责CPU驱动,定时器,锁和DMA。从公司的角度看,这么做无可厚非,毕竟你是这块最熟悉的人,换了新的芯片和平台哪怕操作系统,但是你上手肯定是最快的。算个经济账,合算的很。但从咱们员工个人看,日复一日的接触Cache的一二级概念,写透等操作;天天闭着眼睛都能念出定时器在各个平台的实现原理;睡觉都能想到自旋锁的代码,真的无趣,也会感觉工作没有任何新鲜感和挑战性


这也许就是题主提到的越来越没有精力,也没有成就感的主要原因。毕竟熟悉的东西,不需要太多投入就能产出,公司喜欢看到,但是个人的确没啥太多价值体现。这样的恶行循环后果就是;个人的技能栈越来越单一,越来越迷茫。尤其互联网上天天喊着“程序员35岁天花板”“搞软件的35岁以后怎么办”等等无疑更加加重迷失自己的目标。
和题主分享一下当时我的一些办法,希望能够给题主一些思路。当年我所在的团队已经意识到很多人技术栈单一的问题,一旦遇到新的大项目很难尽快转变。所以得益于当时团队领导的支持,只要你想去承担新的模块,一般都会乐意支持你。所以,在维护原有代码基础上,我又申请开发新的模块,如板级通信协议开发,linux操作系统相关开发(用户态编程)。同时积极转变思维,抓住机会往PL管理方向靠拢。虽然最后还是离开了华为,但是很多基础的技能栈都是当年在那个时候积累下来的,毕竟有压力有动力。
所以说题主可以考虑一下

  • 申请承担一部分新的开发工作,丰富自己的技能栈;
  • 六年的时间,其实也可以考虑往管理,测试,质量和SE方向靠拢,看看公司是否这方面的机会;
  • 也可以看看外面的机会,是否有能更好的岗位机会和发展空间(对比下薪酬福利和劳动强度,未来发展等因素,毕竟一个程序猿的技术生涯能有几个六年)
  • 自主自学一些相关的技能栈知识,为后续1-3进行积累。
后记:
其实对于程序员来说,什么是成就感?解决一个技术问题,通过自己努力构建越来越高的个人技术壁垒体现个人价值等等,都可以让一个程序员越来越有信心和热情。
以上建议,仅代表个人观点,仅供题主参考。不喜勿喷。
wsb000763 发表于 2023-10-4 20:00:04|来自:北京 | 显示全部楼层
有一个前女同事,在公司做的是FPGA,做了三年之后改行了,她当时离职的原因是FPGA太累了,加班多,而且开发环境不好(调试产品时散热风扇的声音,示波器、频谱仪的散热风扇的声音),最后她自学了产品,去互联网公司做了产品经理,听说在产品岗做的挺不错的。
我换过几个公司,遇到的女工程师总共不到5个,有硬件、DSP、FPGA、系统工程师,总之女工程师在嵌入式行业确实不多,嵌入式行业相比互联网确实性价比不高。
一个高级示波器和频谱仪大几十斤的重量,开发好的整机可能也有几十斤,光是搬运这些东西都不太友好,如果作为乙方,项目进度紧张,通宵排查问题是常有的事……
这个行业改变了我的命运(找到了现阶段自己喜欢的方向),但是如果你觉得不太适合,提早准备,或换方向或提高层次,总之都是有办法的。
最后,祝好运。
<hr/>以前写的嵌入式工程师的一天(现在已经比这个还过分了,906、907模式)
嵌入式软件工程师的一天该不该放弃嵌入式,单片机这条路?
tombbb 发表于 2023-10-4 20:00:23|来自:北京 | 显示全部楼层
题主怎么知道我原来做嵌入式开发,现已经差不多转行,做纯上层应用软件列发,后端。
说说我对嵌入式的看法,如果是做纯linux应用开发,还好,涉及全是linux,也不需要接触底层,也不要接触驱动,这算是高端嵌入式工程师,基本是大公司需求。
但是你要是做单片机又偶尔涉及点linux,一般公司要求你做全栈,硬件,layout,测试,软件乱七八糟的,几乎重复性工作特别多,如果要是做纯软件单片机开发,不得不了解各类cpu寄存器,最坑的是由于c的特性,代码复用率极低,换一款mcu换个平台就得把以前干过的重复再干一遍,成就感极低,工作重复性极高,如果要不是在某行有很深的行业功底或算法功底,可替代性太高。
我干了七年,最后发现除了会嵌入式基本开发,对比工作两年那时的我,没有很大的优势,除了上直持有的linux这方面技术栈。
现在转后端,有现成的轮子,也自己写轮子,写业务就不需要干重复的事,重复的轮子人家写好了,只要用,只要稍微研究下就行了。 换平台也不担心,纯上层,不需要重新写。
———————强加分隔线————————
我直接简化我上面说的话:

  • 搞linux嵌入式方向,直接往深里搞。
  • 搞单片机,往算法,图像识别,控制策略,协议层等高端层面,走大公司。
  • 普通小公司单片机几乎是个打杂的,趁早学好知识体系跑路吧。
  • 学好linux,永不会后悔系列建议。
欢迎来github交流,本人github账号,目前主攻go,次攻嵌入式c。
https://github.com/thinkgos
乌拉乌拉 发表于 2023-10-4 20:00:53|来自:北京 | 显示全部楼层
题主怎么知道我也是做嵌入式软件开发,也是快六年了。。。
上周提辞职,跟领导谈了两天两夜,最后决定暂时不辞了 >_<
有时候确实心很累,做的东西很杂,Linux、单片机、编程、测试,BSP 驱动移植啥的,听起来很厉害,但是大部分都是修修改改,工作上学不到太多东西,没有成就感,越来越厌倦工作了,所以导致积极性下降,天天上班迟到......
于是我跟领导摊牌,我说我想做啥、不想做啥。还好领导比较开明,他说:“工作产品改动不大,工作内容重复是比较枯燥,公司有公司的考虑,不能动不动就换技术方案。你可以有自己的兴趣爱好,可以学习自己想学的东西,公司只要求你在公司的八个小时里好好完成工作任务。要分清主次,公司给了你还不错的工资,你就要帮公司做事,做完事有了钱你才能发展个人兴趣爱好......”
我想也确实是,作为一个农村家庭出来的孩子,得在先大城市找到立足之本,所以打工还是要继续打工的。但是,千万不要忘记自己的目的。我们最终的目的都是为了让生活变得更好,让人生更自在!
回到问题上,我是这么调整的:
①、对过往的经历复盘,好好规划未来,树立清晰的目标;
②、主动寻找成就感,比如做自己喜欢的DIY产品、参加开源项目;
③、扩大圈子,可以是技术社区、读书会等等,多与他人交流,尤其是行业前辈;
④、业余时间注重发展一些个人兴趣,甚至发展副业,当副业的收入超过主业,自然就可以切换;
⑤、定期与家人朋友聊天、游玩,增加生活乐趣。

<a data-draft-node="block" data-draft-type="link-card" href="http://link.zhihu.com/?target=https%3A//getiot.tech" data-image="http://pic4.zhimg.com/v2-1e61b613328a5e02f8f9b1b20fc65a87.jpg" data-image-width="500" data-image-height="500" class=" wrap external" target="_blank" rel="nofollow noreferrer">人人都懂物联网 - 万物互联,你我同在!
Eric_H 发表于 2023-10-4 20:01:18|来自:北京 | 显示全部楼层
嵌入式开发是一项入门偏困难,但软件结构并不复杂的开发技术。因为硬件和软件皆有不确定性,调试起来有一定难度,需要互相佐证,确定一端而排除另一端的问题,有时相当的耗费时间。如果你有浓厚的兴趣,那么自然会去深入理解很多嵌入式相关的问题,比如编译原理,操作系统,微处理器,计算机体系结构等等,这些也是帮助你解决各种嵌入式开发中问题的不二法宝。但如果看到这个就觉得枯燥,那么赶紧换方向,及时止损,毕竟,人生没有几个六年。

快速回帖

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则