給最近正在找工作(iOS)的朋友一些建議/經驗


眾所周知, iOS開發找工作越來越難, 企業要求越來越高,一方面是資本寒冬期+七八月是企業招人淡季, 另外一方面也是iOS市場飽和。最近有出去看新機會, 所以下面記錄一下面試XimalayaFM的大概過程。

面試一共分為4輪,全程手寫代碼和算法。

一面:自我介紹, 然后問一下手頭開發App日活和崩潰率,接着開始問

1. 無痕埋點實現原理,手寫方法交換代碼;

2. 手寫代碼使用GCD完成: 先並發下載3張圖片, 等3張下載完了再並發下載剩余3張, 這里可以使用dispatch_barrage柵欄來區分任務, 也可以使用信號量;

3. timer是否精准, 怎么使用精准的定時器…

4. runloop監聽主線程卡頓: 使用observer監聽主線程loop, 結合信號量

二面: 手寫代碼: log(a), postNotification(log(b)),log(c), 問打印順序, 這里主要考察分線程和主線程的通知回調是否同步,然后又問了UI卡頓優化的問題;

三面: 考察了隱式和顯式動畫、如何實現圓形進度條、離屏渲染卡頓底層原理(垂直同步信號) 、事件響應鏈詳細過程、socket建立連接詳細過程,最后是手寫單鏈表的反轉代碼;

四面: 主要考察算法: 手寫冒泡排序,常用排序算法的時間復雜度, 以基准數偏移的有序數組的查找值為n的元素,要求時間復雜度O(logn)(這里可以利用二分法查找), 最后就問了一些個人職業發展以及現有團隊規模問題, 再然后就是談薪資…

 

總結: runloop runtime 常用排序算法 鏈表反轉 查找等問題在面試二線大廠的時候基本是必考的點, 最近找工作的朋友需要多留意~




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM