咖啡資訊集合站

Ubiquiti 面試 作業、優比快offer、美商 優比速ptt在PTT/mobile01評價與討論,在ptt社群跟網路上大家這樣說

Ubiquiti 面試 作業在[心得] Senior iOS 面試/分享- 看板Soft_Job

作者[心得] Senior iOS 面試/分享
標題jimmy789lee (LEVEL_UP)
時間2021-12-18 15:27:20 UTC


哈囉,大家好,版上已經很久沒有 iOS 相關的分享了,而且好像沒看過 Senior 的文章
我來分享最近這陣子找工作的經驗拋磚引玉,看能不能吸引到各路大神來分享

先自我介紹一下,本人學歷是 NTUEE 學碩,在亞東醫院的系統/軟體公司工作了四年,在
最後有升到 Senior,參與過的事項大概如下
1. 參與過多個 app 的維護,和新 app 開發
2. 幫忙從零開始架設內部的 Jenkins 和 fastlane
3. 從沒有 framework 版控的情況導入 CocoaPods 和 SPM


搜尋職缺:
1. 求職網站:
Yourator, CakeResume, Meet.jobs 等等,大部分的職缺距離目標薪資還有一段距離,
不然就是接近上限才能達到,後來我沒有從這邊丟履歷
2. LinkedIn Jobs:
這裡比上一個方法好的是容易搜尋可遠端的工作,找到感興趣的職缺還滿多的。但後來
都沒有投,因為要針對公司來修改 CV 要花很多精力
3. Hunter:
後來先作了一個 CV 的樣板,把 LinkedIn 的狀態更改為積極求職中,就陸續有 hunter
來聯絡了。後來有去面試的公司都是從 hunter 來的


Hunter 推薦被拒絕:
9 Count-Wink:這家覺得我開 1.8M 太高了,他們的上限似乎是 1.4~1.5

有投還沒結果:
Amazon Ring: 已經在 Ring 內部建檔了,但都沒消息

進到面試流程的公司:
(新公司), 17-Wave, Xendit, Omlet, Swag, Ubiquiti, Foodpanda

面試的過程都差不多:自我介紹、白板題、測驗 iOS 知識、互相問問題
下面如果沒有比較特別的事項就不再花篇幅介紹
底下針對每間公司順序作介紹,新公司放到最後,因為特別想分享他們的面試題目


17-Wave:

第一部分要設計一個聊天室,包括 UI, Cache, DB, API 大概的組成。這部分都是透過口
述進行,所以沒辦法說得很清楚
如果可以重來的話,應該要開 draw.io 直接畫出來,可以避免來回確認,也方便後續討論

第二部分是前一部分的延伸,如果現在有高流量的訊息要怎麼處理?
UI 會不會卡(DB lock, main queue 更新時機)? API 怎麼變更設計? ...
這部分我應該就回答得不太好,因為我確實沒有處理高流量的經驗

結果:Wave 通知 hunter 結束面試


Xendit: (全英文面試)

有面試前的線上測驗,十幾題選擇題和一題程式。
題目內容很廣,除了 iOS 以外還有問一些網路、資料庫方面的問題
除了有一題問 Http Auth 的完全看不懂以外,其他的我記得不會很困難
據 hunter 的回饋是他推薦的其他人選都沒有通過測驗就是了

通過測驗之後與技術主管面試,剛好前一天去打疫苗,面試的時候頭昏昏的
連我自己都覺得講得很爛,不到半小時就結束面試QQ

結果:Xendit 通知 hunter 結束面試


Omlet:

這家的產品不太作宣傳,但用戶數量滿驚人的,應該是滿有潛力的公司

有面試前的作業,內容不能透漏,有測驗到的技能是:
data decode, UICollectionView,還有一個加分項目

通過測驗之後到現場面試,一次來四個面試官。面試過程沒有比較特別的題目
考了兩題演算法,和一個實作畫面(怎麼拆 view, 比較複雜的 autolayout 設定)
另外公司有一定比例的外籍人士,有一段面試過程要求用英文回答

結果:隔天收到感謝函


Swag:

有兩題面試前的題目,我判斷難度應該都是 easy

通過測驗之後到現場面試,問問題的過程中,感覺到特別注重 GCD 系列 api 的用法
sync, async, serial concurrent, semaphore, group 等等

履歷的部分問得非常詳細,是所有面試的公司問得最多的,應該是所有寫到的東西都問了
像是我寫到有 RxSwift 的經驗,就問了導入的時候有遇到什麼困難、怎麼處理,另外問知
不知道 Rx 後面的原理(Observer),怎麼實作
另外我有提到 UI/Unit test, refactor,就問了是從專案的什麼方向切入開始作,策略是
什麼,怎麼兼顧 release 的時程
後面還問了很多以前團隊運作的流程、怎麼協作分工,以及各式各樣的問題。應該是把所
有能想到的東西都問了一遍,是所有面試裡面耗時最長的,花了兩個小時左右

