嵌入式類崗位大致分為以下幾個類型:嵌入式軟件開發(fā)工程師、驅(qū)動工程師、系統(tǒng)軟件開發(fā)工程師、應(yīng)用軟件工程師、嵌入式測試工程師;還有一些:電子研發(fā)工程師、C/C++軟件工程師(嵌入式)、智能駕駛軟件工程師、機器人軟件工程師、硬件產(chǎn)品經(jīng)理等等。1.1. 嵌入式軟件開發(fā)工程師A公司崗位描述:1、負責設(shè)備軟件的設(shè)計和交付,包括單片機嵌入式開發(fā)、DSP嵌入式軟件開發(fā)、多線程多任務(wù)的動態(tài)調(diào)度、動態(tài)內(nèi)存管理等軟件關(guān)鍵技術(shù)研究;2、負責設(shè)備軟件研發(fā)及商用過程中的功能、性能、功耗、可靠性等問題的定位解決;3、負責設(shè)備軟件新技術(shù)的預研和產(chǎn)品實現(xiàn),提升產(chǎn)品優(yōu)勢;4、跟進行業(yè)新技術(shù)動態(tài),參與新技術(shù)的研究,并能引入到產(chǎn)品開發(fā)中。A公司任職要求:1、熟練掌握匯編/C/C++編程語言和基本的常用數(shù)據(jù)結(jié)構(gòu),了解操作系統(tǒng)原理;2、熟悉Linux系統(tǒng)編程,嵌入式系統(tǒng),ARM或單片機,RTOS實時操作系統(tǒng);3、熟悉HTTP/TCP/UDP等網(wǎng)絡(luò)協(xié)議,熟悉一種或以上接口協(xié)議優(yōu)佳,如:USB、UART、Ethernet、PCIE、EMMC、I2C、SPI等;4、有嵌入式系統(tǒng)或產(chǎn)品的開發(fā)項目經(jīng)驗優(yōu)先;小結(jié):嵌入式軟件開發(fā)工程師主要負責該部門嵌入式產(chǎn)品的研發(fā)工作,固件開發(fā),單元測試,代碼維護等,提升產(chǎn)品優(yōu)勢。很多公司都是大類嵌入式軟件開發(fā)工程師,而不進行驅(qū)動、系統(tǒng)、應(yīng)用工程師等區(qū)分。1.2. 驅(qū)動工程師B公司崗位描述:1、負責底層驅(qū)動及上層應(yīng)用的開發(fā)和調(diào)試,外設(shè)驅(qū)動的開發(fā)優(yōu)化工作,比如Camera、LCD、Sensor等;2、負責軟硬件結(jié)合新器件技術(shù)預研和開發(fā)工作;B公司任職要求:(與A公司要求相差不大)C芯片公司驅(qū)動崗位描述:1、設(shè)計和開發(fā)驅(qū)動程序(user mode, kernel mode, firmware etc),HAL/API,提供應(yīng)用程序庫的支持,提供包括內(nèi)存管理,任務(wù)管理,硬件資源管理等功能;2、建立驅(qū)動程序的開發(fā)環(huán)境,包括硅前和硅后測試和調(diào)試環(huán)境,以及相關(guān)驅(qū)動程序測試工具;3、與硬件工程師和軟件工程師協(xié)調(diào)提供解決平臺中出現(xiàn)的問題。C芯片公司任職要求:1、精通C/C++編程,有Linux編程經(jīng)驗者優(yōu)先;2、熟悉計算機體系構(gòu)架,算法設(shè)計等;3、具備CUDA/OpenCL/GPU shader programming知識和經(jīng)驗者優(yōu)先;4、有較強學習新知識的能力;具備較強的溝通能力。小結(jié):驅(qū)動工程師主要是編寫和移植各種芯片驅(qū)動,優(yōu)化硬件設(shè)備驅(qū)動,一般驅(qū)動工程師指Linux上的驅(qū)動開發(fā)工程師,所以需要精通Linux驅(qū)動框架,結(jié)合芯片本身去編寫驅(qū)動,所以芯片公司招聘嵌入式相關(guān)的崗位一般是驅(qū)動工程師。1.3. 系統(tǒng)軟件開發(fā)工程師D公司崗位描述:1、參與soc軟件開發(fā),包括soc bring up軟件開發(fā)、IP驅(qū)動軟件開發(fā)、bootloader軟件開發(fā)、操作系統(tǒng)移植等;2、參與soc 軟件、硬件系統(tǒng)驗證;3、參與板級外設(shè)驅(qū)動軟件開發(fā)與調(diào)試;4、參與soc BSP 、soc SDK 軟件開發(fā)、軟件測試。D公司任職要求: (與A公司要求相差不大)小結(jié):系統(tǒng)軟件開發(fā)工程師主要是編寫固件,需要熟悉整個操作系統(tǒng)組成與調(diào)度,對固件的穩(wěn)定性高求很高,是驅(qū)動和應(yīng)用的基礎(chǔ)。1.4. 應(yīng)用軟件工程師E公司崗位描述:1、負責嵌入式系統(tǒng)的搭建與維護,熟悉芯片驅(qū)動、嵌入式OS、SD接口定義;2、負責軟件系統(tǒng)的跨芯片移植(如:NXP系列、STM32系列);3、負責系統(tǒng)集成以及調(diào)試工作;4、負責進行嵌入式軟件系統(tǒng)的應(yīng)用開發(fā)、優(yōu)化。E公司任職要求: (與A公司要求相差不大)小結(jié):應(yīng)用軟件工程師主要是編寫業(yè)務(wù)邏輯程序,調(diào)用驅(qū)動工程師提供的接口控制設(shè)備,軟件開發(fā)過程所涉內(nèi)容范圍非常廣,主要使用C語言開發(fā),但經(jīng)常會涉及其它語言、數(shù)據(jù)庫、前端后臺、各種通訊協(xié)議等。1.5. 嵌入式測試工程師F公司崗位描述:1、負責嵌入式項目功能測試、性能測試、SDK測試或者自動化測試;2、根據(jù)產(chǎn)品需求制定測試方案、設(shè)計測試用例,搭建測試環(huán)境;3、依據(jù)測試用例完成產(chǎn)品的功能測試、硬件指標測試等,記錄測試結(jié)果,報告與跟蹤產(chǎn)品缺陷,并協(xié)助研發(fā)人員進行缺陷定位與重現(xiàn);4、編寫測試報告,根據(jù)測試結(jié)果評估軟件質(zhì)量;5、進行測試總結(jié),編寫測試相關(guān)文檔,對測試中存在的問題及時分析與解決,并提出改進建議E公司任職要求:1、有嵌入式軟件開發(fā)的經(jīng)驗優(yōu)先;2、有腳本語言(如python/shell)的使用經(jīng)驗;3、有Linux下的自動測試和測試開發(fā)的經(jīng)驗;4、熟悉嵌入式調(diào)試技術(shù)及工具;5、具備良好的溝通表達能力,良好的分析解決問題的能力;剩余的大佬面經(jīng)總結(jié)了 鏈接在下邊 http://daxprogram.com