硬件是什么?硬件工程师是干嘛的?其实很多人都可能好奇这个问题,今天就借题主地方分享下我的看法。
1、什么是硬件。
狭义来说,一般我们所说的软件和硬件指的是电子领域的。
软件代码也是人编写的,我们所熟知的语言比如C、C++等都是通过编译器翻译成汇编语言,然后汇编语言通过汇编器翻译成二进制机器语言,机器语言操控门电路完成相应的动作。个人觉得,没有硬件,软件就没有存在的意义,硬件是一切的基础,这里可以看出硬件设计是多重要。
但软件和硬件又有明显的区分,至少工作内容区别很大。按照行业内描述硬件属于底层(一般称为底层硬件),软件称为上层(软件又分为:底层驱动、上层业务以及应用层等)。如果非要举个例子来说明软件和硬件, 那最好的例子就是人,硬件指人的躯体,而软件指人的思维。
2、什么是硬件设计
一般来说硬件设计指的是电路设计,这样说是没问题的,因为你所有的工作都是围绕电路设计,最终的目标也是产出一个优秀的电路,能够满足各种要求,经历各种考验。但实际上我们要求的是产品,而不是单板。
网上有一篇文章讲的挺好:"硬件设计就是根据产品经理的需求PRS(Product Requirement Specification),在COGS(Cost of Goods Sale)的要求下,利用目前业界成熟的芯片方案或者技术,在规定时间内完成硬件产品,而且要符合以下要求:PRS功能(Function)、性能(perrformance)、电源设计(power Supply)、功耗(power Consumption)、散热(Thermal/Cooling)噪音(Noise)、信号完整性(Signal Integrity)、电磁辐射(EMC/EMI)、安规(Safet)、器件采购(Component Sourcing)、可靠性(Reliability)、可测试性(DFT: design for test)、可生产性(DFM:design for manufacture)
详细了解硬件设计开发的伙伴可以看这里,刚毕业的时候就是在这里学习硬件相关知识,对初学者来说收益很大,适合刚入职场的各位~~
硬件工程师必看
3、什么是硬件工程师
硬件工程师负责整个产品的硬件设计
硬件产品的研发团队可以如上图所示,在整个项目研发团队中,有两个人和所有人打交道,一个就是项目经理,另一个就是硬件工程师。硬件工程师需要和各种研发人员打交道 、协调工作,这也要求硬件工程师具有丰富的知识面和强大的协调能力。
硬件工程师的本职工作,如下图所示:
硬件工程师可以大致分为如下四个阶段:
o 初级硬件工程师
在别人的指导下完成阶段三、四的部分,这个是应届毕业生入职三个月基本可以达到。
o 普通的硬件工程师
独立完成阶段三、四的工作,一般工作1到2年即可。
o 资深的硬件工程师
主导完成阶段三、四的工作,参与完成阶段二总体设计的工作。
o 专家级硬件工程师
主导完成阶段一、二的工作。
作为一个硬件工程师,负责整个产品的研发过程。所以必须对每个时间段进行精确把握。项目都会有项目周期,虽然项目经理在把控时间,但具体的操作还是硬件工程师来搞。
4、硬件工程师需要的工作能力
硬件工程师的目标是产品零缺陷。
在这个过程中,需要设计电路、解BUG、部门沟通交流,各方面能力都需要提高。
关于硬件工程师基本素质与技术,在这里给出华为硬件工程师手册中的定位,如下图所示。
最后就是硬件工程师的自我修养:
沟通能力强、性格温和、谦虚谨慎 、认真仔细 、要有耐心 、不会就问 、有责任心、分清主次、乐善好学。
从上面可以看到硬件工程师不是我们认为的一个纯技术型岗位,更多的是还需要跨部门沟通,团队协作,所以说一个人的力量是有限的,一群人的力量是无限的,和不同的同行业交流可以学习更多的知识。
硬件工程师必看