前言
3月底收到Cadence面試邀約,雖然結果不盡理想,還是做紀錄以便之後參考 !!整個面試流程讓人覺得很舒服,相當尊重面試者
正文開始
整個面試流程如下:收到HR發信interview invitation --> 第一關phone interview --> 第二關程式筆試 --> 第三關遠端和美國主管interview
以下開始介紹大概內容:
【第一關phone interview】
HR會問你方便的時間,即便是中午或者傍晚都可以,他們很願意利用面試者有空的時間跟你面試。
談論內容包含 現在工作內容、寫過哪些功能、遇過那些棘手問題以及如何解決、
後半段就開始介紹主要工作內容以及需要那些技能,主要都是以C++為主
此階段需要複習類別(Class), 樣板(Template)等觀念
面試官會突然來一個問題問你知不知道這個觀念
【第二關程式筆試】
考很多程式設計語法觀念,包含類別(Class)的繼承(Inheritance)和建構子(Constructor)以及解構子(Destructor)、指標(pointer)、快速排序實作(Quick Sort)、數位系統設計
這一關只能拿書出來複習容易忘記的觀念
程式設計考題印象中有:
A. 給你一段程式碼,問你會不會有問題,如果有會發生什麼事
B. const char* ptrA 和 char* const ptrB 差在哪裡以及怎樣會有問題
C. Signle Linked-list翻轉實作
D. 給你一個有很多node但是edge很少的圖,請設計一個Structure來表示
如果想要搜尋nodeA,要怎麼印出經過的所有nodes
E. 實作Quick sort
F. 給你一個一維陣列,裡面的元素已經由小排到大,而且元素可以重複
問要如何篩透過In-Place方式選出不重複的元素之陣列,並且在O(n)時間內
數位系統考題大概有:
A. 布林代數化簡,並且證明
B. 給你一個數位電路,問你: Margin Setup time / Margin Hold time
題目大致上來說不難,介於Easy~Medium
我只有那一題問到Margin Setup time / Margin Hold time 不知道,其他都有寫出來而且答案都很肯定。
不知道為什麼要考到這個,畢竟這個只有大二修數位系統設計有碰過,工作後就沒再碰這個
而且這個應該是放在HW面試題才對
【第三關遠端和美國主管interview】
考完筆試後隔兩天就被安排跟美國主管遠端面試,面試時間是台灣時間早上7:00左右
全程英文面試,沒有一點中文
繼續考程式設計,考了Graph相關和Hash table
因為工作上沒用過Graph和Hash table相關,所以這一方面特弱
我連Minimal Spanning Tree都忘了...
如果是大三的我來面試一定沒問題,當時一直都有在寫OJ,對資料結構和演算法都有在碰
後來面試情況不是很好就提早結束,面試官還給我一句話
"I think it's not your best performance this time. Please prepare well before interview next time."
以上是我的Cadence面試經驗
感謝分享~最近剛好要去面試
回覆刪除