*很重要的一點,這裡以後的主力會是 Flutter 開發,不過團隊偏小,我記得目前是5人

結果:等待中


Ubiquiti:

團隊目前有這在開發的產品,IOT相關,我猜應該和 Amazon Ring 是類似的東西,但是
Ubiquiti 有網通產品,應該有比較深度的整合。進去之後會加入這個團隊
沒有問比較特別的問題

結果:收到其他 offer 了,通知 hunter 結束面試


Foodpanda: (全英文面試)

有兩題面試前的題目,我判斷難度也都是 easy。限時一小時,我19分鐘完成 AC 100%

通過測驗之後由新加坡的人資面是,根據資我介紹和履歷的內容詢問過去的經驗
另外特別提到目前團隊主要使用 MVVM, VIPER

結果:太晚開始這間的面試,加上我判斷可能難以 compete offer,婉拒後續面試


新公司: (全英文面試)

第一關: mobile head - 問答 (一小時)
一開始介紹公司的產品,內部的開發流程、團隊組成
接下來問了一些 iOS 相關的問題,沒有太深入,不過有問到一些沒那麼常用的 api
- frame, bounds 的區別
- 解釋 autolayout 的 compress, hugging priority

第二關: iOS Developer - live coding (一小時)
第一大題是給一個截圖實作目標畫面,並且從指定的 api 拉資料
先用假資料來把畫面建出來:UI 的部分是 CompositionalLayout, DiffableDataSource,
CellRegistration,資料部分是 Codable,這裡應該都算基本功
再來是要從 url 下載圖片顯示到 cell 裡,這裡就注意 background 和 main 切換
再來問分頁式的 api 要在什麼時機呼叫,讓畫面可以隨著捲動載入更多資料

