1.1 崗位職責
a)負責嵌入式操作系統Linux(重點)、RTOS、其他國產嵌入式操作系統基于ARM架構的適配與移植,包括但不限于引導程序(Bootloader)開發(fā)、內核編譯與配置。
b)負責嵌入式操作系統下的板級外設接口驅動開發(fā)、調試與移植;負責分析并解決產品過程中出現的驅動問題。
c)負責基于嵌入式操作系統的應用程序開發(fā):參與完成配置項級軟件需求分析和方案設計;負責完成獨立軟件模塊詳細設計及代碼實現;負責完成軟件模塊單元測試。
d)負責設計測試用例(單元測試、集成測試),并執(zhí)行單元測試、集成測試計劃;使用 SVN 做版本管理,配合持續(xù)集成
e)負責編寫和維護相關的技術文檔,確保代碼質量和項目進度。
1.2 任職能力
a)計算機、電子、自動化等相關專業(yè)本科及以上學歷。
b)2年以上嵌入式軟件開發(fā)經驗,精通C/C++語言,具備良好的編程習慣和代碼風格。
c)熟練掌握ARM架構,具備ARM系列芯片(如Cortex-A/R/M系列)的開發(fā)經驗。
d)熟悉U-Boot、Linux Kernel的定制與優(yōu)化。
e)熟練掌握Linux或實時操作系統的移植與應用開發(fā),深入理解其工作原理。
f)具備豐富的驅動開發(fā)和調試經驗,能夠獨立完成常見外設驅動的開發(fā)與移植:主要接口包括低速:I2C、UART、SPI、GPIO、SDIO;高速:PCIE、SRIO等;通用外設包括:DDR、SSD、EMMC、SD卡、FLASH、網卡、溫度傳感器;專用外設包括:鎖相環(huán)、射頻組件等;其他類驅動包括:DMA、中斷、時鐘、cahce等。
g)具備linux應用程序開發(fā)及調試經驗,包括 熟練掌握linux應用程序開發(fā)基礎技能:多進程/多線程應用開發(fā)、同步處理、資源互斥處理、內存管理、文件系統操作、中斷、時鐘等;
h)熟悉常用的開發(fā)調試工具,如JTAG/SWD、示波器、邏輯分析儀等。 具備良好的溝通能力和團隊協作精神,能獨立分析并解決問題。