Re: [請益] 韌體工程師如何選擇方向?

看板Soft_Job作者 (極光)時間8年前 (2016/03/11 04:21), 編輯推噓9(9020)
留言29則, 12人參與, 最新討論串2/5 (看更多)
※ 引述《classic500ml (TB)》之銘言: : 大家好 : 小弟最近想換工作,不過實在不清楚大環境方向, : 想尋求各位前輩指點迷津!!先謝謝大家了orz!! : 我的背景: : 國立科大,電子電機相關科系畢業(不是資工)。 : 退伍後擔任軟體工程師三年多(沒換過工作), : 專長C/C++,全部靠估狗,邊上班邊學,三年做了好幾個嵌入式系統案子。 : 公司是消費性電子產業,所以產品都是要透過GUI才能讓user使用。 : 工作分配是我跟一家外包兩個人寫,各忙各案子這樣, : 簡單來說: : 外包的案子,外包全部自己搞定。 : 我的案子,只有GUI我能自己搞定,其他像是 linux porting, driver, firmware等等, : 都要靠外包商搞定。 : 我在這些非GUI部分中,對於"原理、基本概念、大方向"大致也都了解,但是都沒有實際 : 做過。 : ================================= : 寫了三年多GUI,覺得在這樣下去不行了, : 所以想轉換方向,目前是想找韌體工程師, : 但是打開104真的是眼花撩亂, : 想請問: : 1. 假設我以"外包商的能力"當目標,我該找什麼樣的 "產業or工作內容" 呢? : P.S. : 至少我目前覺得外包商能力很強, : 從linux移植到arm上,到driver,firmware,GUI等等, : 都可以一條龍全部搞定, : 公司專案內容也可以說包山包海吧, : 就我目前有經歷過的就有: : USB storage、SD、LCD、touch panel、WIFI、ethernet等等, : 以上也是外包一個人搞定。 : 2. 或者是說我應該只朝一個方向做深入發展呢? : 看了104職位名稱: : EX: 影像處理IC韌體設計工程師、藍芽韌體設計工程師、Nand Flash韌體設計,等等一堆 : 。 : 每個都是很專業領域,很擔心產業選下去,路越來越窄... : 抱歉文長,然後再次謝謝大家!! 小弟是人在美國系統廠工作的韌體工程師,想分享一些經驗。 我個人認為做韌體主要三個能力: 1. C 語言。 語法或指標只是基本,給你一包 open source 你要能在短時間看懂 且進一步修改。進一步開發環境、toolchain、gdb、make 都是基 本功。 2. OS / architecture 對 OS 的觀念掌握度高嗎?paging、virtual memory、file system 等都會用到。常見的狀況是給你一個破破的文件要你寫個 driver, 找 ODM 沒用因為他們也不會,找原廠沒用因為沒給錢 XD。 ARM 的架構也要熟。kernel 出現 stack dump 如何去找到兇手等。 各種稀奇古怪的 bug 到底跟硬體有關或無關也要靠你釐清,還是有人 code 亂寫導致同步爛掉,各種狀況考驗你的基本功力。 3. 耐心與學習 在沒足夠的文件下要讓 HW 動起來,try & error 少不了。issue 太廣 ,只要是底層都你的,自然必須一直學習。 做 porting 只是韌體工程師的一部分,更進一步是對 Linux kernel 與對 系統的掌握度。東西太多都是遇到 issue 以後邊學邊解。但只要基本功紮實 基本上都能學的起來也能做的出來。 因此個人建議將基礎功打好,從 C 的指標,簡單的 device 與 kernel module 開始。良好的觀念可以讓你面對複雜的問題時有個頭緒。公司也要 慎選,儘量找老闆會認真面對 issue 並想解決的地方工作。小弟在台工作時, 共事過的ODM 韌體工程師,強的不是沒有,只是非常的少,擺爛的居多,還有 擺老的。畢竟對這些公司而言,賣的是硬體,軟體只是驗證硬體用的, 在這種地方公司自然不重視軟體,也學不到東西。 而美國的就業市場,小弟的觀察是韌體工程師相對藍海,大概太黑手想做的 人不多,機會也多。mobile app 或 front end 等反而競爭激烈。另外高薪 伴隨著高稅與其他狀況,這就是別的故事了,但可以確的定是做 10 年就退 休的人是鳳毛麟角。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 96.45.34.20 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1457641313.A.52B.html

03/11 06:25, , 1F
謝謝分享!!!!!
03/11 06:25, 1F

03/11 06:53, , 2F
感謝
03/11 06:53, 2F

03/11 09:22, , 3F
@lensuper 救星來了
03/11 09:22, 3F

03/11 09:59, , 4F
文中第2點是打好地基,我覺得最值得下苦工
03/11 09:59, 4F

03/11 10:05, , 5F
第2點非本科系比較欠缺,是比較吃力的部分
03/11 10:05, 5F

03/11 10:06, , 6F
有的OS書還用JAVA寫,真是匪夷所思,這樣的書也在出
03/11 10:06, 6F

03/11 10:39, , 7F
非本科,最大罩門在OS架構+1
03/11 10:39, 7F

03/11 11:33, , 8F
原廠的sdk/bsp基本功能上都是好的!
03/11 11:33, 8F

03/11 12:07, , 9F
謝謝分享
03/11 12:07, 9F

03/11 19:04, , 10F
我查過linkedin,美國純軟職缺比韌體多很多很多很多很多
03/11 19:04, 10F

03/11 19:06, , 11F
有看到一篇文章,最後也是放棄了韌體與IC設計,改走應用
03/11 19:06, 11F

03/11 19:06, , 12F
03/11 19:06, 12F

03/11 19:09, , 14F
l, 最後是html,連結太長了。
03/11 19:09, 14F

03/11 19:11, , 15F
簡單幾點道出這行的血淚,光是加強C這點就是5年以上跑不掉
03/11 19:11, 15F

03/11 19:11, , 16F
,再加上kernel, 10年是基本,除非每年關war room.
03/11 19:11, 16F

03/11 19:12, , 17F
打錯,是每天
03/11 19:12, 17F

03/11 19:14, , 18F
養成時間長,薪水不會比純軟多,台灣除外。
03/11 19:14, 18F

03/11 19:14, , 19F
練功不易,雜事繁多,薪水不高
03/11 19:14, 19F

03/11 23:51, , 20F
那篇blog是因為他是做通訊的,通訊的phd工作機會很
03/11 23:51, 20F

03/11 23:52, , 21F
少。你去看他在Facebook做的是infra,ㄧ點也不應用
03/11 23:52, 21F

03/11 23:52, , 22F
X層好嗎==
03/11 23:52, 22F

03/12 18:24, , 23F
三樓XD
03/12 18:24, 23F

03/12 20:15, , 24F
推~
03/12 20:15, 24F

03/14 18:46, , 25F
通訊也只是一個EE的分支而已,通訊也是可以修IC設計
03/14 18:46, 25F

03/14 18:47, , 26F
走網路通訊的也需要修資料結構,演算法的,跟CS一樣
03/14 18:47, 26F

03/14 18:48, , 27F
我並不會覺得那位大大是因為做通訊的關係
03/14 18:48, 27F

03/14 18:51, , 28F
而很難找程式的工作,主要是論文的內容
03/14 18:51, 28F

03/15 19:40, , 29F
還有就是篇底層的軟體職缺本來就少少少
03/15 19:40, 29F
文章代碼(AID): #1MuTTXKh (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1MuTTXKh (Soft_Job)