面試問答
加減乘除計算機實作+加減括號計算機實作
以前上課學過的解法
聽HR說面試總共分為3關
第一關為線上測驗(online assessment),HackerRank 120分鐘
5題,難度大概簡單到中等,印象中有一題大概是這樣
https://stackoverflow.com/questions/58566800/comparing-products-given-three-seperate-lists
還有一題是給N個人的人際關係,請輸出總共可以分為幾個團體
答出4題以上應該就會安排現場面試
公司位置在捷運站附近走路10分鐘左右。
辦公室環境正常。
第二關為現場程式測驗,在公司的一間小會議室進行,公司會提供Macbook Pro作為上機考的筆電。
第一組面試官會出一道題目還有加分題,限時1小時作答,不能上網查資料,不能用terminal,可以用有自動提示功能的IDE,可以隨時問問題。時間到了,面試官會請你解釋你的解題策略,並告訴你寫的code有沒有漏考慮什麼。
第二組面試官會出一系列的情境題,每一個子題都有input以及output的格式與範例,在寫code前,面試官會請你先提出你認為需要的測試資料。最後三個子題會使用前面所有子題所寫的function進行擴充。
兩組現場程式測驗完後,接著是HR面談,內容包含自我介紹,離職原因,公司介紹,發問。
HR說面試結果通常會在1周內信件通知,若有通過,則會安排與CTO進行面試;若未錄取,也會通知,不會無聲。
面試問答
加減乘除計算機實作+加減括號計算機實作
以前上課學過的解法
調整資料的平均值+給定上下界過濾資料
基本數學問題
面試建議
第一關的建議,多在一些線上程式網站(如LeetCode, HackerRank)練習寫題目。
因為沒有通過第二關,但第二關的題目我都有解出來(包含加分題),所以以下是自我反省後的一些建議:
1. 因為不能查資料,所以要把一些常用的function摸熟,例如涉及字串處理的function
2. 限時一小時的程式測驗,要把握時間,盡可能地快點解出來。同時也要考慮清楚各種可能的測試資料,漏考慮的話都會被扣一些分數,例如除以0
3. 系列題的最後一題問如果可以打掉重練會怎麼設計。當時沒有多想,提出了一個能應付題目的需求,但是可讀性/維護姓比較差的設計,事後想想如果建enum和建class應該會好些。所以建議可以多看些物件導向設計方面的資料,或者design pattern