PTT推薦

[北美] Firmware Embedded 大量面試心得

看板Oversea_Job標題[北美] Firmware Embedded 大量面試心得作者
cair
(白色的黑貓)
時間推噓30 推:30 噓:0 →:9

##引言
版上北美科技業文章多為Software的相關職缺跟心得
Firmware Embedded相關文章跟職缺很少
想說來貢獻一下我這半年來面試的心得 拋磚引玉一下
本文也適合一些在台灣IC design,OEM,ODM背景的工程師

因為有些公司有簽NDA,我不會在公司段落中描述面試的實際問題
我會把所有面試問題集中在下一段
FW engineer 多半不用刷leetcode,我本身也沒有刷
常考題我會列在下方,依照類別分類然後再依照出現頻率排序

##常考題
1.Linked List - 最常考,因為有許多follow up,而且可以同時考pointer, malloc,
struct等。 我自己當面試官的時候也常出這個題,因為可以隨著面試者的Level問不同 follow up。
a.基本:print, push, add, pop, delete
b.應用:reverse, sort, merge多個list, 找出是否有環

2.Bit Operation - 這算做底層跟高階語言最大差異之一,我面試別人也多半會出一小題 這個
a.基本:set, clear, togger, mask, shift, AND, OR, XOR
b.應用:有幾個bit為1, reverse, bit swap, Endianess Swap

3.C語言關鍵字跟觀念 - static(注意用在變數跟函式的差別), extern, volatile,
const, union, enum, struct(注意裡面變數順序會影響實際size這點), malloc, free, function pointer, sizeof(這有蠻多易錯小細節),
call back function, pointer to pointer, call by reference\value(注意C\C++差
異), atomic

4.OS概念題 - multi-thread, mutex, semaphore, interrupt, ISR,
priority inversion, deadlock, shared memory, memory leak, memory alignment

5.嵌入式概念題 - I2C, SPI, UART, JTAG 特色及比較, GPIO

6.應用題 - 這邊的題目可能看公司跟看職缺需求,不一定比較難,只是可能需要相關
domain knowhow或是思考要轉一下
a.字串搜尋, 比較, 複製
b.影像\聲音 訊號 filter 處理,譬如用一個3*3個filter跑過整張圖片來模糊化\銳利 化\去雜訊。或是去掉特定頻率聲音
c.Circular Buffer Queue - 基本題不難,但follow up多半是要考慮到 producer跟
consumer為不同thread,結合multi-thread, mutex等觀念
d.封包處理:多半是模擬藍芽I2C UART之類的題目,譬如給定一個字串 "開始字元 指令 長度 參數*n CRC 結束字元",可以當成字串處理題目來做,
但要考慮怎樣設計好API跟容錯檢查。
e. 控制系統:譬如給定三個API分別是加溫\降溫\現在溫度,要你寫個可以恆溫的系統, 設計概念是fuzzy甚至PID system
f.可以去搜尋API設計概念的影片,Google Facebook都有相關影片在youtube上
g.atoi, itoa, state machine
h.QuickSort, MergeSort, Binary Search,這邊的題目最好會用Array也會用
LinkedList解
i.memcpy 及優化
j.Array中找出相加(或相乘)最大,等於特定值的組合
k.矩陣內積
l.floating point 運算,實做

7.behavioral questions這部分答案很個人化,而且也不同公司可能期待不同答案,譬如有些公司希望你對未知問題盡可能做大膽的推測,有些公司則是希望你"知之為知之,不知為不知"。 常問的多半包含:
a.你有那些失敗經驗\code出大bug,怎樣解決
b.跟組員\主管意見不合怎解決
c.舉個例子證明你團隊合作能力
d.客戶dealline突然提前怎辦
e.怎處理壓力\決策\領導
f.接到新專案會怎處理
g.組裡有人一直拖後腿怎處理


##各公司面試心得
以下多半是這半年疫情期間的面試心得,全部都是視訊,我底下提到的多半是針對最後一輪,onsite輪的面試。
公司排序依照我印象深刻跟面試特殊程度,跟難易或時間無關。
部分公司有NDA,所以不會提供各公司面試題目細節,請參考上方一般性FW題庫。
以下為均為我個人經驗,許多公司可能各組差異極大。
Startup因為可能面試人數較少,雖然他們應該不會看PTT,但我覺得針對性太強,所以暫不寫出名字。

#Blue Origin
Jeff Bezos的火箭公司,因為工作性質不接受H1B,OPT(但可能看組)。
因此面試全程都是美國人,比較特別的是要寫個小文章討論你對宇宙探險的看法,我寫了大概一張A4,但好像他們期待是接近小論文的形式,後來HR跟我講之後發現這佔面試比例不小的部分。

除了寫文章以外,還有一小時個人簡報,全組會聽你介紹過去做過什麼事情,一小時後再個別coding面試,全程大概6小時。

#Apple
影像相關的組,因此影像相關問題比較多,整體題目不難,但會看重API設計以及testing,每個面試官多半會問些少量behavioral questions,少量設計問題。
面試全程7小時,我請HR切成兩個下午。

#Qualcomm
面試過程全部印度人,題目中等但英聽大考驗,我多半會打在online coding介面上跟對方double check 他剛剛說過的重點。約5小時。

#Facebook
ARVR相關組的音訊職缺,感覺他們喜歡問比較難的然後再逐步放提示,分析題目跟問到重點會是面試關鍵,有單獨幾輪是問behavioral questions跟設計問題。全程約6小時。

#Oracle
徵FW專長但是問了不少SW演算法,約5小時。

#Nintendo
音訊職缺,大部分題目不難但bar riser那關突然變超難,約4.5小時。

#Colgate
高露潔,對!就是牙膏那個,電動牙刷相關職缺,視訊面試但對面沒人,錄影之後對方回去看,我覺得是很糟糕的面試經驗,缺乏互動。

#Startup-自駕車-Z
蠻看重系統設計的感覺,題目定義很多細節很完整。

#Garmin
影像問題佔比較多,一般FW問題次之,全部大概5小時。

#Samsung
題目都在上一段基本題庫中,但有幾個follow up是有點挑戰性,約5小時。

#BlueBerry
回家作業可能要花一下午,要裝VM, 他們的系統, 某題庫, 然後再寫指定需求。我看到就懶的寫了...

#Startup-智慧手環H
比較特別的是他們需要firwmare加ML人才,切成許多小輪,2+2小時考firmware,1+1小時跟founder\CEO聊天,2小時考ML,ML考試時可以Google、可以用任何常見API。

#Startup-自駕車-I
影像相關問題很多,感覺要找耐加班的。

#Startup-自駕車-B
影像相關問題很多,還有一些ML問題。

#Startup-IoT-S
Coding 1小時,跟founder CEO CTO Team lead聊天4小時。

#Tesla
題目有許多底層細節,有些題目解答不是唯一,感覺是看會用怎樣的設計來解題。

#SpaceX, Boring company
鋼鐵人旗下公司一起寫,基本題不難但感覺會期待你架構嚴謹且bug free。然後設計類題就是pseudo code加互相討論,還有部分天馬行空創意題。

#Masimo
醫療器材大廠,題目範圍廣,大概上面題庫區的都有各問到一些。
有一半的面試官是專業且認真,熱心跟我介紹不同產品跟組裡未來方向
但其中幾個面試官邊面試邊吃飯就算了,還有對著視訊剃牙的 =_= ,全程大概6小時。

#Startup-自駕車-R
題目偏演算法,以leetcode標準來看不難,但以C\C++來寫略有挑戰性。

#Startup-助聽器-W
音訊處理問題為主,題目對於沒做過音訊的頗難,但給的提示算詳細,仔細審題之後不難。

#Marvell
綜合式的firmware題,好像比較注重這code執行效率。大概5小時。

#Microsoft
behavioral questions佔比很大,coding題目不難,但比較重視code的scalability
還有設計。

#Amazon
有幾次經驗不錯,有幾次極糟,遇到面試官放鳥超過一次,面試官非Firmware相關,甚至直接跟我說:他們是誰有空就來面試,不是看專長跟領域。
感覺面試官都會期待特定標準解答。

#Verifone
Hiring team人都不錯,但HR team外包混亂到不行,有5個人在南亞的HR跟我講4個不同的onsite時間。

#Google旗下生醫新創
Firmware相關題目不難,但是問了很多生醫\生技領域學術問題。

#Startup-機器人-E
簡報+多輪聊天,期待是從HW FW SW都有涉略的人,題目也會均涵蓋一點。

#Intel
五輪,每輪都是大約20分鐘coding,20分鐘討論改良前面coding設計,20分鐘
behavioral questions。


##結語
疫情期間都是遠端面試,因此比較好安排更多onsite,但明顯可以感覺到LinkedIn上面職缺大幅減少,甚至有些拿到口頭offer後跟我說hiring freeze了。
再加上有些公司也裁員了,競爭對手也變多了。

我這半年大概面試約50間公司,約2X間到最後一輪,拿到8個offer,加州佔4個其他分散各州。

但這文章希望可以拋磚引玉,有些公司我沒寫太多心得,但可以給不知道投哪些公司的作為參考,也可以知道有哪些還在徵人。

文章中有不足或疏漏的部分歡迎各位補充!

希望各位求職順利!

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 75.72.60.151 (美國)
PTT 網址

fr7508/16 08:24你年資幾年?在這疫情中拿到這麼多面試機會

fr7508/16 08:26這方面薪水大約多少?跟一般SWE怎比?

fr7508/16 08:31影像方面問題是指image processing還是甚至是computer visio

fr7508/16 08:31n?還是關於影像格式跟傳輸?

fr7508/16 08:33你被問到設計的問題都只是存軟嗎 還是包括硬體或硬體應用?

flyawayla08/16 09:30我猜5年以上,近10年之類的,看一下上站次數就知道了 X

