那我也來借標題分享一下吧,剛好我這次也有拿到大大前公司的offer XD
憑記憶分享,細節就不用太考究了
主要想分享behavior/culture的準備(大家比較少關注,但我們其實在這裡刷了不少人)
跟熊貓的內部狀況,一些Hunter不知道,但開發者們可能會在意的東西
前情提要:
本人普通私大本科畢業,約十年經驗(不是都iOS)
前職在旋轉拍賣,第一年在新加坡,第二年因為疫情我內轉回台灣,
上半年時為了面FB認真刷了100題leetcode(然後沒上~囧)
想說都準備了就順便面一些國內公司吧,不然好浪費
其實本來沒想要換,薪資也差不多,但還是換了,最後會分享原因
1. ProtonMail
這間是年初時為了暖身面的,時隔一年跟現在狀況可能會有落差,
不過我記得這間滿少資訊的就還是分享一下
作業->PhoneScreening->OnSite(LeetCode + System design)->culture(英文)
作業是給你一個未完成品專案去做優化,限時多久忘了,但要做的事很多是做不完的
時間掌控在每一關都很重要,要學著分配
我這裡是著重在critical bug fix 跟架構上的重構
PhoneScreening 跟 culture 沒什麼特別的
On site 的 live coding 跟別人比較不一樣,是一次給你10題leetcode,
不照順序限時內自己去寫完,都是標準原題,沒什麼特別變化,就是看你有沒有刷題了
Offer: 1.8M(12m, 含7%bonus)
2. FB
太多資訊了,反正我也沒上,略XD
3. Garena
線上測驗-> PhoneScreening -> LiveCoding -> 我們找到人了~掰掰
LiveCoding 題目我覺得滿有趣的,聽說跟蝦皮一樣
實作 table view reuse 機制,有興趣可以自己玩一玩
4. 17 Live
一天搞定,無Live Coding,輪流跟每一個team做面談,大概重覆 5~6 round
技術相關問題:MultiThread 、聊天室爆大量時的處理、模組化等等
Offer: 2M+ (14m)
5. 群暉
填傳統面試表單-> 2~3面我忘了,內容一樣(leetcode+iOS問題) -> culture
leetcode我覺得沒謠言和版上搜到的那麼難,可能面mobile的題目不一樣或有調整過?
Offer: 1.8M(大概一半要靠bonus)
6. FoodPanda (全英文)
線上測驗 -> PhoneScreening -> LiveCoding -> SystemDesign -> Culture
線上測驗用 Codility,兩題 leetcode 大概 easy 等級
PhoneScreening 就是請你解釋線上測驗的題目,再問一些簡單的 iOS 問題
LiveCoding 再給你一題 leetcode,再問一些比較不簡單的 iOS 問題
SystemDesign 因人而異,有些是傳統型(設計一個 IG Feed 那種)
有些是要寫code的,比較偏architecture,給一個很清楚的需求
從切protocol開始到怎麼分配權責,最後再叫你寫個測試
Offer: 2M+ (13m)
再來是我想分享的重點:
關於Behavior/Culture的準備
我上一波面試時是用考古題來準備,像是
你怎麼處理意見不同?、面對過什麼最大的挑戰?等等列了一大串
實際面完我覺得這方式有幾個缺點:
1.題目一個不一樣我就會當機,變成隨機應變
2.很難做小抄筆記,太長了根本不可能在面試中即時找到
現在我的準備方式是:用故事的方式列出來,加配上tag,像是
做了某某某重構[disagreement][achievement]
主導某某某專案[disagreement][leadership][challenge]
好處是
1. 每個回答一定都會搭到一個案例,不用等面試官問有沒有實際案例
2. 不會漏講,可以引導到你的長處,只要跟題目有擦到邊就可以帶過去
我用了這個方法後在每個behavor關評價都不錯(FB 唯一有拿到正面評價的一關QAQ)
供參考
最後最後分享一下最後選擇的新公司吧
很多人應該都有被Hunter打到,但我猜多數人可能沒什麼興趣,
因為我一開始也是這樣想,Hunter丟出來的訊息也沒什麼特別的
不過他們也無法給什麼特別訊息,因為台灣目前只有我一個iOS XDDD
講一些我覺得吸引我的點,希望也可以吸引到一些大大來當我同事
1. VIPER + 全模組化,每個team有自己的module,你有多久開發中沒有秒build了呢?
2. 每個PR都會要求要有unit test,coverage 太低你CI是過不了的
3. code review 是自願制,你自己PR沒切好就不會有人想去幫你看
4. 測試金字塔,除了unit test還有integration test跟UI test
5. DDD 開發,落實上就是每個 team 都有完整的 C4 model 跟架構圖,
新feature寫code前要先有RFC,相關人員會在上面討論,
最後要丟回 iOS team 拿到 approve 才能開工
有興趣的可以直接找Hunter或丟HR,要我內推也可以(但過程跟結果不會有變)
Android人數已經是iOS 5倍了T_T,跪求大大們來救我啊~~Orz
有任何問題一樣歡迎私訊:)