看你軟體營之後想做什麼
如果還是想做IC軟韌體(畢竟這也是台灣工作職缺最多 薪資也比較高的工作)
那你應該是要學C/C++
而不是學java/C#
IC廠給的東西 如果可以看到原始碼
就好好看看人家怎麼寫driver/firmware
SDK的東西不用懂太多
反正你換一家公司肯定換一套
硬體的部分
I2C的信號部分要能夠默寫出來 像下面這樣
https://goo.gl/6yBkRH
最好能夠搭配你平常在用的IC
說明整個I2C溝通流程
儀器部分要會用Scope, logic analyzer
要會用JTAG
如果有FPGA驗證經驗更好
interrupt/exception 要知道怎麼動的
如果你平常是寫MCU 那嵌入式系統的interrupt/ISR要熟悉
各項存儲空間 怎麼開機 怎麼load code並執行 觀念要有
如果是寫Linux driver的 OS和多執行緒的概念要有
資工系的OS要整個重念
我猜你不是做Linux kernel的 如果是的話我也不熟 要請高手來講解
資料結構演算法就網路上就一堆介紹
自學就可以
比如說這個
https://goo.gl/DbmDj2
C語言的部分 請加強指標觀念
要能夠自己會建新結構來做linked list
位元操作 溢位處理
C++的部分要會用STL 比如說string,vector,map,queue,stack
特別是類別 建構子 繼承 運算子多載
這些公司面試很常考
要會自己刻一個新的類別及其下的物件導向函數
上面這兩個 書店買兩本書 C一本 C++一本
都有完整解釋 範例也都很生活化
不用全部念完 就念我寫的那些就夠
其他的上班很少用到 也很少考到
考到算你走運
C++和資料結構唸完後
就上leetcode刷題 語言選C++ 不要用C寫
不然你會自己刻結構刻到死
從easy做起
medium做的完五六十題大概就可以應付台灣絕大多數台外商考試
選top interview question
不要去寫那種冷門題目
面試時說你C/C++都會寫
比較麻煩的題目記得都要用C++
有的外商還會加考系統設計
這個比較難 通常是有經驗的工程師才會被問到
比如說要你設計一個有限狀態機系統
用C++寫出來整套code
自己訂spec requirement constraint
自己定義結構變數
然後寫完附圖並講解
注意以上講的code面試時都是要寫出能動的code
而不是pusedo code
要真的能動的code 自己寫完自己檢查 而不是讓complier幫你檢查
這些做的完的話
你在外商軟韌體工程師面試筆試大概可以名列前茅
其他看校名和機運
※ 引述《x246libra (宸火)》之銘言: