一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣成為一名優(yōu)秀的嵌入式開發(fā)工程師

工程師人生 ? 來源:工程師吳畏 ? 2019-03-19 10:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

或許這樣的標(biāo)題,應(yīng)該是由像Linus或Greg KH這樣的大師級的高手才有資格寫的吧。但是作為我來說,也許我更想把這個標(biāo)題作為一個疑問句來使用,整理一下自己的認(rèn)識,用來勉勵自己,和大家一起努力實現(xiàn)這個目標(biāo)。認(rèn)識膚淺的地方,還請大家見諒。

從事嵌入式開發(fā)是當(dāng)下比較熱門的一個領(lǐng)域,做職業(yè)規(guī)劃的時候,比較清晰的是有三條路可以走:

C1、嵌入式軟件開發(fā)工程師

C2、嵌入式硬件開發(fā)工程師

C3、嵌入式驅(qū)動開發(fā)工程師。

其中

C1是計算機相關(guān)專業(yè)的同學(xué)可以選擇的,因為學(xué)習(xí)的課程相對偏軟,平時在PC上編程比較多,做軟件開發(fā)會相對輕松。

C2是學(xué)習(xí)電子電路的同學(xué)可以考慮,對模擬電路比較熟悉,可以設(shè)計出質(zhì)量好的電路板。

C3的難度比較大,需要同時熟悉軟件和硬件,真正的做到軟、硬相結(jié)合,搭建軟件和硬件互通的橋梁,當(dāng)然了在業(yè)界的待遇也是相對來說比較高的。

我們可以去一些招聘網(wǎng)站查看相關(guān)企業(yè)的崗位要求,這樣學(xué)習(xí)的時候就有了一個比較明確的目標(biāo)。今天看到一位前輩的博文,談究竟應(yīng)該如何成為優(yōu)秀的驅(qū)動開發(fā)工程師,很受鼓舞,在此與大家分享共勉。

何謂優(yōu)秀的驅(qū)動開發(fā)工程師

首先要定義,我所認(rèn)為的一個優(yōu)秀的驅(qū)動開發(fā)工程師,應(yīng)該具備什么樣的能力,這里列一下按照從易到難的順序,個人認(rèn)為應(yīng)該會有幾個方面的要求吧:

能夠獨立完成驅(qū)動的功能開發(fā)任務(wù)

能夠分析和優(yōu)化驅(qū)動的性能,針對特定硬件揚長避短

能夠充分了解模塊相關(guān)軟硬件能力、發(fā)展方向,輔助應(yīng)用工程師最大化利用硬件能力

能夠輔助硬件工程師規(guī)劃硬件設(shè)計,預(yù)防問題,謀求功能模塊的最佳方案

能夠協(xié)助定義系統(tǒng)架構(gòu),合理規(guī)劃軟硬件,謀求產(chǎn)品實現(xiàn)的最佳方案

作為一個驅(qū)動工程師,很多時候不是完全從頭開發(fā)一個完整的子系統(tǒng),而是針對特定硬件和平臺移植驅(qū)動,增加功能,解決Bug等等,如果從這方面外在的表現(xiàn)來看:

解決問題的境界,大概會有這么幾個階段:

不知道哪里存在BUG

不知道如何解決BUG

知道如何解決BUG

知道如何發(fā)現(xiàn)BUG

知道如何規(guī)劃BUG

知道如何發(fā)現(xiàn)BUG(而不是撞上BUG)其實并不簡單,需要你對系統(tǒng)有足夠的了解,能夠察覺可能出問題的地方。 而規(guī)劃Bug更難,需要你能對問題的輕重緩急做出準(zhǔn)確的判斷。沒有的完美的世界,只有適當(dāng)?shù)娜∩?,?guī)避和預(yù)防。

而從解決問題過程的角度來看,我認(rèn)可以分為幾個階段:

BUG發(fā)生 -》 大量跟蹤調(diào)試代碼 -》 終于發(fā)現(xiàn)并解決BUG

BUG發(fā)生 -》 理論推測可能原因 -》 迅速定位并解決BUG

閱讀代碼 -》 預(yù)測可能出現(xiàn)的BUG -》 證實并解決BUG

