先簡(jiǎn)單說(shuō)說(shuō)我最近的面試經(jīng)歷吧。面試的公司很多,大部分最后都能得到令人滿意的結(jié)果,我將這些體會(huì)記錄下來(lái),面了這么多公司,如果不留下什么,那豈不是太浪費(fèi)了。對(duì)于我來(lái)說(shuō),這也是一次自我檢查,在這次面試中總結(jié)經(jīng)驗(yàn),認(rèn)清自己,同時(shí)希望這些對(duì)即將換工作或者打算看看其他機(jī)會(huì)的你有一些幫助。
以下的部分有具體的面試經(jīng)歷,也有自己的一些總結(jié)面試必備技能和自己的一些感想。
為何離開(kāi)小米?
離開(kāi)小米的主要原因是:我的職業(yè)規(guī)劃與小米給我的規(guī)劃不相符,還有就是流程化的東西太繁瑣,自己有一些不適應(yīng),所以選擇離開(kāi)了小米。非常感謝我周總(直接領(lǐng)導(dǎo))和冰冰(師傅),在小米的這一年中給予我非常多的幫助,在我跟領(lǐng)導(dǎo)溝通要離開(kāi)的想法時(shí),領(lǐng)導(dǎo)開(kāi)誠(chéng)布公的跟我聊了很多,最終我還是下定決定要離開(kāi)小米,領(lǐng)導(dǎo)建議我先去面試一些公司,等找到合適的再走,裸辭的話心態(tài)上都會(huì)有一些問(wèn)題,這樣的領(lǐng)導(dǎo)真是沒(méi)話說(shuō)了,在小米很多領(lǐng)導(dǎo)都是不放人的,很多都把員工的下一家拖黃了才放人。在這一年獲得的成績(jī):
1、二等獎(jiǎng)轉(zhuǎn)正績(jī)效是A
2、年終績(jī)效 A+,獲得明日之星
準(zhǔn)備
其實(shí)我很早就開(kāi)始準(zhǔn)備了,準(zhǔn)確來(lái)說(shuō)也不算準(zhǔn)備,只是一直在總結(jié)iOS相關(guān)方面的知識(shí),因?yàn)樵谌A為雖然工作有時(shí)候比較多,但是還是有大把時(shí)間可以自己學(xué)習(xí)一些感興趣的方向。從過(guò)完年回來(lái),我就有計(jì)劃的復(fù)習(xí)和總結(jié)了一些知識(shí)。
看過(guò)的書籍,這里并不是泛泛的讀一遍,而是詳細(xì)理解了大多數(shù)內(nèi)容,通俗一點(diǎn)就是可以用自己的話將相應(yīng)的知識(shí)解讀出 來(lái) 。
Android開(kāi)發(fā)藝術(shù)探索》(這本書真心不錯(cuò),我反復(fù)讀了4、5遍)、《iOS群英傳》(比較接近開(kāi)發(fā)使用,因?yàn)樽鲞^(guò)一些應(yīng)用開(kāi)發(fā),讀起來(lái)還是比較簡(jiǎn)單的,讀了2遍)、《劍指offer》(感覺(jué)面試中碰到的算法,70%都能找到相應(yīng)的題目,保證所有的題都可以手寫出來(lái)就行)。4個(gè)月精讀了以上書籍,還有其他的都是簡(jiǎn)單了解,這里就不列舉了,讀完這些書,應(yīng)該可以讓你上一個(gè)層次吧(媽媽再也不用擔(dān)心我面試?yán)病?/p>
刷題,主要是LeetCode(大概刷了300道題左右,每天3-6道,堅(jiān)持下來(lái),需要多復(fù)習(xí),因?yàn)楹芏囝}過(guò)一段時(shí)間會(huì)忘記),還有看過(guò)一些牛課網(wǎng)。
看別人的面試經(jīng)驗(yàn),主要在網(wǎng)上,這里我列舉兩個(gè)比較好的。
1、 iOS客戶端面試題集錦
2、 iOS阿里面試題錦集
投遞簡(jiǎn)歷
一份好的簡(jiǎn)歷是非常有必要的,需要突出你的重點(diǎn)和閃光點(diǎn),具體怎么寫簡(jiǎn)歷可以參考
CodeKK說(shuō)簡(jiǎn)歷
有了一份好簡(jiǎn)歷,接下來(lái)就是投遞簡(jiǎn)歷,一般是:拉鉤+BOSS直聘+內(nèi)推,從我這次面試機(jī)會(huì)來(lái)看,三者比例是2:2:1,也可能我工作經(jīng)驗(yàn)還不到一年,內(nèi)推滴滴、阿里和騰訊直接就把我的簡(jiǎn)歷刷掉了,但是內(nèi)推也是具體到某個(gè)部門,如果被刷掉也不要灰心,現(xiàn)在大公司基本上各個(gè)部門都有自己的hr,可以在拉頭和BOSS上多投遞一些,萬(wàn)一其他部門看中你呢?
作為一個(gè)開(kāi)發(fā)者,有一個(gè)學(xué)習(xí)的氛圍跟一個(gè)交流圈子特別重要,這是一個(gè)我的iOS交流群:761407670 進(jìn)群密碼'亮子',不管你是小白還是大牛歡迎入駐 ,分享BAT,阿里面試題、面試經(jīng)驗(yàn),討論技術(shù), 大家一起交流學(xué)習(xí)成長(zhǎng)!
面試經(jīng)歷
這里我僅僅記錄一些問(wèn)過(guò)的題目(能記住的),答案我就不寫出來(lái),基本上都可以在網(wǎng)上找到相應(yīng)的答案。
一面
1、iOS一些優(yōu)化方案
2、最常用的版本控制工具是什么,能大概講講原理么
3、UNIX常用命令
4、c語(yǔ)言在iOS開(kāi)發(fā)中的重要性
5、源代碼管理工具的作用
二面
二面面試官是Eva?反正應(yīng)該不是做iOS的,iOS的相關(guān)知識(shí)問(wèn)的也不多,大多是項(xiàng)目上的東西。
atomic的多線程安全
聊項(xiàng)目,都具體做了什么。
nonatomic在自己管理內(nèi)存的環(huán)境
三面
應(yīng)該是Eva吧,主要了解一些個(gè)人的情況,以及一些項(xiàng)目,最后問(wèn)了期望的薪資,然后當(dāng)場(chǎng)就給了offer。
畢竟1年多沒(méi)有面試了,第一場(chǎng)面試還是給我了很大的自信,也知道現(xiàn)在自己大概能要多少工資是合適的,所以大佬們準(zhǔn)備跳槽的時(shí)候,最好先面幾家小公司,這些還是一個(gè)很不錯(cuò)的公司,整體的辦公環(huán)境挺好的,現(xiàn)在也處于盈利狀態(tài),在教育類的app中也排的上名次。
快手
快手就在五道口地鐵站出口不遠(yuǎn)地方,能看到很顯眼的LOGO,看上去很霸氣的樣子,但是當(dāng)我進(jìn)入到快手前臺(tái)的時(shí)候,連一個(gè)標(biāo)示符都沒(méi)有, 一度以為自己走進(jìn)了假快手,好吧,我是來(lái)面試,這些都不重要,接下來(lái)接待的人員把我領(lǐng)進(jìn)了一個(gè)小屋里,等待面試的開(kāi)始。
一面
面試官是一個(gè)很fashion的人,是從小米核心部門過(guò)來(lái)的,是iOS小組的領(lǐng)導(dǎo)。
問(wèn)了關(guān)于數(shù)據(jù)庫(kù)的一些問(wèn)題,SQLite的相關(guān)操作,沒(méi)辦法,我在華為唯一一個(gè)做的和iOS相關(guān)的項(xiàng)目,但是不太擅長(zhǎng)數(shù)據(jù)庫(kù)。 網(wǎng)絡(luò)相關(guān)的問(wèn)題,網(wǎng)絡(luò)的五層模型,又問(wèn)了TCP和TIP,還有iOS相關(guān)的長(zhǎng)連接,這里問(wèn)的比較深。
開(kāi)始iOS相關(guān)的知識(shí),視覺(jué)控制器的生命周期(view的生命周期)內(nèi)存告急的處理(手動(dòng)釋放不可見(jiàn)視圖的內(nèi)存和成員變量)
第一面這就算過(guò)關(guān)了等待二面。
二面
問(wèn)了項(xiàng)目相關(guān)的問(wèn)題,這部分根據(jù)自己的項(xiàng)目經(jīng)驗(yàn),由于大家的經(jīng)驗(yàn)都不同,這里我就不詳細(xì)說(shuō)了。
設(shè)定一個(gè)場(chǎng)景,怎么去實(shí)現(xiàn)相應(yīng)的功能,因?yàn)榭焓诌@個(gè)部門想做社交,因此這里是問(wèn)我是如何實(shí)現(xiàn)微信的聯(lián)系人頁(yè)面(包括與服務(wù)端有什么樣的交互)
最后也是一個(gè)算法,寫出所有數(shù)組的子序列
二面面試官是這個(gè)組的Eva,跟我講了現(xiàn)在這個(gè)組的發(fā)展情況和快手現(xiàn)在的情況,由于快手成長(zhǎng)很快,所以不能僅僅依靠一個(gè)APP,還需要在其他方面進(jìn)行一些嘗試,而這個(gè)組的任務(wù)就是在一些方面做一些嘗試,大概就是這個(gè)樣子。
二面也順利通過(guò),接下來(lái)就是HR面了,這時(shí)候正好是12點(diǎn),他們要去吃飯,不過(guò)快手是提供午餐和晚餐的,第一個(gè)面試官帶給我一份飯,還不錯(cuò),后來(lái)HR跟我說(shuō),現(xiàn)在只是過(guò)渡時(shí)期,后面午餐和晚餐會(huì)改成自助餐的形式。
三面
HR上來(lái)很親切,問(wèn)了我一些面試的情況,難不難之類的,然后又聊了聊我大學(xué)和研究生情況,我只想說(shuō)我“too simple , too naive “,大概了解我后,只跟我聊我的不足,以此來(lái)壓低我期望的薪水。說(shuō)了一下薪資期望,加了微信,讓我回去等待,說(shuō)發(fā)offer大概是2周時(shí)間,因?yàn)樾枰吒鞣N審批流程,讓我不要著急。
快手是一個(gè)很年輕的公司,技術(shù)還是需要一定的積累,希望不要像小咖秀一樣曇花一現(xiàn)。
美團(tuán)外賣
一面
1、簡(jiǎn)歷上寫的項(xiàng)目問(wèn)了一遍,然后開(kāi)始問(wèn)知識(shí)點(diǎn)。
2、volley的源代碼,在圖片緩存部分討論了挺長(zhǎng)時(shí)間,http中緩存機(jī)制,
3、視覺(jué)控制器的生命周期
4、數(shù)據(jù)庫(kù)
5、多線程(NSTread、NSOPeration、GCDA+block)
6、http協(xié)議get post的區(qū)別
7、手機(jī)適配一些方案
8、真機(jī)調(diào)試、項(xiàng)目上線注意事項(xiàng)
9、靜態(tài)方法是否能被重寫
這些大概聊了1個(gè)半小時(shí),開(kāi)始的時(shí)候還有些緊張,慢慢聊開(kāi)了,就好多了,面試官的語(yǔ)速有點(diǎn)快,老是需要面試官重復(fù)一遍,我也不經(jīng)意間語(yǔ)速也變快了,不過(guò)能看出來(lái)面試官還是很厲害的。
二面
2次握手和3次揮手的原因,以及為什么需要這樣做。
1、id和nill代表什么(nill和NULL的區(qū)別)
2、向一個(gè)nill對(duì)象發(fā)送消息會(huì)發(fā)生什么?
3、進(jìn)程與線程區(qū)別
4、寫一個(gè)NSString類的實(shí)現(xiàn)
5、http中的同步和異步
聊了一些項(xiàng)目上做的東西,問(wèn)了問(wèn)職業(yè)規(guī)劃 由于二面面試官不是做iOS,本來(lái)面試我的人臨時(shí)開(kāi)會(huì)去了,所以這一輪面試沒(méi)怎么問(wèn)iOS相關(guān)知識(shí),不過(guò)二面面試官一直是微笑,所以這一輪很輕松,更像是一起討論問(wèn)題。
面試完已經(jīng)是下午4:30了,由于面試當(dāng)天是星期五,而周五美團(tuán)的會(huì)議比較多,所以等了會(huì),二面面試官說(shuō)三面面試官在開(kāi)會(huì),面試另約時(shí)間,我還是說(shuō)這次一次面試完吧,這一等就等了2個(gè)半小時(shí),期間hr跟我說(shuō)三面面試官是個(gè)大牛。
三面
我認(rèn)為iOS做的優(yōu)秀的幾個(gè)地方,然后又根據(jù)我說(shuō)的問(wèn)了問(wèn)比較深入問(wèn)題。
1、iOS是如何進(jìn)行資源管理的。
2、Python比較重要的幾個(gè)特性
3、網(wǎng)絡(luò)五層結(jié)構(gòu),每一層協(xié)議,由于我網(wǎng)絡(luò)不是很好,還問(wèn)了一些其他的問(wèn)題(例如MAC地址和ip地址的區(qū)別等)。
為什么離開(kāi)原來(lái)公司,以及職業(yè)規(guī)劃,然后因?yàn)槊嬖囃甏蟾啪屯砩?點(diǎn)了,就先讓我回去,下周讓HR跟我聯(lián)系,我想這是應(yīng)該通過(guò)面試了吧。
美團(tuán)技術(shù)還是很厲害的,從面試官的水平就可以看出來(lái),尤其是外賣核心部門,辦公環(huán)境是不錯(cuò),但是感覺(jué)就是有點(diǎn)亂,不知道是不是因?yàn)榻裉烀嬖嚨娜撕芏啵旧弦恢庇泻芏嗳藖?lái)回走動(dòng),有一些嘈雜。
百度
夢(mèng)寐以求的百度終于找我來(lái)面試了,之前不管是內(nèi)推還是網(wǎng)絡(luò)上投遞都被拒絕了,原因是我工作不到一年,沒(méi)辦法誰(shuí)讓馬云爸爸太厲害,我投遞的是杭州的天貓,是做虛擬現(xiàn)實(shí)的小組(剛聽(tīng)到這個(gè)名字感覺(jué)和自己不太相符),這是我到面試完后,才知道的,面試官也跟我說(shuō)iOS上的需求可能不會(huì)很多,更多的是AR技術(shù)在iOS上的應(yīng)用,包含OpenGL等技術(shù)。
一面
詢問(wèn)了我博客上寫的一些東西,從項(xiàng)目立意談起,到設(shè)計(jì),再到詳細(xì)的技術(shù)實(shí)現(xiàn),可謂是面面俱到,由于自己寫的博客還是比較熟悉,回答的還不錯(cuò)。
1、GLSurfaceView的相關(guān)知識(shí),OpenGL,Shader,繪制流程。
2、詢問(wèn)當(dāng)前做的項(xiàng)目,以及到具體的實(shí)現(xiàn)和優(yōu)化。
3、多進(jìn)程間的通訊,Binder機(jī)制。
4、詢問(wèn)看過(guò)哪些框架源碼,EventBus,Volley講了一下。
大概聊了一個(gè)小時(shí)左右,聊得還可以,基本上都回答上了,中間給了我很多建議,不懂的地方,也會(huì)仔細(xì)跟我講解一番,其實(shí)有一半的時(shí)間都是跟我聊產(chǎn)品,為什么這個(gè)產(chǎn)品好,怎樣做才能迎合市場(chǎng),然后怎么設(shè)計(jì)整個(gè)產(chǎn)品等,感覺(jué)跟我現(xiàn)在水平不是一個(gè)層次的,果然,第二天就給我發(fā)了一封郵件,說(shuō)我現(xiàn)在暫時(shí)不太合適投遞的崗位。
面試結(jié)果
除了阿里淘寶外,其他的公司基本都拿到offer,這段時(shí)間把小米這邊的工作都交接完,休息幾天,如果有空的話回家停幾天。
最后總結(jié)
自己對(duì)于互聯(lián)網(wǎng)有一些小小的見(jiàn)解:隨著資本的冷卻,整個(gè)互聯(lián)網(wǎng)市場(chǎng)也逐漸的冷靜下來(lái)。iOS應(yīng)用開(kāi)發(fā)從一開(kāi)始能說(shuō)幾個(gè)四大組件的名詞,能隨便寫個(gè)監(jiān)聽(tīng)事件,就能拿到高達(dá)上萬(wàn)的月薪的時(shí)代了。歸根到底并不是工作難找了,而是iOS應(yīng)用開(kāi)發(fā)工程師這個(gè)職位已經(jīng)趨于正常,再也不是沒(méi)什么技術(shù)也能拿高工資的香餑餑。當(dāng)然這個(gè)也不是絕對(duì)的,對(duì)于中高級(jí)的開(kāi)發(fā)人員來(lái)說(shuō),市場(chǎng)還是比較缺少的,尤其是知名企業(yè)對(duì)于招聘員工來(lái)說(shuō),不僅要求有過(guò)硬的技術(shù),還要求有高素質(zhì),好的教育背景等等??偟膩?lái)說(shuō),高工資可以給你,但是前提條件是你要足夠優(yōu)秀,或者說(shuō)讓面試官覺(jué)得你很優(yōu)秀。
其實(shí)面試過(guò)程就是一個(gè)把你自己推銷給別人的過(guò)程,對(duì)于我們(畢業(yè)不久的同學(xué),因?yàn)槲耶厴I(yè)不到一年)來(lái)說(shuō)就是要讓面試官感覺(jué)你技術(shù)好,有培養(yǎng)價(jià)值。感慨有點(diǎn)多了,還是來(lái)點(diǎn)干貨吧,大概列舉一下每一輪面試的大概范圍和深度,但是也不是絕對(duì)的,還是要看具體情況。
筆試
近一段時(shí)間的面試經(jīng)歷來(lái)說(shuō),一、二面的問(wèn)題沒(méi)有什么很大的區(qū)別(公司基本上都有3面技術(shù)面,但是也有例外,我在美團(tuán)就是2面技術(shù)面。),基本上都是一線開(kāi)發(fā)人員。主要考察你是否有牢固的基礎(chǔ)知識(shí)和是否在平常開(kāi)發(fā)中能熟練使用。
是否能講解清楚你所做的項(xiàng)目,以及使用到的相關(guān)知識(shí)。
1、iOS基礎(chǔ)知識(shí)
2、Python基礎(chǔ)知識(shí),大概是多線程,線程安全,集合類,JVM,類相關(guān)知識(shí)等。
3、iOS一些源碼的閱讀
4、優(yōu)秀的第三方框架源碼閱讀
四面
一般公司都是三輪技術(shù)面,但是也有四輪技術(shù)面的,不過(guò)不多。很多公司基本上每一輪面試官都會(huì)記錄他所詢問(wèn)的問(wèn)題,以便給下一輪面試官作參考,還有就是避免對(duì)同一個(gè)知識(shí)點(diǎn)多次詢問(wèn)。所以到了這輪面試,基本上不會(huì)再詢問(wèn)比較基礎(chǔ)的知識(shí)。
會(huì)從兩個(gè)方面考察,
1、廣度:比較新的技術(shù)(多線程,插件化等),http協(xié)議,數(shù)據(jù)庫(kù),iOS(一般不會(huì)詢問(wèn)之前面試官問(wèn)過(guò)的問(wèn)題)。
2、深度:一般會(huì)通過(guò)1或2個(gè)問(wèn)題來(lái)考察,例如:項(xiàng)目中的貢獻(xiàn),所做的優(yōu)化。設(shè)計(jì)能力,基本上不多,這個(gè)要看面試的崗位,因?yàn)槲疫@里面試的只是高級(jí)開(kāi)發(fā),并不是架構(gòu)。
工作中的亮點(diǎn)和突出。
HR面
基本上到了這輪,你就算通過(guò)面試了。hr會(huì)詢問(wèn)一些你的經(jīng)歷,最主要的還是和你商定薪資待遇。在這輪,大家應(yīng)該要對(duì)自己的薪資水平有一個(gè)大體的了解,一般都是在原來(lái)的工資基礎(chǔ)上增長(zhǎng)20%~30%的樣子,當(dāng)然,如果你在面試過(guò)程中表現(xiàn)非常優(yōu)秀,也可以不受這個(gè)限制。當(dāng)然如果公司誠(chéng)心要你,就算你要的工資過(guò)高,hr也會(huì)委婉的告訴你,不會(huì)直接把你pass。
作為一個(gè)開(kāi)發(fā)者,有一個(gè)學(xué)習(xí)的氛圍跟一個(gè)交流圈子特別重要,這是一個(gè)我的iOS交流群:761407670 進(jìn)群密碼'亮子',不管你是小白還是大牛歡迎入駐 ,分享BAT,阿里面試題、面試經(jīng)驗(yàn),討論技術(shù), 大家一起交流學(xué)習(xí)成長(zhǎng)!