第二大題要實作一個 UIScrollView subclass,讓他可以有好多個 delegate
有要求一個介面來新增 delegate ( addDelegate(_ delegate: UIScrollViewDelegate )
我的作法是這樣
1. init 之後設定 self.delegate = self
2. 宣告一個容器來裝所有 delegate (var delegates: [UIScrollViewDelegate])
3. 實作每個 delegate function,傳給第二步容器內的每個元素
不過這裡有個陷阱是 Swift 並沒有 weak array,但又必須讓 delegate 是 weak ref
這裡有想了一下,在面試官稍微提示之後想出來

第三題問知不知道 Optional 的實作,是兩個 Case 的 enum (應該是常識?)

第四題先要我解釋一下 weak, strong ref,然後問怎麼實作一個像 ARC 的系統
這裡的話就是先分析一下 ARC 的規則:
1. A ref B, B ref count +1
2. ref count 歸零,物件 release
第一條規則就是系統需要記住 B 被哪些人 ref,這個關係和物件被持有的方向是反過來的
第二條規則就是 A 被 release 之後,需要類似 notification 的機制找到所有被 A ref
的物件,然後把 A 從 ref list 刪除

這一關的面試應該算非常順利,有被面試官稱讚對 api 很熟悉,比較困難的部分也在一點
點提示之後就想出解法,面試官看起來很意外,一直被稱讚
本來一小時的安排應該只有前兩大題,因為前面比較順利所以又多了後面的部分

第三關: iOS lead - live pseudo coding
考的是系統設計,題目是設計一個西洋棋的系統,讓兩個玩家可以進行遊戲,不用考慮 AI
我的設計是分成 Player, protocol Piece, GameRunner
判斷棋子移動和吃子規則寫在十作 Piece 的 type 裡面
GameRunner 會記錄盤面,判斷獲勝條件等等的
follow up 問:如果現在有個新種類的棋子,是騎士和城堡的合體,要怎麼實作
這裡就是用 composition 把新的類型實作出來

結果:offer get
薪資:>2M + RSU + sign on


最後結果是只拿到一個 offer,不過已經有達到期望,其他進行中的可能也比較難compete
不然就是要等很久,再加上密集面試也累了,就結束之後的面試


最後分享一些準備面試的心得

- 刷題?
我對白板題的看法是沒有需要特別準備,除非你是新人或者要面 FAANG
我自己是刷個一兩題 Easy, Medium,找一下解題的手感而已
雖然前公司也是以困難的白板題出名,但這可能是必要之惡
對新人來說,沒有經歷可以證明程度;對大公司來說,必須快速篩掉大量的履歷
但是對 Senior 來說,對蘋果生態的熟系度還有建立架構的能力我覺得比解題重要多了
工作中實際需要自己實作的可能也就 BFS, DFS,剩下的在 Foundation 都有了

- 英文能力
我認為有英文溝通的能力絕對是在職涯上更進一步的關鍵,但這並不表示英文能力是第一
順位,有一定程度的實力再來加強英文可能是比較適當的做法
加強的辦法我自己是多聽一些 podcast 和 youtube,習慣一下各種語速和口音
準備面試的部分,可以把自我介紹的內容寫成稿,然後務必要試著講幾遍
follow up 會被問的部分心裡也要有大概的劇本
再來是回答的時候不要緊張,也不要太擔心文法是否正確,慢慢講,確保內容清楚就好

- 進修資源
等 Xcode compile 或是通勤的時候就可以多翻翻
1. twitter: 很多大佬都掛在上面,可以獲得很多第一手踩 bug 的資訊
2. 大佬的網站,推薦幾個
- General:
- John Sundell: 大佬中的大佬,特色是用不會太長的篇幅解釋各種觀念和語法
另外有經營 podcast,邀請各式各樣的開發者上節目
- Hacking With Swift: 比較偏初學的資源,但偶爾還是會找到有趣的東西
- SwiftUI:
- Swift with Majid: 比較進階的技巧,也許是奇技淫巧的範圍,有點難拿捏
- Mark Moeykens: 有一些免費的電子書
3. 付費資源:
- PointFree: Composable Architecture 的作者,目前有幾十小時的內容,除了介紹
TCA,我覺得更重要的是它引導 functional 觀念的部分,大推
- Essential Developer: 處理架構和測試非常厲害,有在 youtube 直播 live
mentoring session,大推
4. 週報類:
- 13: 13 大大的週報
- 老司機周報: 簡體中文。這裡有時候混很多 Flutter 的玩意就是了,哭啊
- iOS Dev Weekly: 老字號英文週報
5. Swift 本身 Evolution, Proposal:
- 行有餘力的話可以來這裡看看,也可以翻翻看之前的 roadmap。了解一下大佬的思考
過程,也可以了解一下 Swift feature 是怎麼產生的



大家有什麼想討論的,歡迎在下面留言
如果有什麼不方便公開討論,或是想詢問我的問題,可以站內信
或是想辦法找到我在其他平台的帳號直接私訊我(應該沒有很難找?)

--

推 Raymond0710: 恭喜!推!好奇第一份工作怎麼會選擇醫院 12/18 15:33
→ Cprimer: 樓上誤會了 應該是群暉 12/18 15:40
推 kyrie77: 推 12/18 15:43
推 energyaup6: 強者一生推 <(_ _)> 12/18 16:41
推 dapple: 感謝分享 12/18 16:45
→ final01: 雖然看到後面會知道是群暉,不過前面也不用這樣寫吧... 12/18 16:58
推 ID3238: 推一個 內容很扎實 好奇後續去哪邊就職? 12/18 18:05
推 tofuflower: 好奇問問你覺得現在資深 iOS 兩百的職缺好找嗎?web 12/18 18:48
→ tofuflower: 後端我覺得現在資深那兩百不會太難找(當然也不是隨 12/18 18:48
→ tofuflower: 便都有兩百),不知道是不是自己同溫層。 12/18 18:48
推 asleisureto: 原來是群暉,本來還想說能從醫院it直接跳2M很天生神 12/18 19:13
→ asleisureto: 力XD 12/18 19:13
推 Obama19: Wave有高流量? 12/18 19:13
推 lonelymmm: 大推,祝樓主一生平安 12/18 19:19
推 humanfly: 看了很久還想說學歷這麼好跑去醫院 12/18 19:30
→ jimmy789lee: tofuflower,我覺得不太容易找,基本上只有hunter給 12/18 19:31
→ jimmy789lee: 的缺才有達標的,可能我也需要精進一下怎麼在Linke 12/18 19:31
→ jimmy789lee: dIn上找到好職缺的眼力吧 12/18 19:31
推 x246libra: 厲害,英文真的是坎,好無力 12/18 19:32
→ keyboard56: 看來200的缺真的鳳毛麟角,大部分150比較多一點 12/18 19:35
推 popcool: 從面試內容大概猜到新公司是哪家,沒想到後面這麼硬,原p 12/18 19:38
→ popcool: o真高手 12/18 19:38
推 wei12f8158: 推強者 12/18 19:59
推 Hack: 真強者 推 12/18 20:04
推 WaterLengend: 資源整理推 12/18 21:10
推 shiauji: 推分享 12/18 21:14
推 ohmylove347: 推 12/18 21:19
推 gragon: 我也以為在醫院 12/18 23:06
推 andy9595995: 大大太強,推分享 12/19 00:03
推 holebro: 好想去群暉喔 12/19 00:05
→ DrTech: NTU的找工作分享文都很有系統,個人想法,與邏輯啊。真的 12/19 00:12
→ DrTech: 很欣賞有想法,有系統化找工作的人。 12/19 00:12
推 eric111043: 推強者 12/19 01:21
推 zmcx16: 推 12/19 01:44
推 genius945: 推,強大的分享 12/19 11:15
推 jj2564: 大推,感謝分享! 12/19 12:20
推 MiracleShot: 恭喜升級了! 12/19 12:39
推 bewitchsky: 推 12/19 15:49
推 Funkshow: 跪了 12/19 16:07
推 IhateOGC: 想去swag 12/19 19:56
推 Mike1109: 推推 期待大神分享更多iOS相關心得 12/19 23:52
推 jiujibye: 感謝分享 12/20 00:56
推 kattte: 感謝分享 12/20 02:04
推 hellomotogg: 推推 12/20 02:47
推 worcdlo: 推,一直在想是否別急著出國,去貴司先待兩年會更好 12/20 18:44
推 kids1243: 推 12/20 19:21
推 cacadeon: 感謝分享 12/20 20:05
推 bewitchsky: 推 12/23 21:26
推 mike8469: 大推! 12/25 11:57

Ubiquiti 面試 作業關鍵字相關的推薦文章

Ubiquiti 面試 作業在面試心得–Ubiquiti 優比快科技 - 關於| BetterLog的討論與評價

作業 題目. 應公司要求不得揭露於任何公開環境中。方向為需在7 日內實作一個Python Web Application,並以壓縮檔 ...

Ubiquiti 面試 作業在[面試] Ubiquiti Skype interview | Timmy的軟韌體開發筆記的討論與評價

進入職場後,我開始了解linux 驅動程式的開發,因此這三年的工作時間,除了就學期間的基礎知識之外,也擴展了嵌入式linux 作業系統的相關能力與知識。並 ...

Ubiquiti 面試 作業在美商Ubiquiti 優比快PM 面試- Jessie Chang的討論與評價

面試 分兩次,第一次跟工程師的manager ,第二次跟台灣的大主管,兩位都是可以打Ubiquiti 搜尋新聞看到的角色。工作內容是作業系統的PJM, 但不排除做product 的工作, ...

Ubiquiti 面試 作業在ptt上的文章推薦目錄

    Ubiquiti 面試 作業在Ubiquiti 面試作業、美商優比速ptt的討論與評價

    Ubiquiti 面試作業 在PTT/mobile01評價與討論, 提供美商優比速ptt、優比快dcard、ubiquiti前端就來台鐵車站資訊懶人包,有最完整Ubiquiti 面試作業體驗分享訊息.

    Ubiquiti 面試 作業在Ubiquiti_香港商優比快科技有限公司 - 面試趣的討論與評價

    Ubiquiti _香港商優比快科技有限公司面試經驗、面試問題、自我介紹、面試準備、面試流程、薪水年終等精彩內容都在面試趣。最新面試:Office Assistant面試、Test ...

    Ubiquiti 面試 作業在[心得] Senior iOS 面試/分享- 看板Soft_Job - 批踢踢實業坊的討論與評價

    ... Ubiquiti, Foodpanda 面試的過程都差不多:自我介紹、白板題、測驗iOS 知識、互相問問題下面如果沒有比較特別的事項就不再花篇幅介紹底下針對每間 ...

    Ubiquiti 面試 作業在Ubiquiti_香港商優比快科技有限公司薪水情報的討論與評價

    Ubiquiti _香港商優比快科技有限公司薪水、年終獎金、公司福利等精彩內容都在比薪水。最新薪水:sw薪水、電源工程師AC/DC薪水、Mechanical Design Lead薪水.

    Ubiquiti 面試 作業在[心得] 轉職3年後面試心得分享- 看板Soft_Job - PTT網頁版的討論與評價

    因為已經拿到offer,中斷二面:2 間(ubiquiti, yahoo) 3. ... coding 心得: - 一面主管應該是很滿意我的作業,當下就說會安排下一階段- 二面的面試 ...

    Ubiquiti 面試 作業在Production Operator (OP-生產線作業員) - LinkedIn的討論與評價

    Ubiquiti Inc. 台北 ... 負責SMT 物料上料及設備生產操作; 依照SOP進行電子產品組裝、檢驗、包裝等作業。 ... 內薦能讓您在Ubiquiti Inc.獲得面試的機會增加2 倍.

    Ubiquiti 面試 作業在[心得] Senior iOS 面試/分享- PTT看板soft_job - 干饭人的討論與評價

    ... Ubiquiti, Foodpanda 面試的過程都差不多:自我介紹、白板題、測驗iOS 知識、互相問問題下面如果沒有比較特別的事項就不再花篇幅介紹底下針對每間 ...

    Ubiquiti 面試 作業的PTT 評價、討論一次看



    更多推薦結果