本人28歲,本科985電子信息工程,做了6年的汽車電器設計,不涉及電子開發

由於所在城市汽車行業寒冬,發不起工錢,想做回所學專業,有三個問題請教:

1、28歲脫產學習,大齡轉行,是否可行,需要多久?

2、入行是從51開始還是直接linux開始,51學個兩個月找工作然後再linux嗎?

3、我這種情況是不是做硬體沒有優勢,需要用軟體切入?

PS:本人有linux操作基礎,python基礎和通訊基礎


同是本科電子信息工程,做過無人機飛控開發,現在在愛立信做通信協議開發。

相比較於怎麼學我覺的應該是怎麼想,畢竟你基礎應該還是有的吧,這都是咱們專業的基礎課,很多說怎麼學的我覺的低估了985學生的學習能力。

你本身是985畢業,而且已經28,你能接受嵌入式入門的工資嗎?

普通的嵌入式開發崗位,例如單片機開發(51我基本都沒見過了,主流招聘就是32),要求的不會是32 的操作,那只是基礎的基礎,主要還是某個領域演算法的經驗。這個不是說學就學的,確實需要項目的推進學習,顯然你已經失去了這個條件。

當然還是說回Linux,這個其實和51關係不大,完全沒必要把這倆放一起學習,Linux主要的崗位一個是應用開發(涉及主要是C/C++,我現在的工作就算這一範疇),還一個就是底層驅動開發(主要是C語言),你目前會基本的操作可能還不是核心。

所以我的建議是不用花太多精力在單片機和Linux本身,而是放在C/C++和具體你想從事的領域的業務知識,python我主要是用來寫測試腳本,對於做嵌入式是可有可無的角色。這個學習的時間大概半年左右吧,因為很多XX班差不多都是4個月時間,你也可以根據這些課程的順序自學(自學肯定是比報班強)。


昨天忘了寫很重要的一個事情:

如果我重新回到28,29那個年紀,我選擇不入這行,去做生意,幹點小買賣,有可能發家致富了。

問我對你的建議:

還是那句話,明白自己想要什麼,適合什麼,這行不能大富大貴,但能豐衣足食,乾的好點,也能讓家人過個好日子。選好了,就幹。

---

說下自己經歷,我轉行的時候差不多也是28,29。以前說好聽點是移動通信工程師,難聽點是農民工,爬鐵搭,扛基站,半夜割接都幹過。覺得通信行業沒前途,所以轉行去搞嵌入式軟體。也是脫產學了半年。後來遇到華為擴招,進了華為,一直從事嵌入式軟體開發的工作。主要是linux+ARM,開發語言是C。混的也還行,從剛進去的13,6年升到了17,得過3連A。但是剛進去那半年是真痛苦,想過離職,還好遇到的師傅比較好,能夠給我分擔些壓力,同時自己也努力,熬過後,就一直順風順水了。一直做的是C語言的開發,不會Java,不會C++。得到過產品線老大的嘉獎。但是嵌入式工作越來越窄的感覺也越來越明顯。很渴望去搞互聯網。我自己的感覺是,嵌入式開發,很多時候是在填系統的坑,真正做業務的時候比較少。內存問題,崩潰問題,性能問題這些幾乎佔據了70%的時間。搞了7年,我現在去搞互聯網了,不會Java,不會C++,不會python這些,比較喫力。但是基本上來說,linux還是相通的。對系統的理解比其他人有優勢。

我的建議:

1,想好自己要什麼,不怕晚。至於說一開始的工資待遇不要糾結,先把自己能力提上去了,再來考慮這些。

2,51和linux,直接上linux。

3,你做過汽車方面的東西,其實比一個普通的應屆生對硬體的認識強多了。不要覺得以前的經歷沒有用,經歷和經驗會給很多幫助。


汽車行業也是有嵌入式需求的,像德企在國內大的有博世 大陸等等。

嵌入式要學得確實不少,c是最基本的,8位 32位 實時系統 linux, kernel ,驅動,各種協議,網路,到這時候差不多該用到c++了,還有各種行業特有的系統,框架,平臺,工具,模擬。

可以在小公司先做做那種大包大攬的項目,各方面知識差不多都學著用一遍,心中有數,但是技術發展很容易就到頭了,廣而不精。然後找個大公司,大公司一般會給你很好的培訓,有著嚴格優秀的開發流程,還有各種文檔和團隊協作方面的鍛煉,而且會讓你專精一個模塊,讓你精益求精做成專家,幹一段後 如果繼續走技術路線,你又面臨一個選擇,在大公司繼續做螺絲釘,專精一個方向做專家,這種工作一般會很安逸,但是也是如同溫水煮青蛙,另外一個選擇是再回頭去挑戰自己,這時候廣度深度都有一些了,獨當一面沒問題了,去找一個技術類的lead角色,或者架構,甚至自己找項目做,這時是最能體現價值的時期。

再往後我也不清楚了,我一個沿著這條路走的前輩後來是做到嵌入式的老家ARM去了。


剛才寫跑題了,做啥啥不晚,只要技術到位,C語言一定要OK,常用模塊一定要OK,解決問題OK,介面熟悉架構熟悉,硬體架構OK,就行,但是你說你轉嵌入式,嵌入式很少用python,你來做測試打雜不太可能會要呀,你做應用相比說28歲可能大了,我建議你去做無線通信哇,去做應用層,去看看紫光之類的,嵌入式這塊崗位並不多,就缺做這塊久的能解決問題的,和校招的有衝勁的趕緊把我架構學完的!

我這裡強調下語言是基礎,重中之重,解決問題就得看你的實際啦。

如果你要學習嵌入式,一定要喫透一個架構的一個方向,比如你做視頻,你就一定要先把硬體測試了沒問題,再繼續做驅動,驅動OK了再做API測試,API測試做了再移植的應用程序去測試,測試了再去改服務端,服務端測了再去改需求,任何一個小問題都不能放過,不懂就問,沒人解決就自己根據前一步驟一個個找原因,找到原因再尋求解決辦法,不知道原因就突然解決了的一定要深究,記住了後面可能還有更多問題,最好是去看代碼和文檔,一切可查。

做嵌入式就是兩個,一個是項目平臺的搭建,這個就主要是驅動部分的添加固件的更改需求的變化以及庫的移植,一個是項目落地後的整體測試和性能優化,這個就是看你的裁剪塊,看你對應用程序的掌握和需求的把控。但是一切都是語言,不管你是硬體語言還是過程對象都是看你的表達方式正確與否,底層支持與否,管他FPGA還是DSP,你只需要把你職責內的,你想要學的部分做好就可以了,多做多問多思考


你自己總結的挺好的

別做硬體,半路出家的,硬體很難學好,硬體需要更多的經驗和基礎支持,就是需要實操,沒有實操做硬體肯定做不來。

做嵌入式的話,可以從 51單片機開始,而且我建議一定畫時間學51,看看視頻也好。

後面就開始做操作系統相關的,RTOS或者Linux

現在主流是Linux ,學Linux應該是一個趨勢吧,現在嵌入式招聘基本都要求Linux 基礎。

哦,望了說明

嵌入式,C語言,一定要精通哈,不管是半路還不是半路,C語言不搞好,基本搞不定嵌入式。


推薦閱讀:
相關文章