《从小白到合格硬件工程师》
序章
自2011年从学校毕业,至今已有近六个年头。从当年的技术小白到现在高级硬件攻城狮(数字硬件),过程一波三折,有坑、有泪、有干货。写此文记录一下当年成长的进击史,也期望能对他人有一定的启发借鉴意义。
职业发展史
本科阶段:某985工科院校,自动化专业
航空研究所:航空领域,发送机控制方向,嵌入式软件工程师
XX电气科技公司:电力仪器仪表,测试仪器仪表方向,硬件工程师,FPGA逻辑工程师,产品经理
休整期:思考职业发展方向
XX创业-微小企业:电力仪器仪表,偏传统电力行业新创公司,硬件工程师,项目管理,售前技术支持,公司运营管理,产品战略规划
仔细总结一下整个职业生涯,突然发现经历的事情还蛮多。纯从技术水平层面来说,那些从事高精尖产品(无人机,服务器,多通道高清视频采集卡,等等)研发的硬件大牛,仍是我仰视大神。由初级的蜂鸣器驱动电路设计到现在整机方案的整体把关,由刚开始对示波器都操作不熟悉到现在各类辅助测试设备了如指掌,由初期对线路板绘制工具都不熟练到现在辅助设计工具运用炉火纯青,由开始的只想踏上产品设计道路到现在逐渐向管理转型,这个一个个过往的阶段离不开常年累月的积累以及不断地学习提高。
一、道士下山,初入江湖
本科学习的是自动化专业,作为纯自动化专业的一枚“工科男”,课业大部分都是学习纯理论课程。诸如《高等数学》、《线性代数》、《计算方法》、《复变函数》、《积分变换》,等等。专业性的课程《自动控制原理》、《液压控制》等等。与电直接相关的课程仅有《模拟电路》、《数字电路》、《微机原理》、《电路理论基础》。编程语言相关《VB编程》、《C语言基础》。刚毕业的时候一直无法理解学那么多数学知识还有电路理论对未来工作什么作用。直到现在才明白,这些理论就是未来核心内功心法,非常重要。非常重要!非常重要!(重要事情说三遍)这些理论真正决定了设计水平的段位。理论在手,天下可有!
大四下学期开始校招投简历,因学校背景原因,校招时候进了系统内的航空研究所(那时家长要求进国企,没有去大华为,当时要是选择去华为也许人生境遇会完全不一样)。研究所招聘时并没有分具体的岗位,等到正式入职时候才对新入职员工分具体部门岗位。8月份去研究所报到时候,才得知自己被分派到了软件部门,主要是嵌入式软件开发方面工作。
刚到部门时,那是一万个不愿意。卧槽,说好的硬件部门呢?说好的电路板呢?说好的示波器呢?当时我的内心是崩溃的。不过现在看来,真心感谢在研究所的几个月时间,在研究所的4个月时间,让我完成了从学生开始向职业人的转变。在这的几个月,我也第一次接触了大型工程项目的管理模式。也非常感激人生第一个”师傅“,引导自己怎样真正开始做产品开发。虽然当时对软件开发很不感冒,出于一贯责任心,仍是很认真去学习嵌入式开发的相关技术知识。
第一次的小任务是研发小组组长布置的任务,学习PowerPC的开发流程。PowerPC搭载的操作系统是Vxworks。当时我还是一个刚出校门的小白,哪懂这些嵌入式操作系统。而且学校学习的知识都是偏向于理论,实际工程技术就一点点计算机基础。没办法,虽然一头懵逼,还是要硬着头皮学啊。还好有师傅指引,他告诉我:先从简单的工程认知开始,了解整个系统的基本运作,再去学习具体的开发细节。当时仍是一头雾水,这说的啥是啥。秉着”认真专研的精神“(当时其实是压根不知道咋选书),在亚马逊购买了几本关于嵌入式操作系统的书《嵌入式实时操作系统原理》、《uC/OS-II 嵌入式实时操作系统》、《MPC554开发》。从这几本书中,开始了解了时间片、调度、线程、中断、实时性的概念。看了这几本书,对如何真正开始嵌入式开发仍然是两眼一抹黑。好在有师傅指导。
师傅布置了一个任务,将原来开发的一个UART串口通信移植到新平台上。在这个过程中他详细给我讲述并且演示了整个开发的过程。并指导使用了如何在编译器上建立工程、编入源代码、仿真、生产执行文件、运行、调试的整个过程。在这个过程中开始了解到,工程开发是由基本需求确定、实施、测试、完善几个步骤构成。一个可正常执行的程序并不是一次就能完成,是由一个个往复修正的步骤构成。
在研究所工作期间,每日的工作记录,每周的周会是少不了的。工程师的任务由组长在管理系统中分派任务,工程师根据分派任务每日执行,同时每天需要在系统中提交工作日志。每周周五,项目组会对当周的工作进行小结,并由里程碑节点规划下周的工作计划。在这整个的过程中,对项目管理有了一个基本认知。在项目管理上的这点认知,对自己职业生涯造成了非常深远的影响。从这里开始,我意识到一个工程项目由众多工程师合力开发,需要整体规划统筹,才能保质保量及时交付产品。成就一个成功的产品,不再是像学校完成作业或是兴趣小组练习,要从需求、立项、计划、执行、反馈、修正、执行这样一个动态调整过程去安排进程。在这段时间也接触了代码规范化,接口封装、程序注释、版本管理,等等规范性做法。开始启蒙了优秀产品,离不开规范管理的意识。
软件部待了三个月后,仍是对硬件设计念念不忘。后来直接找到人力资源部的老大,跟他详谈期望调去硬件工程部做硬件设计。然后经历了将近3周时间的沟通,仍未果。毅然打算辞职,再去其他公司寻找硬件设计的职位。
这几个月的初入职场教会了自己几个重要事情:
1、规范化:职业化的基本素养是规范化。无论是图纸还是代码,都需要规范,规范化才能成就专业化。
2、管理:开始接触了管理流程。复杂工程需要合适的管理手段来管控,这样才能保证按时交付符合要求的产品。
3、多思考:问题是难免的,需要不断去学习,不断思考。通过多种手段去解决问题。
网友评论