工程師的高薪、大量需求,吸引了無數的求職者。然而,你知道軟體工程師面試時,會被問哪些問題嗎?軟體工程師面試除了技術性的測驗外,也會被問到有關公司文化的問題。

軟體工程師在面試前,常常會練Leetcode的題目,但是面試準備也不能只專注於刷題。想要學習如何練習,可以參考Glints的精選文章:【軟體工程師面試考試題庫,LeetCode有2000題,要怎麼練!】或是【還可以考慮什麼?10個LeetCode代替方案】

關於軟體工程師面試的技巧,可以參考【軟體工程師面試,問這6個問題留下好印象!】【Tech Job – 軟體工程師找到理想工作,靠這一招!】兩篇文章。

以下是一位求職者(許睿修)的經驗分享,5個不同的軟體工程師職位面試的心得。


第一間公司面試分享:群暉科技股份有限公司的Product Developer

求職方式:朋友內推,面試的部門由HR分配。

面試方式:Skype線上面試。

面試內容:

第一關是跟內部工程師的面試,主要是聊履歷內容,問的問題會很仔細,需要對履歷內容足夠熟悉。

例如,有一個SQL的專案問題,有可能會被問到設計schema的流程、如此設計的原因、資料量化時該如何解決效能問題等等。另外,OS (Operating System) 相關的經典題目,例如process、thread、inter-processcommunication等問題,甚至是實作linked list的程式題。

整體準備不夠充分,直接被HR通知面試結束,等待下一步寄信通知。

面試結果:一週後收到感謝函

第二間公司面試分享:玩美移動股份有限公司的Machine Learning Engineer

求職方式:透過人力銀行主動找我面試

面試方式:線上測驗 & 面談

面試內容:

面試者進公司前,先用電腦做python測驗、性向測驗和英文測驗,測驗通關後跟主管面談。

接下來到面試考試內容,Python測驗為20題左右的選擇題,考題頗有鑑別力,包含python語法 (e.g. map,filter)、numpy語法 (e.g. broadcast, shape, newaxis)和機器學習(e.g. CNN,pooling, batch normalization, gradient descent)。性向測驗和英文測驗時間都很短,建議一開始就用最快的速度寫完。

在面試前需要先填個人資料表,包含個人照片、身分證號、戶籍地址、家裡電話、父母是誰幾歲做什麼等。這位軟體工程師覺得有點侵犯個人隱私,所以有些內容沒填,主管好像不會很在意有留白,給大家參考。

面談時,主管先介紹公司產品和商業模式,之後問了一些影像處理相關的經驗和細節,最後考一題情境題,問要怎麼做微表情的情緒分類,可能可以從資料收集、標註、前處理、模型設計等多方面開始考量。

面試結果:無聲卡

第三間公司面試分享:MixerBox的Engineer Trainee

求職方式:求職者寄email投遞履歷

面試方式:線上測驗 & 面談

面試內容:

HackerRank線上測驗邀請三題難度在簡單到中等之間。測驗完成後隔週,收到Skype線上面試邀請,整體面試流程約1個半月,因為被告知考題需要保密,以下只提及準備方向。

第一次面試技術測驗:(總時長2.5小時)

與一位工程師面試1.5小時,不用自我介紹,直接開始考技術,使用HackerRank的共編。總共考了兩個大題,每大題含基本題+2題follow up,難度大概是中等,考題方向是array和graph(bfs, dfs)。

技術問答結束後,30分鐘聽HR介紹公司和團隊,我這邊分享一些內容,讓大家能更認識MixerBox。公司的商業模式主要仰賴投放廣告和APP內購物,廣告大多在日本和美國投放,台灣因為市場小廣告利潤不多,所以沒有放廣告,常做為演算法A/B test的地區。

公司有主要的三個團隊:MixerBox、FreeTV和研發導向的研究室,研究室中有比較成熟的項目就會轉成一個新的團隊。而MixerBox最近發展方向是推廣podcast,內容需要去各個網站爬蟲抓。

第二次面試技術測驗:(總時長2小時)

與兩位工程師面試,每位工程師一個小時,各自考兩題程式題,難度大概是中等到困難,考題方向包含matrix(bfs)、monotonic stack、monotonic queue、3sum變形、intervals、balanced tree等。

整體難度高,我大多是跟面試官討論後,得到提示才慢慢解出來,面試官人很好,會提點思考方向。最後,可能是技術關解題實力不夠,原本是投後端工程師,後來被通知改面試Unity工程師。

第三次面試團隊成員:(總時長1小時)

與人資和工程師主管聊天,問一些非技術性的面試問題。

例如 : 全世界最喜歡哪3家軟體公司?為什麼?如果拿到這3家公司的offer會怎麼選擇?比較注重公司名氣、職缺內容或薪水?工作內容透過面試了解可能很抽象,這樣會怎麼抉擇?平常怎麼自主學習?有沒有用刷題網站練習的習慣? 比較不擅長的領域?比較喜歡做大或小的專案?在團隊中喜歡聽指令或是擔任領導者?

儘管沒能拿到offer,我覺得是新鮮人友善的公司,面試要求只看資料結構和演算法,刷題數可能要200 up比較穩。面試流程也相當舒適,面試前會提點準備方向,該怎麼聊履歷上的個人經歷,才符合公司文化,面試後大約一週就能知道結果,推薦有興趣的人去試試看。

面試結果:一週後收到感謝函

第四間公司面試分享:趨勢科技的Software Developer

求職方式:透過人力銀行投遞履歷

面試方式:現在測試 & 面談

面試內容:

收到Codility線上測驗邀請,三題難度在簡單和中等之間。之後安排到公司面試,由HR自動配對能面試的職缺。進公司以後,首先做QA職缺的Codility測驗,是針對相對資深職缺,內容包含Windows、Android和IOS的debug工具、瀏覽器、網頁前後端,以及三題系統設計簡答題。

第一輪是面試QA,請面試工程師聊過去的經歷,並問了一題情境題,請問要如何測試一個log in的網頁?另外也問我對QA的角色和想像是什麼,覺得QA都在做些什麼事情?

第二輪面試有兩個團隊,先進行自我介紹過去,了解經歷。第二階段還包含了OS相關問題,像是解釋race condition和deadlock、實作critical section、mutex和semaphore、process和thread的差異、inter process communication那些經驗等。印象最深刻的一題:【如果程式碼的行數到10000行以上,要如何debug?】

整體而言,面試官們知道新鮮人的實力能夠再進步,所以主要還是看對工作的熱忱和態度。

面試結果:兩週後主動寄信跟進,最後收到感謝函

第五間公司面試分享:AICS的Software Engineer – Big Data

求職方式:透過官網投遞履歷 (HR要求補寄在校成績單)

面試方式:線上測試 & 線上面談

面試內容:

1週後收到Codiity線上測驗邀請,難度從簡單到中等。測驗完3週後,收到Microsoft Teams線上面試邀請,面試流程大約1個月。

第一次面試技術測驗:(總時長1小時)

與工程師主管聊天,考兩題程式,難度簡單到中等,基本上主管都會主動與我互動並給予提示,讓我慢慢構思可優化的部份,面試官很友善和也很有溝通能力。

第二次面試技術測驗:(總時長1小時)

與工程師主管聊天,考一題程式,難度中等。沒有的提示,必須自己構思。

第三次面試技術測驗:(總時長5小時,含中午休息1小時)

總共有四輪,每一輪有一位面試官,50%的時間彼此認識,剩下的時間考試。

第一輪,面試官是ML背景,過程中聊到經歷,大多擔任什麼角色,最驕傲的專案是什麼等。程式題考matrix,難度中等。

第二輪,面試官是系統背景,面試時,比叫針對系統面的設計問題。另外還問我,如果要設計一個系統,裡面有很多consumer和provider,要怎麼設計比較高效率?還有問在小組合作時,有沒有遇到摩擦或衝突的經驗,會怎麼處理?程式題難度中等但偏簡單。

第三輪,面試官是ML背景,聊到碩士論文的創新點,應用價值等。還有追問強項和弱點,以及敗的經驗,學到了什麼。程式題是考DP,難度中等。

第四輪,是由黃泰一博士主導。簡單聊天後,考了兩題,一題中等和一題困難的題目。

追加面試:(共3次,與未來主管聊1小時、與HR聊60分鐘)

三個面試結束後,經過大概2個工作天,我就收到專案主管的聊天邀請,過程中拿到口頭offer,因此主要在聊專案目前的進度,以及之後的工作內容。

另外還有兩次HR面談,第一次主要聊聊個人特質、職涯規劃、期待薪資和詢問競爭對手公司,第二次是講解薪資福利等。

面試結果:收到公司offer

結論

大家看完這些心得分享後,對面試有一定的了解,在一些細節的方面可以多下功夫。所以除了每天刷題維持手感以外,還需要複習了各式各樣的學科知識,包含資料結構、演算法、作業系統、SQL、Design pattern、機器學習、機率統計等,或是針對你的領域而去著手。

Glints建議刷題和複習知識只能算是基本功,透過持續練習面試的問答與技巧,讓自己有更穩定的面試表現,才是決定能不能拿到offer的關鍵因素。另外,如果能有明確的目標公司和職缺,集中精力準備少數公司,也是更有效率的做法。

如果你希望可以得到更多資訊,可以追蹤Glints的臉書粉絲頁,每個星期都可以看到熱門職缺與職涯資訊 。

你也可以到Glints – Taiwan去了解更多!或是註冊帳號,收到職缺通知!

延伸閱讀:

對軟體工程師區是和面試有興趣的人,可以看看Glints的其他精選文章

About Author

Passionate writer, who love to tell stories that are both informative and impactful!

Leave A Comment

Your email address will not be published. Required fields are marked *