看板 Tech_Job 關於我們 聯絡資訊
※ 引述《abbb1223 (跟著我一起搖擺)》之銘言: : 安安,給前輩們拜新年,恭喜發財,希望人人300萬。 : 小魯目前在一間小小小系統廠擔任FW,薪水為42*12。目前有轉職的打算,想事先做好相關 : 準備,故上來請教前輩們,想藉著前輩們的肩膀一探究竟。 : 為了簡化篇幅,這篇是著重在職業的選擇,後續如有需要會再請教面試與薪資的部分。 : ------------------------------------------------------------------------------ : 工作上用到的工具是Microchip 8bit的MCU,會的技能有I2C與SMBus。硬體方面能力普普, : 會看電路圖幫忙debug;軟體架構目前會RR、RR with interrupt、function queue sched- : uling。 : 在1X4上面看了一輪職缺,大約可以分成三個類別 : 1.RTOS embedded system FW : 這工作的內容應該跟我現在做的差不多,差別只在MCU要上RTOS。但看了1X4上面的職缺需 : 求,大部分都是要會"用"就好(比如用現有的FreeRTOS),那如果有辦法自己寫出一個RTOS : ,在薪資上面有辦法喊比一般求職者更高一截嗎? : 因為我想自己寫一個RTOS掛在MCU上,感覺滿好玩的,挑戰性也高。 : 但我不清楚已商業化RTOS的價位、實用性與應用面廣不廣,如果您是一位director,您會 : 直接買一個現有的RTOS來使用,或者是另外用較高薪聘請一位FW來專門研發自家的RTOS? 有些RTOS是免費的,又穩定又好用。花大錢找專家來做,要做的跟現有的RTOS一樣好 不是這麼簡單的事情。而且要研發自家RTOS的職缺,應該也不會PO在104上:( : 2.Linux related : 有時候在職缺的需求下會看到需有Linux/Unix相關經驗,但這類的職缺"有時候"又希望面 : 試者有RTOS的經驗。對我來說,Linux與RTOS都是OS,有辦法兩者共存嗎?還是這類職缺需 : 要"在Linux的環境下開發RTOS"?(有錯請指正) : 據我所知,Linux的資源都是開源的,很多功能的代碼都可以上網找到,所以這類工作的重 : 點是著重在軟體架構上的開發嗎?也需要像我現在一樣,看IC的spec,然後再寫出相對應的 : 軟體嗎?這類的工作範疇大概是什麼?對產品的了解程度要高嗎? 如果是系統廠的Linux缺,大部分應該都是要porting driver或application的,需要 有RTOS的經驗,一個原因是他用RTOS,但希望你把Linux driver/applicaiton porting 到RTOS上,這時如果你不懂Linux driver架構,就不知從何搞起了。 另一個原因是其實搞 Linux比較不容易有完整的OS觀念,因為linux太強大了,很多東西都做掉了,所以很難有整體觀念XD 例如你能說出一個程式從compiling ->linking->loading的流程跟原理嗎? : 3.IC廠的FW : 上網看到有IC廠在做USB產品的韌體開發,需要會USB、SPI、I2C。SPI與I2C在在職的工作 : 中有碰到,相對還算熟悉,所以照理說也可以跳到上游去寫這塊(?) : 照理說IC廠的designer與系統廠的FW看的protocol的spec都是同一份,所以我只要把spec : 看熟,面試應該就沒問題了吧!? : 那IC廠FW的工作職責大概落在哪個範圍呢?會很雜嗎QQ? : IC廠的core是自家開發的嗎?還是也是用大廠的? : 軟體上的需求難度會很高嗎?有必要上RTOS嗎? : 薪資水平與HW比起來,會少一截嗎?那與系統廠的FW比起來呢? : 在工作上如何與HW互動? : 有必要參與IC SPEC的撰寫嗎? : 工作內容會不會被侷限在某一個領域上?比如只會碰到USB、I2C的protocol,軟體的架構 : 也已被訂死,只要依樣畫葫蘆就好。 : 希望有在這三大類工作的前輩們可以分享一下心得給後輩我參考,謝謝。 這個很難回答,因為大的IC廠分很細,例如你可能只專注在interface(USB/SPI) 上面, 而沒有機會去碰IC SPEC/驗證這一塊。 所以你的問題應該從公司大小來做判斷,大公司 很多東西都已經成熟,你不會是第一個開始開發的人,通常都是去debug跟維護現有的東西 ,比較偏小螺絲釘。 小公司的話範圍就比較廣了,可能從寫driver/設計(抄)IC spec 到焊板子都會碰到。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.120.187.3 ※ 文章網址: https://www.ptt.cc/bbs/Tech_Job/M.1519269020.A.3D5.html