鑒於版上有關實習的心得文不多,所以來分享這段有點長的過程順便騙騙P幣
在流程中都沒有被要求簽保密條約,就視同是可以分享過程
如果各公司的人員看到覺得不妥可以私信我我再撤下
## 背景
112 資工系大二,兩份實習經驗,一份仍在職中
專長是 DevOps、cloud、backend (Django)
接觸這些領域快一年
主力語言 Go > Python
除了趨勢以外都是透過 Linkedin 投遞履歷
面了五家,包含 Amazon、Grindr、Dcard、趨勢、Intel
全部都是視訊面試
以下以流程的最後結束時間做排序
## Grindr (backend)
要先完成一項 Java 的作業,是轉帳和認證的 API
使用 JOOQ 做 SQL 查詢和插入,
挺簡單,個人沒有任何 Java 基礎,但靠 IDE 提示還是做出來了
### 面試
一對一面試,兩位後端工程師 + 臨時新增的一位 Tech Lead
先上機考一題 Leetcode Medium,預設語言是 Java
但我思考了一下想到不會用 Java 的 sort,就厚著臉皮問說能不能改用 Python
(沒有信心能用不熟的語言刻 Merge Sort XD)
考完上機之後開始問問題,我有點意外問了不少 OS 相關的問題
包含 multithread、deadlock、process/thread 的差別等等
因為一些原因這學期沒修 OS,只能憑修系統程式設計和偶爾看社群文章的印象回答
但應該還算有回答到正解的六七成吧
另外也問了 CI/CD、SQL、OO 等概念;
behavior 的問題則像是遇過最困難或最有成就感的事,或修了哪些課等等
### 面試結束後
HR 隔天寄信來感謝面試,並說明一到兩周內會公布結果
待遇:$2500 / day
結果:reject
## Dcard (Backend)
一樣要寫作業,是一個 Web 的 middleware,
同個 IP 一段時間內造訪太多次則送 429
因該公司的 tech stack 正在遷移到 go
所以我就用了 go + redis 去寫
同學用 node.js 寫出符合要求的作業被刷下來,不知道這關刷的依據是什麼
### 一面
兩位面試官一起面,問履歷的問題不多,要我聊聊遷移資料庫的過程做了什麼
另外有技術確認的部分,
問了 git reset/ restfulAPI / TCP 和 HTTP 的關聯 / response/request headers 等等
這裡個人回答得不太好,有些自己覺得滿 trivial 的東西都想說要用到再查
就在這裡踢到鐵板了
另外他們知道我會寫 go,也問了一些跟 go 相關的問題
像是 channel 和它 block 住怎麼辦,也有上機要我實作 worker pool
官方有程式碼,幾乎和那個一模一樣
待遇:$35000/month
結果:reject
## 趨勢 (Backend, QA)
透過 104 投遞履歷,大約兩個禮拜內被 HR 聯繫,
並要求做 online coding test (2hrs)
有給完成 test 的 deadline,但我忙於社團事務多拖了兩個禮拜才做
還是進後續的環節了,deadline 都是假的有沒有做好才是真的(?)
coding test 不難,大概就 leetcode easy 的程度
### 面試
兩個 team 一起面試(我有同學只被一個 team 面)
總共六個面試官輪流問我問題
這次面試就幾乎都繞著履歷上的問題和我的回答做延伸
包含 aws、CI/CD pipeline、單元測試的經驗、怎麼接觸 DevOps、
為什麼會學 Python 等等
也有 behavior 的問題像是遇過的困難、時間怎麼安排等等
最後兩個 team 也有輪流介紹他們在做的事情(但這裡我已經累到走神XD)
大約三個禮拜後 HR 告知最後結果
待遇:$200/hr
結果:Backend reject, QA offer get
## Intel (Chrome Automation)
透過官網投遞履歷後,大約 20 天後 Hiring Manager 會聯繫
### 零面
Hiring Manager 解釋這個職位在幹嘛,介紹後續面試的流程,並開放提問
沒有壓力,不需要回答什麼
### 一面
三位面試官,一對一面試各半小時
#### 1st (automation)
問 CI/CD 的經驗、對會 crash 的 program 怎麼 debug、
怎麼對一台機器部署程式,follow-up: 對兩千台機器部署
再 follow-up: 如何監控這兩千台機器,遇到錯誤狀況如何解決
後面再延伸一兩題
#### 2nd (algo, os)
問滿簡單的演算法,解釋二元樹、二元搜尋樹,操作複雜度等等
問什麼是 divide and conquer;
另外問了一題自動化的情境題是怎麼在有些 git commit 是爛的情況下
在 pull request 前確保 quality
#### 3rd (behavior)
問做過最自豪的專案或經驗、因自己的問題而失敗的經驗、前幾份工作經驗
### 二面
一個禮拜內 Hiring Manager 連絡說要二面和美國 Intel 員工聊聊
(以上這些流程都是零面就已經提醒過的)
早上 8 點配合對方時區而視訊,氛圍的確是閒聊為主
問了兩份的實習經驗,討論 python 和 go 的差別等等
二面完隔一個工作天 HM 連絡我說結果盡快在兩天內出來
結果:Offer get
## Amazon (Solution Architect)
官網投遞履歷大概半個月後 HR 聯絡
### 一面
技術問題包含解釋 User 發 request 到一個網站,這中間解析 IP 的機制(DNS)、
Reverse Proxy、CI/CD、開發 web application 的經驗、我的網站架構等等
非技術問題也問滿多的,包含問我溝通能力如何、願不願意在超過 20 人的場合演講等
最後有要我用英文自我介紹,然後用英文問我畢業之後要幹嘛
英文自介完全沒準備XD 講得挺爛
### 二面
一面結束兩天後聯絡二面
兩位面試官各一對一面試,第一位是技術面試
問了前一份實習經驗、對 DevOps 的理解、我網站的架構、
討論自架服務和雲端服務怎麼做選擇等等
也和我討論如果以我的網站為例要怎麼設計高可用性的架構
(我這裡回答多台機器並用 k8s 部署,follow-up 就問各節點掛了怎麼辦)
也問一些非技術的問題,如有沒有在很短的時間內完成一個專案、和 PM 合作的經驗等等
第二位 behavior 面試,和一面是同位面試官
問我自學這些技術的起源、怎麼決定要先學哪個東西、
遇到 negative feedback 怎麼看待等等
結果:一個月無下文,寄信問 HR 對方說我在 Waiting List,要等多久不知道
## 其他
有投履歷但無聲卡:Google、CommScope、NetApp、AI Labs(應該還有但我忘了)
投了但停招:yahoo、Dell
另外 HPE 的 HR 曾聯絡我,但工作時數不合期待就婉拒了
我同學有在面的(我沒丟):Microsoft、ASUS
## 心得
第一次這樣海投履歷,前兩份都是只丟一間然後就上了
聽說今年特別難找,我沒有對照組不太確定
但被 reject 到懷疑人生,還好這禮拜陸續拿到 offer
面試的過程學到很多,深刻體會自己底子很不紮實,OS、SQL 等觀念都超級菜
程式開發的經驗也不多,運氣倒挺好幾乎沒被考到演算法,有也考到我會的(?
Intel 只給我一天時間考慮,所以 Amazon 那邊如果沒給我希望的話
大概就是去 Intel 了
以上,東西滿多的也不知道大家要看什麼,就寫得很雜
有什麼想問的我視情況回答