資深嵌入式碼農(nóng)是怎么煉成的
橫看成嶺側成峰,遠近高低各不同。不識廬山真面目,只緣身在此山中。
當我們孜孜于日常生活的茍且,忙碌于手頭工作的瑣碎,就會像那流連忘返,反而不知廬山真面目的游客一樣,很難跳脫出來,體會到生命的真諦、工作的價值以及存在的意義。
這不,近日,我司一位入職不到一年的小菜鳥慕名找到我,向我咨詢起如何練就嵌入式編程****時,整日埋頭于瑣碎的編代碼、寫文檔和調程序工作的灑家,突然感覺到一股來自靈魂深處的暴擊,唉,只顧埋頭趕路,哪有時間抬頭看頭頂?shù)姆毙悄兀?/span>
隨即,一聲無聲的嘆息在我心底慢慢升起:
我還是我,但怎么就成了顏色不一樣的煙火?
看著菜鳥膠原蛋白滿滿的臉龐,帶著回憶往昔的惆悵,灑家字斟句酌,腆著老臉給他講了三大要點。
1、精氣神都說三百六十行,行行出狀元??墒?,狀元郎騎大馬,高處座,卻永遠只有一個。
遍觀當下,各行各業(yè),按照能力、收入、水平,也都分個三六九等,就像金字塔一樣。上面的吃肉,中間的喝湯,下面的只能。。。關燈吃面。
正所謂,有人在高樓,有人在深溝,有人光芒萬丈,有人一身銹。
在嵌入式碼農(nóng)這個行當里,有的人,年輕時是個小菜鳥,上了年紀成了個老菜鳥,而有的人,卻烏雞變鳳凰,成了別人眼中的大神。
那些年輕的碼農(nóng)怎么就慢慢地嶄露了頭角,具備了高手的風采了呢?
灑家想,最首要的,這類人有一股子精氣神,不蒸饅頭爭口氣,反正就是要出人頭地。
普通人千千萬,寫代碼的萬萬千,可我一定要登上金字塔尖!雖然優(yōu)秀的人永遠都只是少數(shù),但追求優(yōu)秀和杰出是每個碼農(nóng)都應該具有的一種精神和職業(yè)素養(yǎng)。
至于那些老菜鳥,套用一句時髦的話:并不是現(xiàn)在的老工程師變菜了,而是菜鳥變老了。
2、吃得苦中苦灑家年屆不惑,入坑小二十載,回望來時路,有樂也有苦。
一路走來,坎坎坷坷,往事涌上心頭,悲喜恍如昨。
講真,要做一名出色的嵌入式碼農(nóng),絕非易事,尤其對我等天資平庸之輩,更是如此。
因為,軟件是一門綜合性的學科,“是人類有史以來最為復雜的系統(tǒng)之一”。從軟件自身的特點,從軟件人員苦逼的職業(yè)生涯來看,軟件工程師注定要比其他工種的技術人員付出更多的努力,留下更多的汗水,他們必須要具備長時間的持續(xù)學習能力,及時更新好不容易建立起來的知識庫,以保持與不斷快速變化的設計技術的同步,同時,還要在本行之外,關注更多的業(yè)務層面的邏輯和機制,從而保證項目的順利實施。
做為碼農(nóng)這個大家庭之一的嵌入式軟件人員,需要學習的東西就更多了:微機原理、操作系統(tǒng)、GUI、軟件工程、設計模式、需求分析、自動代碼生成、版本控制、架構設計、功能安全、編程規(guī)范、開發(fā)環(huán)境。。。
總之,您啥都得會,得是個全才。
哥哥說:“說好了一輩子,差一年、一個月、一天、一個時辰,都不算一輩子?!睘⒓艺f:“說好了都得會,差一門、一科、一個知識點,就不算都會!”
所以,您必須做好長時間吃苦的心理準備。當碼農(nóng)不想吃苦,不如回家賣紅薯!
同時,樹立起對自身工作價值的高度認同感。根據(jù)業(yè)界共識,在嵌入式產(chǎn)品設計中,軟件設計日益起到決定產(chǎn)品成敗的關鍵性作用,它的工作量可以占到整個產(chǎn)品設計工作量的80%。
瞧瞧,十有其八,多有成就感。
當然了,干了80%的活,怎么就只多拿個十塊八塊的呢?因為,孟老夫子早就說過:不患寡而患不均。
所謂“均”,虛偽的西方世界倒是經(jīng)常宣揚人人生來平等。但是,鐵一般的事實卻告訴我們:人生并不平等。
就像現(xiàn)在疫情封控,很多公司都拿到了政府的紓困補貼,進了唯恐資產(chǎn)縮水的老板們的腰包,但是打零工的靈活就業(yè)者們卻無處領救濟。就連圣經(jīng)里也說:
凡有的,還要給他,叫他豐足有余;凡沒有的,就連他有的,也要取去。
所以,就像Jack Ma把996當福報一樣,立志提升自身編碼水平的菜鳥們,權且把默默吃苦、多勞少得當成一種福報吧。
誰的人生不是在坎坷中奔跑,在挫折里涅槃,在日復一日的努力中漸漸破繭成蝶,在一次次的感悟里趨向與自我的和解呢?
努力加班,讓別人掙錢,不可以么?倘若工作多年,還沉浸在比別人干活多但掙錢不多的哀怨里,豈不也是一種人生的失?。?/span>
3、耐心調試
《明朝那些事兒》的作者當年明月先生說過一句話:我們從歷史中得到的唯一教訓就是,我們從來沒有從歷史中得到任何教訓。
嵌入式碼農(nóng)也是如此。
每每調程序時,錯誤起,bug出,愁腸待酒舒,但依然擋不住下一次寫代碼時,踏南天,碎凌霄,豪情高萬丈。
沒辦法,我們這幫搞技術的,干到一定程度,總會產(chǎn)生一股莫名的自信。
雖然無情的bug經(jīng)常把我們澆一個透心涼,但是,我們依然堅信,急急如律令,鍵盤一敲起,bug速遁地。
再說了,寫代碼寫出bug來,實在是常有之事。這背后的原因,灑家也曾經(jīng)深究過一番。
對于每個碼農(nóng)個體來講,其軟件設計能力一般都大大超過了其實現(xiàn)能力。換句話說:
方案想得挺美,代碼寫得挺差。
這也難怪,軟件的調試時間與編碼時間比例一般都在2:1到4:1之間,在嵌入式軟件的實現(xiàn)過程中,調試時間更是要占到60%以上。
但是,出bug也不要怕。太祖告訴過我們:凡事,就怕‘認真’二字。只要我們沉得下心,耐得住氣,仔細再仔細,一定可以把bug解決掉。
難搞的bug,其實更像一顆磨刀石。
想想吧,當你遇到一個問題時,之前所有學過的知識都開始向這個目標聚集,各個知識點在這里交織碰撞,在實戰(zhàn)中擦出耀眼的火花。
搞著搞著,你就深入理解了原本沒那么親切的知識點,畢竟,吃一塹長一智,只有在實踐中犯錯,才更容易長記性。再深入搞一搞,您就掌握了方法中的細節(jié)和技巧,沒準一篇發(fā)明專利都被搞出來了吶!
瓜友們可能沒有寫過發(fā)明專利,手握10余項專利的灑家可以拍著中年發(fā)福的肚皮向你保證:解決大bug就是撰寫發(fā)明專利的前奏曲。
失之東隅收之桑榆,豈不美哉!
4、寫在最后的話干一行,愛一行。愛一行,才能精一行。
保持昂揚的斗志,在枯燥的工作和生活的縫隙里,以這份滾燙的熱愛,灑進一絲希望的光。
耐住不斷學習迭代的辛苦,啃下該啃的骨頭,走那難行卻正確的路。
沉下心,把bug一條一條地捉出來,念一句阿彌陀佛,送它們上西天,祭奠自己逝去的青春。
技術行業(yè)的資深人士,大致都是這么一路走來的吧!
文:烏拉拉
*博客內容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)