|
嵌入式算法工程師需要學什么_嵌入式軟件開發(fā)的優(yōu)缺點淺談,
從事嵌入式軟件開發(fā)的好處是:
1 目前國內(nèi)外這方面的人都很稀缺。
一方面,是因為這一領(lǐng)域入門門檻較高,不僅要懂較底層軟件(例如操作系統(tǒng)級、驅(qū)動程序級軟件),對軟件專業(yè)水平要求較高(嵌入式系統(tǒng)對軟件設計的時間和空間效率要求較高),而且必須懂得硬件的工作原理,所以非專業(yè)IT人員很難切入這一領(lǐng)域;
另一方面,是因為這一領(lǐng)域較新,目前發(fā)展太快,很多軟硬件技術(shù)出現(xiàn)時間不長或正在出現(xiàn)(如ARM處理器、嵌入式操作系統(tǒng)、MPEG技術(shù)、無線通信協(xié)議等),掌握這些新技術(shù)的人當然很找。嵌入式人才稀缺,身價自然就高,越有經(jīng)驗價格就越高。其實嵌入式人才稀少,根本原因可能是大多數(shù)人無條件接觸,這需要相應的嵌入式開發(fā)板和軟件,另外需要有經(jīng)驗的人進行指導開發(fā)流程。
與企業(yè)計算等應用軟件不同,嵌入式領(lǐng)域人才的工作強度通常低一些(但收入不低)。
搞企業(yè)應用軟件的IT企業(yè),這個用戶的系統(tǒng)搞完了,又得去搞下一個用戶的,而且每個用戶的需求和完成時間都得按客戶要求改變,往往疲于奔命,重復勞動。相比而言,搞嵌入式系統(tǒng)的公司,都有自己的產(chǎn)品計劃,按自己的節(jié)奏行事。所開發(fā)的產(chǎn)品通常是通用的,不會因客戶的不同而修改。一個產(chǎn)品型號開發(fā)完了,往往有較長一段空閑時間(或只是對軟件進行一些小修補),有時間進行充電和休整。
另外,從事嵌入式軟件的每個人工作范圍相對狹窄,所涉及的專業(yè)技術(shù)范圍就是那些(ARM、RTOS、MPEG、802.11等),時間長了這些東西會越搞越有經(jīng)驗,賣賣老本,幾句指導也夠讓那些初入道者琢磨半年的。若搞應用軟件,可能下一個客戶要換成一個完全不同的軟件開發(fā)平臺,那就苦了。
哪天若想創(chuàng)業(yè),搞自已的產(chǎn)品,那么嵌入式是一個不錯的主意,這可不像應用軟件那樣容易被盜版。
木學院有一個叫啟明星的公司開發(fā)出一個好象叫“工程e”的掌上PDA(南校區(qū)門口有廣告),施工技術(shù)人員用該PDA可當場進行土木概預算和其它土木計算,據(jù)說銷路特好。我認識的某大學老師,他開發(fā)的飯館用的點菜PDA(WinCE平臺,可無線連網(wǎng)和上網(wǎng)),據(jù)他說銷路不錯,飯館點點PDA讓客戶點菜,多顯派頭檔次。我記得00級2+2班當年有一組同學在學Windows程序設計課程時用VC++設計了一個功能很強的點菜系統(tǒng)做為課程項目,當時真想建議他們將這個軟件做成PDA,估計會有些銷路(上海火車站南廣場的Macdonald便使用很漂亮的PDA給用戶點食品,像摸像樣的)。這些PDA的硬件設計一般都是請其它公司給訂做(這叫“貼牌”:OEM),都是通用的硬件,我們只管設計軟件就變成自己的產(chǎn)品了。
從事嵌入式軟件開發(fā)的缺點是:
(1) 入門起點較高,所用到的技術(shù)往往都有一定難度,若軟硬件基礎不好,特別是操作系統(tǒng)級軟件功底不深,則可能不適于此行。
(2) 這方面的企業(yè)數(shù)量要遠少于企業(yè)計算類企業(yè)。特別是從事嵌入式的小企業(yè)數(shù)量較多(小企業(yè)要搞自己的產(chǎn)品創(chuàng)業(yè)),知名大公司較少(搞嵌入式的大公司主要有 Intel、Motorola、TI、Philip、Samsung、Sony、Futjtum、Bell-Alcatel、意法半導體、 Microtek、研華、華為、中興通信、上廣電等制造類企業(yè))。這些企業(yè)的習慣思維方式是到電子、通信等偏硬專業(yè)找人。由于我院以前畢業(yè)生以企業(yè)計算為 主,所以我院與這些企業(yè)聯(lián)系相對較少。我院正積極努力,目前已與其中部分公司建立了聯(lián)系,爭取今后能有我院同學到這些企業(yè)中實習或就業(yè)。
(3)有少數(shù)公司經(jīng)常要碩士以上的人搞嵌入式,主要是基于嵌入式的難度。但大多數(shù)公司也并無此要求,只要有經(jīng)驗即可。
我院同學若學習嵌入式,顯然應偏重于嵌入式軟件,特別是嵌入式操作系統(tǒng)方面,應是我們的強項。對于搞嵌入式軟件的人,最重要的技術(shù)顯然是(實際上很多公司的招聘廣告上就是這樣寫的):
(1) 掌握主流嵌入式微處理器的結(jié)構(gòu)與原理
(2) 必須掌握一個嵌入式操作系統(tǒng)
(3) 必須熟悉嵌入式軟件開發(fā)流程并至少做過一個嵌入式軟件項目。 |
|