为什么学生很难真正学好嵌入式?

10几年前,我是读电气工程专业,学了很多东西,结构,电机、绘图,plc等等..

其实,都没什么鸟用,出来还是像个废物。

后面我自学转了单片机开发,说句难听点,自己买个开发板都比在学校学得深。

可能是这个专业的问题,主攻不是嵌入式方向,老师用汇编点个流水灯,这门课就算是合格了。

不知道现在是用什么语言教的,反正注定是跟不上时代发展的,课程体系的建立,并非易事,都是以年为单位。

所以,如果你现在还是学生,还是指望自己吧。

否则,哪怕你是本科学历,毕业以后可能还没有技校生好就业。

所以,为什么学生很难真正学好嵌入式?

答案很明显了,学校学得太浅了,哪怕参加个电赛拿了奖,面对工作都够呛。

我第一份工作时,维护公司老产品,看到代码,头都炸了,那段时间,至少贡献了整个职业生涯10%的头发量。

从一个啥也不懂,到能改代码,再到能独立开发部分项目,再到能够设计程序架构,没个5年以上的沉淀,很难做到。

并不是说这个技术,有多复杂,我觉得主要还是环境的问题。

拿我举例。

刚开始那一年,基本就是修修改改别人的屎山代码,给客户定制功能,有时看别人代码,还不如自己写快,先要熟悉功能,再揣摩上一任工程师的实现思路,最后分析代码实现方法,整个过程,跟破案似的。

后来跳槽,又到了一家做类似小家电的公司,刚开始很爽,很有成就感,因为两点。

第一,整个项目的代码,从头到尾都是自己写,不用再看别人的

第二,这种项目正好是自己能力的临界点,就是大概知道怎么做,但又没做过。

慢慢地,也没啥意思了。

做个1年时间,滚瓜烂熟了,接下来就是各种搬砖的体力活,学不到东西。

而且,这种产品太抠成本,利润又薄,工资也冲不上去。

这种产品,没太高技术含量,竞争力很大一部分是拼供应链。

站在工程师学技术的角度,这种产品只适合刚入行时做跳板。

不要说学生了,哪怕是在一线做研发的工程师,如果一直碰不到好项目,也不一定能学好嵌入式

所以,我做了一年左右,就跳槽了,找了一家做车载产品的。

这家公司主要用ARM内核的国产单片机。

之前都是用51单片机比较多,产品功能也不熟,大多数东西都没接触过,所以压力还是挺大的,怕过不了试用期。

做嵌入式开发,最怕的不是碰到没接触过的东西,而是找不到资料。

这个项目就是这样,好在,用的单片机还不算冷门,我先是自掏腰包,在某宝买了对应型号的开发板,主要看上了配套资料多。

我想,能搞定一个环节是一个环节,至少到时候领导问起来,不会一点进步都没,进度慢无所谓,态度要端正,要想方设法对得起这份工资。

后来我顺利转正了,不过做了几个月就跑了。

怎么说呢,感觉研发,市场,都是分开的两个外包团队,没什么归属感。

后面还真被我猜对了,老大带着整个研发团队"出轨"了。

我也借此跑路,说离职时,我以为老大会爽快答应。

让我意外的是,平时跟他打招呼,都不爱理我的领导,竟然想加工资留我。

后面,我才知道,是软件组长,偷偷说了我的好话,说我为完成公司的产品,经常自掏腰包学习。

光这点,就吊打了很多工程师。

那几个月,我还是学到了不少东西,比如GPS、雷达、菜单.....算是职业生涯第一个比较复杂的产品了,遗憾的是,还是修修改改,没有从0到1完整做一个产品的机会,所以能学到的东西也有限。

真正让我成长最大的,是后面又跳槽到一家做智能家居的公司。

公司很小,我进去的时候,软件部就我一个人,这下,没人跟我抢了,哈哈。

他们之前是贸易公司,想转研发生产销售一体,我是第一批员工,后来研发部也发展到6-8个人。

为什么我在这家公司提升最大?

我觉得有两个原因:

第一,自己能从0到1,独立完成整个项目的工作。

第二,项目有一定的复杂度。

第一款产品,我做了大概2个月,比较简单。

第二款产品,从0到小批量试产,做了1年左右,边摸索边做。

也是从那以后,我才真正领悟到为什么c语言的灵魂是指针,程序架构,模块化编程到底是怎么个事。

所以,怎样才能以比较快的速度学好嵌入式?

我觉得,如果工作一直做比较简单的产品,提升并不大,哪怕做5年。

我们学员里,有做了开发4年,5年,甚至10年的,就是这个原因,附上3个最近的案例。

所以学好嵌入式,本质上,不是工作经验决定的,而是项目数量和质量决定的,数量决定速度,质量决定高度。


最近很多粉丝问我单片机怎么学,我根据自己从业十年经验,累积耗时一个月,精心整理一份「单

片机最佳学习路径+单片机入门到高级教程+工具包」全部无偿分享给铁粉!!!

除此以外,再含泪分享我压箱底的22个热门开源项目,包含源码+原理图+PCB+说明文档,让你迅速进阶成高手

教程资料包和详细的学习路径可以看我下面这篇文章的开头

单片机入门到高级开挂学习路径(附教程+工具)

单片机入门到高级开挂学习路径(附教程+工具)

单片机入门到高级开挂学习路径(附教程+工具)

相关推荐

  1. Rust为什么这么

    2024-04-11 20:28:09       73 阅读
  2. fpga和还是嵌入?

    2024-04-11 20:28:09       57 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-11 20:28:09       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-11 20:28:09       100 阅读
  3. 在Django里面运行非项目文件

    2024-04-11 20:28:09       82 阅读
  4. Python语言-面向对象

    2024-04-11 20:28:09       91 阅读

热门阅读

  1. 如何用C++判断一个系统是16位、32位还是64位?

    2024-04-11 20:28:09       38 阅读
  2. 何为C++中的协变

    2024-04-11 20:28:09       40 阅读
  3. MySQL中 not in 和 not exists 区别

    2024-04-11 20:28:09       38 阅读
  4. 分布式任务调度:架构、原理与实践

    2024-04-11 20:28:09       37 阅读
  5. 常见分类算法

    2024-04-11 20:28:09       31 阅读
  6. 【无标题】

    2024-04-11 20:28:09       23 阅读
  7. 中科软面试题

    2024-04-11 20:28:09       29 阅读
  8. 常见的正则表达式

    2024-04-11 20:28:09       38 阅读
  9. 牛客周赛39

    2024-04-11 20:28:09       34 阅读
  10. Cmake学习笔记3

    2024-04-11 20:28:09       41 阅读
  11. Nginx 调优面试题

    2024-04-11 20:28:09       29 阅读