應(yīng)該具備怎樣的素質(zhì)

那么要達到上訴最佳境界,需要具備和發(fā)展哪些素質(zhì)和能力呢?

一、足夠的硬件知識

能看簡單的原理圖,能夠分析硬件異常的可能原因,能夠使用常見的硬件調(diào)試工具,我想這是做為優(yōu)秀的驅(qū)動工程師,區(qū)別與其它軟件工程師,所不可避免、必須具備的專業(yè)素質(zhì)。當(dāng)然取決于你具體從事的工作,對這方面的要求不盡相同。

對于驅(qū)動開發(fā)者來說,不了解所開發(fā)驅(qū)動外設(shè)的硬件原理和相關(guān)背景知識,也許很多時候,也能夠完成一些移植,修補的工作任務(wù),但這就好比無源之水,無根之木,我相信是很難走遠(yuǎn)的。

二、多多益善的操作系統(tǒng)知識

做驅(qū)動開發(fā),特別是純粹的外設(shè)的驅(qū)動移植工作,剛開始的時候,也許你并不需要了解很多操作系統(tǒng)本身的知識(像內(nèi)存管理,進程調(diào)度,鎖,各種內(nèi)核子系統(tǒng)的原理框架等等),也能順利完成手頭的一些工作。

但是,如果一但需要優(yōu)化驅(qū)動,需要完善軟件框架,或者是遇上疑難問題需要跟蹤解決,對操作系統(tǒng),內(nèi)核本身的了解,就體現(xiàn)出它的價值了。

對于Linux內(nèi)核驅(qū)動開發(fā)者,尤其如此,首先,代碼是完全開源的,你有條件去了解背后的運行機制,其次,Linux內(nèi)核和各個組成子系統(tǒng)總是在迅速的進化發(fā)展中,不進則退,你也有必要跟上時代發(fā)展的腳步。

三、強烈的好奇心,持續(xù)的熱情

如果驅(qū)動開發(fā)不僅僅是你的愛好,更是你養(yǎng)家糊口的途徑,我想,很多時候,你大概不會有機會專注于一兩個你最有經(jīng)驗的模塊的開發(fā)和維護。隨著能力的成長,勢必會要求你接觸和掌握越來越多的各式各樣的驅(qū)動模塊的開發(fā)。

對于這件事,包括我自己,有時候大概都會有如下幾種反應(yīng):

哇,原來的工作做太久了,太乏味了,很高興能做不同的工作。

???又要做別的模塊???我手頭的工作已經(jīng)太多了!

這個模塊沒意思,我不想做。

相信多數(shù)有志青年們都是第一種表現(xiàn)了,不過,有些時候,我發(fā)覺,很多人的這種熱情其實并不持久,一個新的模塊沒做多久,就再次厭倦了,是已經(jīng)爐火純青了么,未必,或許只是修改了幾個BUG以后不甚其煩。很多時候,我面試前來求職的工程師時,發(fā)現(xiàn)簡歷上這個也做過,那個也做過,但是一旦問到解決了什么問題,所做過的驅(qū)動,框架、流程、原理之類的問題的時候,就一問三不知了。

我覺得如果自己的目標(biāo)是優(yōu)秀,那么最起碼的標(biāo)準(zhǔn)應(yīng)該是對具體驅(qū)動模塊相關(guān)的子系統(tǒng)的整體工作流程,框架,具備足夠的好奇心,樂于去了解和學(xué)習(xí),而不僅僅是為了完成任務(wù)而工作,否則的話,很難積累下扎實的經(jīng)驗和技術(shù)。

四、清晰的邏輯思維能力

這一點,也許是個軟件開發(fā)人員都應(yīng)該具備吧,不過,做為驅(qū)動開發(fā)工程師來說,有時候,大多數(shù)情況下,工作的硬件環(huán)境并不是完美的,遇到問題需要分析判斷錯誤的原因是硬件問題還是驅(qū)動Bug,這時候,清晰的邏輯思維能力尤其重要。

五、良好的工作習(xí)慣

