芯片原厂的Linux驱动工程师与普通公司的Linux驱动工程师在岗位内容上确实存在一些差异,这些差异主要体现在他们的工作重点、技术需求以及经验要求等方面。
芯片支持主要负责根据自研芯片的逻辑架构,配合芯片逻辑设计,开发芯片驱动代码,确保芯片能够在服务器、存储和云计算等领域产品中使用。
高性能与可靠性充分理解芯片在产品的实际应用场景,提供高性能、高可靠、易维护的固件及SDK,与产品配合调测确保芯片产品化应用顺利落地。
硬件与软件结合除了熟悉Linux内核原理与实现、Linux系统或Android系统开发经验外,还需要对TCP/IP、ISCSI/RDMA/SCSI、NVMe、FC&FCoE等网络、存储相关协议有深入了解。
驱动框架与算法熟悉intel QAT驱动框架或Linux内核crypto驱动框架者优先,了解deflate等压缩算法或RAID相关算法也是加分项。
特定领域经验有3-5年驱动开发或测试经验,特别是在网络、处理器或存储 芯片及相关研发(微码、驱动开发)或测试背景(芯片及产品测试)经历者优先。
产品开发负责基于Linux系统嵌入式产品外设及接口驱动的开发,包括Linux驱动、Android平台驱动等。
系统优化与维护负责系统内核剪裁、代码性能的优化,分析并解决软件相关的问题,优化系统性能。
嵌入式系统开发熟悉Linux内核编程及Android底层驱动开发,能对其进行裁剪和配置。熟悉C/C++语言、嵌入式系统开发流程,以及常见的CPU体系架构(如ARM等)。
硬件与驱动熟悉熟悉常用设备驱动开发,对USB、以太网接口、SPI、I2C、CAN、音视频编解码接口驱动熟悉并有相关开发调试经验。
通用经验要求有3-5年嵌入式系统(Linux)软件开发经验,具备良好的编程习惯和独立 解决问题的能力。
芯片原厂的Linux驱动工程师更注重于芯片的支持和与硬件的紧密结合,而普通公司的Linux驱动工程师则更侧重于产品的开发和系统的优化。两者在技术需求和经验要求上也有所不同,芯片原厂更注重在特定领域(如网络、存储等)的经验和技术积累,而普通公司则更注重在嵌入式系统和驱动开发方面的通用经验。