flyawayla08/16 09:30D

台灣2.5年 美國4.5年 薪水部份我也沒拿過SWE offer不知道怎比 但根據一些薪水比價網站跟我身邊朋友聽的數字 FAANG跟類似等級的TOP20 Tech FW薪水大約是SW 8成 一般 Tech FW薪水大概是SW 6成 影像問題多半是image processing,copmuter vision大多流行用ML:CNN RNN之類了吧 Firmware容易被問到的問題 大多是軟硬整合,HWSW那邊要有概念但當然不用太深入 譬如你有個Gyro sensor會顯示角度,你怎麼透過I2C取得value,怎提供給SW APP 假設HW那邊資料更新率是X Hz,SW跟FW要資料的頻率是Y Hz,會有什麼設計差異或限制

※ 編輯: cair (75.72.60.151 美國), 08/16/2020 10:03:45

jason6120608/16 10:12推推 蠻棒的!

lakeinlake08/16 11:04推!很詳細!作者本身有身分?

cair08/16 11:07來美國留學加工作6年 一年前拿到綠卡 今年用力面試

cair08/16 11:08也是從OPT H1B的慌亂緊張中過來的

baby0326sky08/16 12:05哇!謝謝分享

matyih08/16 12:48能拿這麼多面試很猛

jk84232308/16 13:04感謝分享

lrvine08/16 13:07感謝分享!

laba556608/16 15:01Blue Origin很猛

ShakeHandtw08/16 16:06感謝分享,好文章

andersonchen08/16 17:42這把我們TEAM 常考的全部包含了..

cair08/17 01:43樓上歡迎分享一下啊,看看各公司不同面試觀點

kevin7063608/17 02:26推一個 感謝分享

expiate08/17 05:14感謝分享

j8343500108/17 10:59原po好帥

torso08/17 15:54是在職面試嗎?50間!好強的時間管理!

Findagreen08/17 19:45請收下我的膝蓋

fifi8272608/18 00:32面這麼多是怎麼安排offer時間的阿

urmfo08/18 00:48

paselalps08/18 02:16也想知道原po如何安排不同公司收到和回覆offer的期程

b069015108/18 07:00實用 推

分享一下我自己疫情期間的面試排程 也就是疫情期間WFH才能安排如此密集的面試 #我在三月的時候拿到兩個大公司的口頭offer 結果都因為疫情hiring freeze了 因此開始了瘋狂面試之路 而且可以明顯發現Linkedin上面職缺爆減 取而代之的是很多仲介公司跟約聘職缺 大部分科技公司都是HR-> 一小時初面-> 4-6小時virtual onsite 有些可能是兩輪初面,startup可能則是一小時面試*N Linkedin上面前20頁常看到的都那些,我翻到差不多背下來了 我建議搜尋的時候可以自己設定 多組 職缺+地點 各看前五頁 會比同一個搜尋條件看20頁有效率多 譬如 Firmware+LA Firmware+SF Firmware+Seattle 還有AngleList也能看一下 #四五六月大概是海投跟面試練習的時間 在公司上班的時候可能第一輪HR電話都不好意思接 既然WFH當然就隨時想接就接囉,這期間大概每天有2-5通HR phone screen 不過有很多約聘的也是不請自來一直打 我這期間也面試了幾間約聘的想說當練習 但過沒多久就發現約聘面試太簡單,後來就都直接推掉了 一小時的coding我大概每周會有1-3場 還有一點,因為我在東岸有時差可以利用,這點讓我時間管理上很方便 西岸兩點我這邊五點了,約西岸下午我幾乎都可以不影響工作的面試 onsite輪有時候就要配合請假,反正今年也不能去哪玩了,假用一用吧 所以主要就是利用時差+WFH+請假 畢竟WFH嘛 就算真的面試卡到上班時間,我晚上補點進度也就可以 #六下旬到七月開始進入收尾階段 這部分最重要的是調整onsite輪的速度,有些公司太快的故意約晚一點 有些公司動作慢的要多寫信催一下 但我也不是調得很好,有幾個offer來太早、拖了兩周還是只好拒了 有幾個更好的公司面試排太慢也只好拒了 最後大概是喬到五個offer分別在10天區間內進來 我中間也有面試被打槍到很絕望,覺得面試遙不可及,都跑去開104了XD

※ 編輯: cair (75.72.60.151 美國), 08/18/2020 08:15:42

ckang08/19 09:05我也是FW 這篇太強

paselalps08/19 12:41感謝分享

semm08/20 14:17前室友神人快拜 不刷題還可以拿到一堆offer

NAMESTANLY08/21 11:32推一個

NAMESTANLY08/21 11:37FW比SW不值錢 QQ~

jason77030108/21 15:39FW要轉一般SW也很容易吧。再刷題就好了

joey1112108/21 18:26推,很少看到國外底層

kingnamefu08/30 23:02推~光看經驗分享就覺得超強的!

russellluo09/09 21:05滿厲害的內

seal4682510/29 00:27

erial01/05 01:17+++