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

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+说明文档,让你迅速进阶成高手

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

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/807222.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实用工具系列-ADB使用方式

作者持续关注 WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(WPS二次开发QQ群:250325397),摸鱼吹牛嗨起来&#xff0…

睿尔曼超轻量仿人机械臂之在ROS里引用正逆解函数库

一、机械臂运动学正逆解说明 机械臂运动学就是根据未端执行器与所选参考坐标系之间的几何关系,确定末端执行器的空间位置和姿态与各关节变量之间的数学关系。包括正运动学 (Forward Kinematics)和逆运动学 (Inverse Kinematics)两部分。 机械臂运动分为关节空间运…

访问网站时IP被阻止?解决方法

相信许多人都曾遭遇过IP禁令的困扰:比如在尝试访问社交媒体、搜索引擎或电子商务网站时,突然发现自己被限制了访问权限;又或是自己的账号在毫无预兆的情况下被封禁。这些网络上的种种限制使得IP被封成为了一个常见的问题,让我们无…

Unity 中画线

前言: 在Unity项目中,调试和可视化是开发过程中不可或缺的部分。其中,绘制线条是一种常见的手段,可以用于在Scene场景和Game视图中进行调试和展示。本篇博客将为你介绍多种不同的绘制线条方法,帮助你轻松应对各种调试…

Csharp_pta2

C#实验1-2 7-1 C# 1.6 求孪生素数 编写控制台应用程序,查找一个用户输入的正整数区间中的孪生素数(孪生素数就是指相差2的素数对)。 输入格式: 用户在一行中输入两个正整数,中间用一个空格间隔。 输出格式: 如果第二个数小于…

数据可视化-ECharts Html项目实战(11)

在之前的文章中,我们学习了如何在ECharts中特殊图表的双y图以及自定义形状词云图。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。 数据可视化-ECh…

JAVA学习-深入研究容器.选择接口的不同实现

Java集合框架提供了多个接口,每个接口都有不同的实现类,以满足不同的需求。以下是几个常用接口及其不同的实现类的概述: 1. List接口: - 特点: 有序集合,允许重复元素。 - 实现类: ArrayList…

35-3 使用dnslog探测fastjson漏洞

一、DNSLog 原理 DNSLog是一种记录在DNS上的域名相关信息的机制,类似于日志文件,记录了对域名或IP的访问信息。了解多级域名的概念对理解DNSLog至关重要。因特网采用树状结构的命名方法,按照组织结构划分域,每个域都是名字空间中被管理的一个划分,可以进一步划分为子域。域…

如何通过子网掩码来计算IP的地址范围

通过子网掩码计算IP地址范围是一个基本的网络技能,它允许你确定一个给定网络的可用IP地址。以下是详细的步骤和计算方法: 1. 理解子网掩码 子网掩码是32位的二进制数,用来决定IP地址中哪些部分是网络地址,哪些部分是主机地址。子…

Java数据结构二叉树

概念 一棵二叉树是结点的一个有限集合,该集合: 1. 或者为空 2. 或者是由一个根节点加上两棵别称为左子树和右子树的二叉树组成。 从上图可以看出: 1. 二叉树不存在度大于2的结点 2. 二叉树的子树有左右之分,次序不能颠倒&#x…

医疗器械FDA | 常见的网络安全材料发补问题都有哪些?

FDA网络安全资料发补咨询点此​​获取https://work.weixin.qq.com/ca/cawcde5ee29d239046 ————————--- 01 安全文档编写问题 FDA网络安全文档编写格式、内容、可读性等未满足官方要求,则将可能被要求发补整改编写后的文档。 02 安全管理问题 a. 网络安…

富格林:远离虚假谨记可信盈利技巧

富格林悉知,想要做好黄金投资远离虚假受害陷阱,就需提前学习研判和揭秘可信的盈利出金的方法,只有做好未雨绸缪才是盈利出金的最好保障。那么需掌握哪些可信盈利技巧呢?以下总结几点可信做单建议和技巧,一起看看吧。 遵…

【机器学习】K-means聚类算法:原理、应用与优化

一、引言 1、简述聚类分析的重要性及其在机器学习中的应用 聚类分析,作为机器学习领域中的一种无监督学习方法,在数据探索与知识发现过程中扮演着举足轻重的角色。它能够在没有先验知识或标签信息的情况下,通过挖掘数据中的内在结构和规律&a…

深度学习学习日记4.7

1.梯度下降 w 新 w旧 - 学习率梯度 训练的目的就是让 loss 减小 2.前向传播进行预测, 反向传播进行训练(每一个参数通过梯度下降进行更新参数),(1前向传播 2求 loss 3反向传播 4梯度更新) 能够让损失下降的参数,就是更好的参数。 损失…

数据分析-数据清洗8大类方法|数据采集|电商数据API接口

数据分析首先我们需要坐数据采集 jd API 接入说明 API地址: 调用示例: 参数说明 通用参数说明 url说明 ……/平台/API类型/ 平台:淘宝,京东等, API类型:[item_search,item_get,item_search_shop等]version:API版本key:调用key,…

阿里云微调chatglm3-6b---只有一个python解释器但gradio要求版本不兼容怎么办

安装LLAMA参考博文http://t.csdnimg.cn/6yYwG 在用LLAMA微调大模型的时候总是出现connected error out并且出现这样的界面 这是由于LLMA所要求的gradio版本>4.0.0,<4.2.0&#xff0c;然而chatglm3-6b要求的gradio版本需要gradio3.39.0才能显示出web_demo_gradio.py渲染…

C++反向迭代器的实现

一、反向迭代器的定义 在容器中从尾元素向首元素反向移动的迭代器 对于反向迭代器&#xff0c;递增和递减的含义会颠倒过来 递增一个反向迭代器会移动到前一个元素 递减一个迭代器会移动到下一个元素 二、反向迭代器的实现 // 适配器 -- 复用 template<class Iterator,…

Weblogic任意文件上传漏洞(CVE-2018-2894)漏洞复现(基于vulhub)

&#x1f36c; 博主介绍&#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 hacker-routing &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【应急响应】 【Java、PHP】 【VulnHub靶场复现】【面试分析】 &#x1f389;点赞➕评论➕收…

数据库安全(二),3天拿到网易网络安全岗offer

数据脱敏厂家 国外&#xff1a;Informatica国内&#xff1a;比特信安、美创、安华、神州数码 由于敏感数据的重要性以及特殊性&#xff0c;一般不建议使用国外产品。 数据库漏扫 又叫数据库安全评估系统 漏扫对象 DBMS脆弱点&#xff1a;已知的DBMS自身存在的漏洞弱口令缺…

力扣HOT100 - 160. 相交链表

解题思路&#xff1a; /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) {* val x;* next null;* }* }*/ public class Solution {public ListNode getIntersectionNode(ListNode headA, ListNode headB) {if…