# 軟體工程師_轉換跑道、求職心得與準備方向 ## 零、背景介紹 112 ME 學碩,完全沒程式背景,2020年初在學長的慫恿下開始準備應徵軟韌體相關職缺,在六月初成功獲得"群暉 軟體工程師"的職缺,我會在下面介紹準備的過程與方向。 此篇的準備方式偏向底層C,因當初目標為IC產業的韌體工程師,物件導向跟更深的資結與演算法接觸少,但是可以確定的是這兩個職缺所需要的最基本的技能是有重疊的,如有志往純軟的話,請繼續學下去, ## 一、面試要素 ### 1.履歷 我是以104為主要投遞管道,如果以外商為導向的話會以LinkedIn為主,同時在LinkedIn上面有很多不錯的履歷範例可以參考。 :bulb:[我的履歷](https://drive.google.com/file/d/1EqCidSYQ0RHKTufTxDf0rXnZZZ9C4Pg5/view?usp=sharing) 這邊簡述幾項履歷撰寫上的要點 1. **簡潔明確** 如果新鮮人的話,以兩頁為主,第一頁條列式自己的資歷,第二頁自傳,建議找到自己喜歡的模板,盡量以可以在30秒內看完第一面為主。 2. **自傳很重要** 一定要寫自傳,面試官很喜歡看自傳,可以看到個人特質,請寫好!!,網路上、YouTube都有很多教人寫,以實例成效的方式撰寫,自傳會是你挖坑給主考官問妳問題,如何表現自己就看你要怎麼寫,怎麼去行銷自己。 3. **不誇大** 履歷上的東西切記自己都要會,不要寫超出自己能力範圍的,不要擔心寫出來的東西看起來很廢,盡量寫仔細,像是會資料結構中的XX跟XX結構,不要只寫會資結。 4. **作品集** 請一定要準備作品集,尤其是非本科的朋友,你沒有學過的課程為你做擔保,請準備小型的程式,而這個程式的重點會在於為何選擇此"資料結構"、"演算法"來解決這個問題,還有一些極端的邊界條件的考量(overflow之類),錯誤的回報設計。 ### 2.學歷與技能 以台灣的產業來說,以IC設計為發展性最好(錢最多),基本上學歷對就很輕鬆,但對於非本科學生想進去的話,需要準備許多東西,如果還在學校的話,多修資工相關的課,那些都是你的履歷證明,如果已經來不及修課的話,透過自學時請留下修過的證明,如課程上的小作品等。 以韌體工程師需要準備的技能有: 1. 主技能: - C/C++ - 資料結構 - 演算法 - 作業系統 - 計算機結構 2. 副技能: - 通訊原理 - 影像處理 ### 3.準備方向 這邊會 #### 3-1. C/C++ 1. Sizeof各類型 2. bitwise operation(刷題) 3. 指標(==重要==) 4. 函式指標 5. volatile、static、extern 6. global、stack、heap 7. little endian vs big endian 8. call by value、call by address(探討與差距,然後C沒有call by ref.) 9. #define的陷阱題、與inline、function差別 10. 實作cstyle字串函數 主要了解各名詞的觀念,而物件導向觀念在韌體範圍內考得不多,但學會最好 >:earth_africa:推薦網站 [Mr. Opengate](https://mropengate.blogspot.com/2017/08/cc-c.html) [你所不知道的C語言](https://hackmd.io/@sysprog/c-programming?fbclid=IwAR17V5qycI9lqDswJt8HFsqLyOPy0LM53y2v9tS6vNIaKj9u3Fuq_UL2XvE) [良葛格學習筆記](https://openhome.cc/Gossip/index.html) [C語言常見誤解](https://docs.google.com/document/u/0/d/12cR0qb-kl7jB8RA_eHQu8OSmGKEOshwLeX4Mx5qBzUE/mobilebasic?fbclid=IwAR11N8I53Ur50CSRS0iw3ab4txrAlqX879AskuaJ-stAmA_rF8covkKcJHc) [C面試常考觀念筆記](https://hackmd.io/@SupremeEJ/SJcfEZSjL) [實作cstyle字串函數](https://hackmd.io/@SupremeEJ/H1xi0bMhU) #### 3-2.資料結構&演算法: 1. Array、LinkedList(重要) 2. Stack、Queue(重要) 3. Hash table(次要) 4. Tree(次要) 資料結構務必要非常精通熟練,其建構解構、插入刪除、反轉等,一定要自己實作很多遍,尤其==LinkedList==,建議多刷LeetCode >:pencil:筆記 [LinkedList](https://hackmd.io/@SupremeEJ/BypgIehoU) [Stack](https://hackmd.io/@SupremeEJ/BJjbhohiI) [Queue](https://hackmd.io/@SupremeEJ/B1IMWlTiI) 1. 六大排序 2. 動態規劃&貪婪 在韌體演算法考得不多,基本六大sort一定要會(可以現場寫出來那種),DP跟貪婪會基本應用 >:earth_africa:推薦網站 [演算法與資料結構](http://alrightchiu.github.io/SecondRound/mu-lu-yan-suan-fa-yu-zi-liao-jie-gou.html?fbclid=IwAR14duEqCyVt9W1_G9TKyWB7RdXtHeFq20yatwW9LxgKQdy_WEeRZeGUF1o) [算法到底应该怎么学?](https://www.zhihu.com/question/25693637/answer/747872819?fbclid=IwAR2ghlzWoTGLpSgZMRfhFxOfOQOL3qtXWkR0T-XUuo79oYnPL9amYDpQ6HU) [算法到底应该怎么学? (電子書檔)](https://drive.google.com/drive/folders/14an7N5NKtOfH8PNKbH51k3xTSGbb2Uql?usp=sharing) [演算法思維](https://hackmd.io/@SupremeEJ/Hk2P2dd28) [六大sort](https://hackmd.io/@SupremeEJ/Bk7lOGTs8) #### 3-3.作業系統&計算機組織 1. 恐龍本(主要考的就出自這本) 2. Linux 3. 系統程式 作業系統很重要,基本上必考,大約占比(40%),絕大部分考恐龍本內部觀念,請一定要讀!! 基本上都是使用Linux作業系統,請學會基本的操作,看"鳥哥"就很足夠,如果時間充裕的話去了解原理! 計算機組織基本考不多,時間足夠再去看。 系統程式主要介紹程式是如何在計算機中運行,將會學習Compiler、Assembler等程式,會有蠻大幫助了解一些程式的概念,我自己的小作品就是做一個編譯器。 >:earth_africa:推薦網站 [恐龍本 ppt](https://drive.google.com/drive/folders/1bfQQw35IgMpsoFPoRAr3Ky8REWjzYmoH?usp=sharing) [鳥哥的 Linux 私房菜](http://linux.vbird.org/) [羅習五 作業系統概論](https://www.dropbox.com/sh/vf200ofnzvub69f/AADkwo1gxCoPhzh_sl5yMWaya?dl=0) [宅學習 作業系統](https://sls.weco.net/CollectiveNote20/OS) [陳鍾誠 計算機結構](http://ccckmit.wikidot.com/co:hardware?fbclid=IwAR10C1EvViPu4zPhcoTMJ039LCiKWh3YuwAJeNtN8yiaY6GM5R4oi11Dsz8) [陳鍾誠 系統程式ppt](https://github.com/cccbook/sp/wiki/spbook?fbclid=IwAR1oKTnMjmBZpVte1TirYL11egBkLJk8hWTd5YoP7sfiRaMk7wh5dSYMfZU) [陳鍾誠 系統程式 code](http://sp1.wikidot.com/main) [資工考試筆記_作業系統](https://drive.google.com/file/d/1-Ed1BH9hJGhzgZkYHAy2xwBpqtEQB6vs/view?usp=sharing) [資工考試筆記_計算機結構](https://drive.google.com/file/d/16tz3Cy9DdLjq6fF2NNfJzlqPseHXvM8_/view?usp=sharing) [OS 面試考題](https://hackmd.io/@SupremeEJ/SkcsCUGh8) #### 3-4.邏輯測驗 這方面可以多上網看考古題,有許多有趣常考的題目,這方面就當作休閒時期放鬆可以去玩玩就好~ ### 4.面試技巧 我大概面試25家(有點太多XD),前期不知方向,參加面試一方面當作練習,一方面去了解產業,不要害怕面試,面試也是你去面試公司,讓他說服你他們公司值得你去工作!!所以有機會就去面試,各種都去試試,可以發現自己到底喜歡的是什麼,想要的是甚麼樣的生活,你看中的是成就、薪水、工作內容還是生活品質? 小技巧分享: 1. **行銷自己** 有一個明確的想要展現的個人特質,例如想要展現我是一個行動力強的人,那我表達和舉例中要不斷傳達此特色,一場面試大約傳達三個明確的特色即可,要成功說服面試官。 2. **展現積極性** 展現你有多想進這間公司,當然不是直球說我想進這麼簡單,透過一些問題來展現,例如:想知道部門未來的發展性、如何升遷、部門內部的職位層級等,透過傳達想更加了解公司,來讓他們知道你已經在想怎麼在裡面爬了XD 3. **賣萌** 大部分主管會喜歡乖巧有上進心的乖寶寶(限定科技業),所以適當的表現自己新鮮人的純真與憨厚是個小加分的點。 4. **誠實** 這很像屁話,但是這很重要,面試不只他們挑你,也是你在挑公司,不必要刻意討好面試官而改變自己的個性,更多的時候誠實面對自己,展現自己的個性對於未來職場更重要。 ## 二、面試過程 因為我傾向留在台北,主要都是丟大台北地區的公司,我自己將求職過程分為兩個時期,會在下面分別敘述。 1. **前期:** 這段期間準備還不是很充足,不敢丟大公司,主要丟一些小型公司,或系統廠,職缺皆為韌體工程師,而這階段的公司的考試皆偏容易,且感受到它們很缺人,然而薪資就頂多N+3,所以後來皆婉拒offer。 有拿到的職缺: - 仁寶 手機伺服器 (N+1)*15~17 - 英業達 BIOS (N+1) - 廣達 BIOS雲端伺服器 (N+3)*18 - 南亞 CIE工程師 (N+3)*15 - 禾瑞亞 韌體 (N+5) 結論: 不要去系統廠的韌體,薪水給的不高,做的事情很雜,學不到更深的技術。 2. **後期:** 發現自己的履歷和實力都丟不到更好的公司,於是先緩了一段時間,繼續準備自己,也是在這段時間完成小作品,有作品就好丟很多了! 想要突破50K的話,一定要去做IC的才有辦法,畢竟三線的韌體就有58K,二線65K、一線75K,而台北地區相比新竹IC職缺少很多,所以如果沒有特別強求留在台北的話,去新竹會好找很多喔! 有拿到的職缺: - 佳能 AIot 韌體 (N+8) - 芯鼎 影像相關IC (N+13) - 群聯 FLASH IC (N+30) - 群暉 溝通平台 (N+25) :rocket:面試分享 [群輝 軟體工程師](https://hackmd.io/@SupremeEJ/Byeo5pNnI) ## 三、心得 首先感謝有學長很無私的傳承他轉職的經驗給我,於是我也決定把這份情傳下去,給需要的人們,也希望有成功的朋友也不吝嗇自己的經驗,繼續造福後人。 1. **人脈** 通常非本科的朋友,又沒有傑出的經歷,根本連面試的機會都沒有,所以快去找看看有沒有認識的前輩,能內推就內推! 2. **氣氛對** 我個人對於公司團隊的氣氛會很看重,尤其是公司內部都是一些大叔的時候,我會無法接受,覺得這間公司是一灘死水,感覺會有很多代溝 3. **有自信** 不要害怕面試,我都是去當作聊天,當然也是在家準備很好囉,心態不要畏懼,不要覺得他們給你工作是施捨,不要不敢開價,期望薪資先加10K,再讓它們慢慢砍XD ###### tags: `面試`
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.