個人Github地址html
iOS面試資料彙總github
我的背景:座標成都,14年入行iOS開發,非科班,18年9月在中國軟件成都研發中心擔任iOS組長。如今衛士通擔任某產品線iOS組長。面試
2018年9月,個人小兒子出生了,當時正準備請陪產假在家陪老婆坐月子。結果得知咱們「掌遊寶iOS離職天團」裏面一位90後小夥通過兩個月的準備,跳入一家18k的公司。突然以爲本身也能夠跳跳看了,因而有了下面的故事。算法
2018年9月,我在投遞的簡歷已經有了回覆,我將面試安排在了10月國慶節以後,這樣一共就有20多天,能夠好好準備準備面試。安全
此次方案是從網上搜索麪試題。在github上看見一篇招聘一個靠譜iOS的面試題,在看這篇面試題以前,我對於類的底層結構,分類的結構,消息傳遞機制,KVO/KVC底層機制,自動釋放池的底層結構並無什麼瞭解。性能優化
由於要從頭理解這些概念時間不可控,全部我決定把答案背下來,這樣還能有時間能準備一下項目和再網絡方面的面試題。markdown
此次面試經歷了2個小時,問的問題基本都是招聘一個靠譜iOS上的題目。結果由於答案是背的,可是畢竟面試長達兩個小時,有的問題漸漸深刻,我就答不上來了,因此此次面試就沒有下文了。
由於其實都是圍繞那篇面試題在提問,因此我分析僅僅是背答案是不行的,若是我能將招聘一個靠譜iOS上的題目涉及的知識點真正搞懂,是能夠經過面試的。
因此我開始搜索資料。最後我發現iOS底層原理班上面講的知識跟這篇面試題很匹配,因而花了大概2個月的時間,將視頻前先後後看了兩邊,而且作了手寫筆記。
另外我也看了資深大牛帶你深度剖析ios面試,講的相對淺一點,可是看成知識鞏固仍是有必定做用。
2018年12在我深刻學習完iOS底層知識後,開始了個人第二次面試。由於對iOS的底層作了準備,因此一面的全部問題都能流暢的答出來。
一面結束時,我感嘆本身的悟性和執行力。想一想本身僅僅一次面試就抓住了面試的真諦,心裏竊喜。
二面是iOS端負責人,開口就問我對性能優化有什麼經驗?這個問題我徹底沒有準備,一會兒不知道從哪些方面來回答這個問題。磕磕絆絆的就答了一些代碼性能方面的優化。以後兩天就獲得了回覆:
此次面試以後,我纔對面試的內容有了更深入的認識,看來除了底層知識,性能優化,內存,崩潰方面的知識也必須準備。
因而我又購買了《Effective Objective 2.0》,《高性能iOS應用開發》等關於性能優化的書,花了大概兩個月時間,看完以後我信心滿滿,以爲此次沒有面試能難住我了!
在《極客時間》上,我也看見了一個iOS開發高手課也很是有做用。我認認真真的學習完了每節課,而且認真輸出了筆記。
2019年2月,我經過Boss直聘內推參加了騰訊面試,這對於我來講,但是了不起的經歷。對於一個非科班的程序員,終於能和BAT正面硬剛了。
一面主要是針對項目內容進行擴展,其餘問題都是網上能找到答案的面試題,包括經常使用的鎖,三方庫源代碼等。在一面即將結束的前五分鐘,我自覺得已經hold住此次面試了,想一想BAT的面試不過如此嘛。
在一面結束前面試官說:咱們的經理要求此次的面試崗位,要多問一下算法,請你跟我講一下樹的遍歷有哪幾種?
WTF,算法我真的沒有重視過,之前以爲工做用不上,這種錯誤的意識一開始就是根深蒂固了。不出所料,我收到了回覆:
如何想進的是非BAT的大公司,準備底層知識(包括三方庫源碼)和性能優化知識已經足夠了,可是若是你想進入一線大廠,算法這道門檻就必須跨過去!
第三次面試失敗以後,我總結本身這半年知識提高很大,可是算法方面短時間提高不上來,因此去一家本地大廠,潛心學習。
2019年5月,我進入了衛士通,一家作安全的國企,面試比較順利,國企的當然有缺點,可是倒是適合本身的。
其實衛士通的面試難度與前兩次面試難度一致,也就說個人判斷是正確的,經過這段時間的學習,個人能力能夠匹配成都本地的大廠,可是想進一線公司,就還須要學算法。
進入這家公司以後,前幾個月趕了新項目的進度,以後就開始了算法的學習。好巧不巧,小碼哥的算法課程上線了!想一想個人每次跳槽,都是把小碼哥的視頻拿出來看。
此次算法學習,我先看了《極客時間》的算法課程,可是越日後看,愈加現課程講的不夠深刻,後來我又找到了小碼哥的戀上數據結構與算法,才以爲本身真正上船了。
此次算法的學習筆記,我已經整理在了掘金裏面:個人小碼哥《戀上數據結構與算法》學習筆記
固然,還在持續更新...
大廠是目標,必須進大廠,這個不用說!
若是要進BAT等大廠,算法是必定要紮實的。若是算法這一關過不了,就只能在非一線的公司混!
媽的,感受這個道理很簡單啊,爲何花了2年的時間才明白呢?!
固然還有一些別的經驗,包括如何選擇和閱讀三方庫代碼?應該看哪些書籍?應該如何準備項目?網絡方面應該看什麼?如何打造我的影響力?這些都是這兩年慢慢總結的,之後再分享吧。