该不该放弃嵌入式,单片机这条路?
知乎提问:
本人,一个毕业工作两年在深圳工作的菜鸟单片机工程师。
说说这两年来自己的一些看法。
个人语言表述能力较差,加之经验不足,望见谅。
1.程序编写
1.1对架构能力要求较高。比如做一个自动售卖咖啡机,在开始写之前要对整体有一个很好的框架,各种状态机的切换等等
1.2 对编程技术的要求。我在接手过很多老员工留下来的代码,我觉得写的真的很烂,一座屎山,包括我写的也是。程序耦合很高,不好移植。
2.技术更新迭代
2.1不止芯片,也有新技术,根本学不过来。
3.各种算法
3.1比如滤波的,FIR,EFK等,电机的,无感FOC等。很多很多,极大考验数学,电路,等理论及综合应用能力
感觉快撑不下去了,有没有老铁指教,多谢!!!
1
工作10年了。
如果我有两辆车,一辆马自达、一辆特斯拉、有一天我要出去见个朋友,那我会优先选择开特斯拉而不是马自达,很自然,特斯拉开起来会比较酷。
但是,如果我没有马自达、也没有特斯拉、只有一辆自行车、你让我放弃自行车走路。
你这不是脑子有问题吗?
放弃嵌入式也是一样
你有没有其他更好的机会,你有把握进入更好的、更赚钱的领域吗?
如果没有,我觉得一技之长永远比吹牛逼来得实际。
嵌入式一技之长对很多人来说是非常不错的职业选择,保证有一份基本的薪水,如果自己脑子想的比较透彻的话,学习一些大平台的技术知识,参考其他的答案,35~50W是比较容易实现的。
提问中提到的代码耦合问题
讲真,嵌入式是一个大杂烩,里面的人太多了,什么水平的人都有,这就是为什么建议大家去大企业,去大公司,去学习大公司的规范,编码规则,如果完成代码的模块化,怎么给自己的代码写测试程序等等。
有的人可以靠嵌入式赚钱,而且生活过得非常好,有的人每年都在换工作,每年都有20%~30%的薪资涨幅,但是还是觉得很担心,还是没有好的生活。
我认为嵌入式和酒店里的厨师差不多,厨师需要记住每一个菜品的配料,需要掌握火候,需要对顾客的口感负责。而嵌入式也是一样,需要知道每一个产品的软件硬件架构,需要去写代码实现功能,需要对产品负责,最终也是为了服务用户。
但是嵌入式不应该只是大杂烩,大杂烩的原因可能是因为请不起更多的人,小饭店的老板因为支出有限,需要一个厨师完成所有菜品的制作,但是厨师的精力也有限,不可能面面俱到记住所有的菜谱,如果以前擅长川菜,那粤菜可能就是弱项。
嵌入式也是一样,如果你是做高通平台的开发,你又要从事单片机、MTK平台、上位机软件、生产跟进、zigbee,wifi、ble、Lora、NB-IOT、4G/5G等等开发,势必让你在某个方面做得不好,基于这样的问题,成熟的企业需要配置不同的人员在不同的岗位上。
相应的就会有,安卓系统组、低功耗组、协议开发组、上位机开发组、不同的小组完成不同的事情,如果是安卓系统组,里面可能需要不同的人跟进不同的平台方案,这样才可能一个人或者几个人持续在一件事情上有积累。
而算法,一直都比较重要的,如果没有专门的人对算法有研究,而是让一个工程师网上copy一个代码下来,然后就用上去了,可能解决了当前的问题,至于公司技术积累的帮助是非常少的。
总结下
嵌入式是大杂烩不假,但是嵌入式不仅仅是大杂烩,还是在大杂烩里面不断修炼的精华,那些才是我们需要深入的方向。
2