大多數(shù)人都不是天才,要成為優(yōu)秀的開發(fā)工程師,其一需要持續(xù)努力,其二需要時間積累經(jīng)驗,而這過程中,很重要的一點,就是要有良好的工作習(xí)慣。譬如,注意設(shè)計文檔的維護,對工作中遇到的問題的記錄,過往經(jīng)驗的及時記錄,適當(dāng)?shù)能浖_發(fā)流程等等。文檔工作,可能很多人很不愿意去做,它的確很花費時間。不過,唉。。。老啦,好記性不如爛筆頭啊 。當(dāng)然,其實設(shè)計文檔更多的是為你提供思考的機會,而過往經(jīng)驗的總結(jié),也可以起到和大家交流技術(shù),共同進步的目的。

六、英語

這個也是必須的啦,沒有辦法,郵件列表,技術(shù)文檔,社區(qū),精通英語肯定是很大的優(yōu)勢,做開源項目尤其如此。閱讀各種Spec標(biāo)準(zhǔn)文檔之類的速度還是很重要的。閱讀無障礙是一回事,能和母語一樣一目十行,那才爽呀,唉,人生苦短,效率啊!光讀文檔,就不知道要比老外多花多少時間。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5152

    文章

    19675

    瀏覽量

    317633
  • 工程師
    +關(guān)注

    關(guān)注

    59

    文章

    1590

    瀏覽量

    69500
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    嵌入式開發(fā)入門指南:從零開始學(xué)習(xí)嵌入式

    隨著物聯(lián)網(wǎng)、智能硬件的發(fā)展,嵌入式開發(fā)成為熱門技能之。以下將為初學(xué)者提供份詳細(xì)的嵌入式開發(fā)入門指南,涵蓋學(xué)習(xí)路徑、必備工具、推薦資源等內(nèi)容。 1.
    發(fā)表于 05-15 09:29

    如何成為一名合格的KaihongOS南向驅(qū)動開發(fā)工程師

    如何成為一名合格的南向驅(qū)動開發(fā)工程師 1. 我需要具備哪些方面的知識? KaihongOS南向適配的方向分為:驅(qū)動開發(fā)、內(nèi)核
    發(fā)表于 04-23 08:02

    如何成為一名合格的KaihongOS北向應(yīng)用開發(fā)工程師

    如何成為一名合格的北向應(yīng)用開發(fā)工程師 在快速發(fā)展的軟件開發(fā)領(lǐng)域,北向應(yīng)用開發(fā)
    發(fā)表于 04-23 06:46

    如何成為一名嵌入式軟件工程師?

    如何成為一名嵌入式軟件工程師? 01明確崗位的角色與定位 嵌入式軟件工程師主要負(fù)責(zé)
    發(fā)表于 04-15 14:37

    嵌入式開發(fā):高門檻的系統(tǒng)性工程與 996 的行業(yè)困局

    嵌入式開發(fā)的門檻,往往被培訓(xùn)機構(gòu)和表象所掩蓋。許多人誤以為 “用 C 語言寫個跑在 ARM 上的程序” 就是嵌入式,實則連皮毛都未觸及。真正的嵌入式開發(fā)是硬件與軟件深度融合的系統(tǒng)性工程
    的頭像 發(fā)表于 04-09 11:06 ?343次閱讀
    <b class='flag-5'>嵌入式開發(fā)</b>:高門檻的系統(tǒng)性<b class='flag-5'>工程</b>與 996 的行業(yè)困局

    嵌入式系統(tǒng)開發(fā)圣經(jīng)【干貨】

    主管、系統(tǒng)設(shè)計分析人員及欲進入該領(lǐng)域的工程師。是開發(fā)嵌入式系統(tǒng)產(chǎn)品必備的入門圣經(jīng),進入嵌入式系統(tǒng)領(lǐng)域的寶典??梢苑捶矗瑢W(xué)習(xí)
    發(fā)表于 03-12 13:58

    代碼+案例+生態(tài):武漢芯源半導(dǎo)體CW32嵌入式開發(fā)實戰(zhàn)正式出版

    尊敬的各位電子工程師、嵌入式開發(fā)愛好者們: 大家好!今天,我們懷著無比激動與自豪的心情,向大家宣布個重大喜訊——武漢芯源半導(dǎo)體的單片機CW32正式出書啦!《基于ARM Cortex-M0+
    發(fā)表于 03-03 15:14

    嵌入式軟件工程師就業(yè)好不好?

    嵌入式軟件工程師就業(yè)好不好?會不會越老越吃香?今天起來看看。 首先看下市場需求。 隨著物聯(lián)網(wǎng)、人工智能、5G等前沿技術(shù)的快速發(fā)展,嵌入式系統(tǒng)的應(yīng)用領(lǐng)域不斷擴大,從智能家居、汽車電子到
    發(fā)表于 02-20 10:19

    如何成為嵌入式開發(fā)工程師?

    ,參加相關(guān)的研討會和培訓(xùn)課程,閱讀專業(yè)書籍和論文。 9. 認(rèn)證和網(wǎng)絡(luò):- 考慮獲取相關(guān)認(rèn)證,這可以增加你的市場競爭力。- 加入專業(yè)組織和在線社區(qū),擴展你的人際網(wǎng)絡(luò)。 通過上述步驟的學(xué)習(xí)和實踐,你可以逐步成長為一名合格的嵌入式開發(fā)工程師
    發(fā)表于 02-19 10:39

    月薪 3 萬的嵌入式工程師都在用,串口屏到底神在哪?

    作為一名資深的嵌入式工程師,我深知在選擇硬件組件時,性能、可靠性、易用性和成本效益都是至關(guān)重要的考量因素。月薪3萬的嵌入式工程師們之所以傾向
    的頭像 發(fā)表于 02-12 10:33 ?666次閱讀
    月薪 3 萬的<b class='flag-5'>嵌入式</b><b class='flag-5'>工程師</b>都在用,串口屏到底神在哪?

    盤點工程師常用的嵌入式開發(fā)工具

    嵌入式開發(fā)涉及硬件與軟件的緊密結(jié)合,開發(fā)工具的選擇對效率和質(zhì)量至關(guān)重要。以下是嵌入式開發(fā)中常用的工具分類及代表性工具,涵蓋開發(fā)全流程: 1. 集成
    的頭像 發(fā)表于 02-07 10:06 ?2053次閱讀

    年薪30萬的嵌入式工程師,究竟需要掌握哪些技能?

    隨著智能硬件、物聯(lián)網(wǎng)、智能汽車、自動化控制等領(lǐng)域的迅速發(fā)展,嵌入式工程師的需求也水漲船高。尤其是在全球化和技術(shù)加速的時代,嵌入式開發(fā)不僅是個熱門行業(yè),還是跨學(xué)科技術(shù)與創(chuàng)新的交匯點。對
    的頭像 發(fā)表于 01-16 10:59 ?1262次閱讀
    年薪30萬的<b class='flag-5'>嵌入式</b><b class='flag-5'>工程師</b>,究竟需要掌握哪些技能?

    如何成為一名合格的北向應(yīng)用開發(fā)工程師

    在快速發(fā)展的軟件開發(fā)領(lǐng)域,北向應(yīng)用開發(fā)工程師個專注于系統(tǒng)級應(yīng)用開發(fā)的高需求職位。 以下是成為
    發(fā)表于 01-10 10:00

    為什么嵌入式驅(qū)動開發(fā)工程師可以拿高薪?

    技術(shù)領(lǐng)域具有不可替代的地位。 成為一名優(yōu)秀嵌入式驅(qū)動工程師只需要深耕以下幾點: 1)堅實的技術(shù)基礎(chǔ): 首先,需要有堅實的基礎(chǔ),包括計算機組成原理、微處理器與微控制器架構(gòu)以及電路設(shè)計
    發(fā)表于 01-07 16:56

    嵌入式工程師常用的開發(fā)工具有哪些?

    工具。 、集成開發(fā)環(huán)境(IDE) IDE是嵌入式開發(fā)的核心工具之。例如 Keil MDK,它支持多種微控制器架構(gòu),提供了強大的代碼編輯、編譯、調(diào)試功能。
    發(fā)表于 12-20 15:29