嵌入式系統存在于成千上萬的產品中,熟練的嵌入式工程師需求量很大。今天分享一些成為一名成功的嵌入式工程師很重要的頂級技能。
一個嵌入式工程師需要具備哪些技能?
嵌入式工程師需要各種技術技能。這些包括計算機硬件和軟件以及C和C++等編程語言方面的專業知識。工程師還需要一定的軟技能,比如善于溝通和解決問題。
術語“嵌入式工程師”通常指“嵌入式軟件工程師”或“嵌入式系統工程師”這兩種工作所需的技能通常取決于工程師工作的產品和項目中的模塊。
嵌入式系統工程師是做什么的?
嵌入式系統工程師了解整個嵌入式系統。他們利用這些知識來集成嵌入式系統中的硬件和軟件。目標是確保整個系統和產品運行良好。在許多項目中,這些工程師還幫助開發嵌入式軟件。
嵌入式軟件工程師是做什么的?
嵌入式軟件工程師為嵌入式系統開發軟件。這些工程師對嵌入式系統及其局限性有一個大致的了解。工程師將確保軟件與系統一起工作。然而,嵌入式系統工程師非常熟悉系統的結構和局限性。
嵌入式軟件工程師的頂級技能
嵌入式軟件工程師和開發人員需要一系列的技術技能。他們應該對編程語言、設備驅動程序和實時操作系統有深刻的理解。以下是嵌入式軟件工程師需要的一些基本技能或他們應該具備專業知識的領域:C和C++編程、微控制器或MCU、微處理器、Linux操作系統、片上系統(SoC)級別的軟件優化技能、實時操作系統(RTOS)、設備驅動程序、理解設計模式和嵌入式、系統設計模式、調試技巧、能夠使用現有的代碼庫、中斷驅動設計、匯編編程語言、硬件測試設備:示波器和邏輯分析儀、有學習通信協議的經驗或能力(至少要了解的相關協議包括I2C、串行外設接口(SPI)、USB、通用輸入/輸出(GPIOs)、控制器局域網(CAN總線)、推薦標準232 (RS232)、單線、推薦標準485 (RS485));能夠閱讀原理圖、對物聯網和基于互聯網的技術有基本的了解、理解數據結構、Python編程語言、RISC-V指令集架構。
嵌入式系統工程師的頂級技能
嵌入式系統工程師應該在硬件和軟件方面都有經驗。工程師還應該熟悉最新的處理器和其他嵌入式系統工具。一般來說,嵌入式系統工程師應該擁有與嵌入式軟件工程師相似的技術技能。但是他們也應該有額外的技能。
類似于嵌入式軟件工程師應該具備的關鍵技能:微控制器或MCU、C和C++、實時操作系統(RTOS)、設備驅動程序包括Linux、Linux操作系統、通信協議、I2C和SPI等接口總線、通用輸入/輸出或GPIOs、微處理器技術包括最新的處理器。
嵌入式系統工程師應該具備的其他技能包括:硬件和軟件方面的豐富經驗、理解設計模式和嵌入式系統設計模式、GNU項目調試器包括本地和遠程調試、MATLAB編程語言和MATLAB建模(如果你的組織使用MATLAB)、設計模式、多處理器設計、多子系統問題、Python編程語言、開源軟件、無線連接包括Wi-Fi和藍牙低能耗(BLE)、統一建模語言。
適用于所有類型嵌入式工程師的頂級軟技能
嵌入式工程師還需要一系列非技術或“軟”技能來取得成功。關鍵的軟技能包括人際交往、溝通和團隊合作的能力。
以下是一些對嵌入式工程師有用的軟技能:解決紛爭、全面系統思維、用文字和圖形很好地交流、演繹邏輯、解決問題和創造新解決方案的能力、情商——與他人良好合作的能力、擅長團隊合作和與同事分享信息、網絡能力、積極參與社區討論和信息共享(尤其是與開源社區相關的)、了解如何研究和尋找系統開發和其他信息來推進工作、對項目管理有基本的了解、創造力、在舒適區之外學習的能力、耐心等等。
結語
嵌入式工程師將需要繼續磨練他們的技能,以跟上不斷發展的嵌入式趨勢。隨著他們的發展,他們需要學習新技術,并繼續掌握重要的“軟”技能。