下面圍繞這一個(gè)多月來(lái)參加的幾場(chǎng)面試, 做一個(gè)總結(jié)。 設(shè)計(jì)的公司主要包括阿里研發(fā)部分, 網(wǎng)易郵件, 騰訊微信。希望能給同樣在為找實(shí)習(xí)努力的戰(zhàn)友提供一些幫助。(已經(jīng)拿到網(wǎng)易和微信的offer)
PS: 總結(jié)不是空穴來(lái)風(fēng), 每次面試完, 我都會(huì)坐著認(rèn)真總結(jié)之前的面試, 記錄每道題, 每個(gè)答案的關(guān)鍵點(diǎn), 再比對(duì)下自己的回答是否完整。
另外, 博客篇幅有限, 并且題目并不是適合每一位同學(xué)(我是iOS開發(fā)相關(guān), 題目主要都是iOS相關(guān)), 所以不適合把完整的題目都描述出來(lái), 文章主要是一些經(jīng)驗(yàn)交流。 如果需要完整面試題目的, 麻煩進(jìn)入閱讀原文留下郵箱, 我看到了會(huì)一一發(fā)送。
阿里_研發(fā)部門
阿里是最早投的一家公司, 3月初那會(huì), 本來(lái)還在學(xué)習(xí)科二的, 然后在阿里的學(xué)長(zhǎng), 催著要簡(jiǎn)歷, 說(shuō)內(nèi)推已經(jīng)開始了。于是乎, 我就借機(jī)把科二給退了(被教練罵成狗的滋味真不好受, 還好及時(shí)跑了)。學(xué)長(zhǎng)給內(nèi)推的部門是和o2o相關(guān), iOS開發(fā)。
阿里一面_電話
然后等了幾天, 3月9號(hào), 一面開始了, 節(jié)奏很快, 總共通話時(shí)候是26分鐘..
電話來(lái)的比較突然, 那會(huì)還在看文章呢。一面過(guò)了, 但是具體表現(xiàn)并不是很理想。
先是自我介紹。
問(wèn)iOS相關(guān)。 比如:
Category支持添加屬性與成員變量嗎
iOS7之后, 藍(lán)牙的圍欄功能
說(shuō)說(shuō)Cell重用原理
…
設(shè)計(jì)模式。這里主要問(wèn)了iOS常用的設(shè)計(jì)模式, 以及如何應(yīng)用到實(shí)際需求中去。
MVC是否了解?介紹下使用情況。
MVC里面, View怎么通知到Model
了解delegate嗎?并介紹
如果現(xiàn)在要實(shí)現(xiàn)一個(gè)下載功能, 你要如何設(shè)計(jì)。說(shuō)說(shuō)每個(gè)類具體做什么
然后就是再交流, 對(duì)o2o有什么看法, 有沒(méi)有想問(wèn)他的…
阿里二面_電話
然后又過(guò)了兩天, 二面如約來(lái)了, 36分鐘, 感覺比上次好, 不過(guò)結(jié)果…
二面和一面一樣, 都圍繞iOS, 問(wèn)了objc相關(guān), 內(nèi)存管理, 設(shè)計(jì)模式等。
但是更多的, 詢問(wèn)了我平時(shí)的一些開發(fā)習(xí)慣, 以及一些設(shè)計(jì)題。
比如:
如果讓你設(shè)計(jì)KVO, 要怎么設(shè)計(jì)
現(xiàn)在你是如何適配的
比較下storyboard和全代碼
如果有1w張圖片要在屏幕滾動(dòng)顯示(每張圖片滿屏), 至少要幾個(gè)cell, 如何實(shí)現(xiàn)循環(huán)滾動(dòng)
平時(shí)是怎么進(jìn)行測(cè)試的, 內(nèi)存方面怎么測(cè)試
平時(shí)自己有沒(méi)有封裝過(guò)比較復(fù)雜的控件
平時(shí)如何實(shí)現(xiàn)網(wǎng)絡(luò)請(qǐng)求, 一般返回的數(shù)據(jù)是什么格式, 如何解析..
如何實(shí)現(xiàn)類似 “Find My iPhone” 這樣功能
二面相比一面來(lái)說(shuō), 準(zhǔn)備的更充分了。回答問(wèn)題上, 也比較積極, 考慮的也比較多。不過(guò)二面結(jié)束沒(méi)多久, 內(nèi)推狀態(tài)就變成”待回絕”。 Over了…
學(xué)長(zhǎng)詢問(wèn)了面試官, 結(jié)果是: “整體還不錯(cuò), 但總感覺少了點(diǎn)什么..”
經(jīng)歷完阿里這一次, 總體來(lái)說(shuō), 對(duì)我打擊還挺大的。畢竟, 第一次就跪了.. 同時(shí), 更多的是對(duì)自我的總結(jié)。
首先應(yīng)該是準(zhǔn)備不夠充分, 然后就是基礎(chǔ)不夠扎實(shí)。從面試官問(wèn)的問(wèn)題來(lái)看, 大公司還是對(duì)基礎(chǔ)要求比較高。
阿里校招_在線筆試
之后, 又投了阿里校招, 參加了在線筆試。具體題目可以在這里看到:阿里筆試題
雖然筆試通過(guò)了, 不過(guò)現(xiàn)場(chǎng)面試的時(shí)間和課程沖突了, 然后就沒(méi)有跑去杭州面試。
于是乎, 和阿里就這樣不了了之了。
網(wǎng)易_郵件部門(拿到offer)
在結(jié)束阿里內(nèi)推沒(méi)多久, 偶然在網(wǎng)上看到網(wǎng)易的一個(gè)招聘。 因?yàn)榉绞奖容^新穎, 就關(guān)注了下。
答案就在門的背后!(至于如何解題歡迎大家交流)
解開這個(gè)題目后, 拿到了面試官的郵箱.. 然后抱著僥幸的心理, 就投了。
網(wǎng)易一面_電話
沒(méi)想到, 第二天就來(lái)電話了。效率很高。 55分鐘.. 感覺被虐哭了。
網(wǎng)易考核的主要是objc, iOS, 設(shè)計(jì)模式, 算法。
主要如下:
autorelease 和 @autoreleasepool區(qū)別
unsafe_unretained , weak, assign 區(qū)別
在block里面, 對(duì)數(shù)組執(zhí)行添加操作, 這個(gè)數(shù)組需要聲明成 __block嗎
在block里面, 對(duì)NSInteger進(jìn)行修改, 這個(gè)NSInteger是否需要聲明成__blcok
NSThread, NSOperation, GCD區(qū)別
runtime什么時(shí)候用
通知和KVO區(qū)別
深度遍歷和廣度遍歷使用場(chǎng)景
常用的設(shè)計(jì)模式
算法題 * 2
自己有什么優(yōu)點(diǎn)
…
面完之后, 感覺整個(gè)人都不好了。內(nèi)存管理部分, 都能說(shuō)出那么一些, 但是一說(shuō)多了, 就不知道怎么回答了??傮w來(lái)說(shuō), 還是基礎(chǔ)不夠扎實(shí)。研究不夠透徹。
然后面試完, 一個(gè)很大的感受就是, 一次面試, 學(xué)到的, 比自己悶頭看書一個(gè)月, 學(xué)到的還多。面試很直觀的反應(yīng)出了自己的不足。于是乎, 針對(duì)內(nèi)存管理, 多線程等知識(shí)上的不足。 我重新把那本獅子頭的書認(rèn)真看了遍。
PS: 如果覺得這方面知識(shí)也有所欠缺的話, 可以到閱讀原文里下載Objective-C高級(jí)編程 iOS與OS X多線程和內(nèi)存管理.pdf這本書, 極力推薦。
本以為, 網(wǎng)易也就是這么結(jié)束了。 沒(méi)想到過(guò)了幾天, 人力資源部的妹子打電話來(lái), 約去杭州面試。
于是乎于是乎, 去杭州浪了~
網(wǎng)易二面_現(xiàn)場(chǎng)
初到杭州, 很巧的是在機(jī)場(chǎng)大巴上碰到了一個(gè)去H3C培訓(xùn)的大叔, 更巧的是, 他也住我那個(gè)酒店。 然后就跟著他, 一路聊到酒店.. 挺好。
第二天網(wǎng)易面試, 還是挺緊張的。9點(diǎn)多到了待客大廳, 填了表, 然后等面試官。然后網(wǎng)易給我的一個(gè)感覺就是, 很內(nèi)斂, 低調(diào), 感覺挺好。
之后一下來(lái)了兩個(gè)面試官, 領(lǐng)我到單獨(dú)的小隔間面試.. 一次兩個(gè), 有點(diǎn)虛。
不過(guò)沒(méi)多久, 就適應(yīng)了這種氣氛, 然后和面試官交流也比較開心。
主要問(wèn)題如下:
我是上次和你通電話的那位, 你覺得自己上次表現(xiàn)怎么樣
這段時(shí)間, 都在干嘛
我們認(rèn)真看了你的github, 感覺還不錯(cuò)
然后給我一張紙, 問(wèn)了幾個(gè)算法題:
如何實(shí)現(xiàn)一個(gè)數(shù)組每個(gè)元素依次向右移動(dòng)k位。(后頭的往前面補(bǔ)) 比如: [1, 2, 3, 4, 5] 挪兩位變成[4, 5, 1, 2, 3]
實(shí)現(xiàn)連連看算法
T9算法如何實(shí)現(xiàn), 全拼算法
總的來(lái)說(shuō), 問(wèn)的都是算法相關(guān), 沒(méi)有再涉及iOS部分。 然后就算法來(lái)說(shuō), 回答的還不錯(cuò)。雖然每道題不是一步到位, 但是在與面試官溝通過(guò)程中, 最后都逐步完善了自己的算法。
然后就是和面試官聊天了, 兩位面試官都很平易近人, 聊得也比較開心。 然后就約了下午HR面。
…面試完后, 包括面試官已經(jīng)人力管理的妹子都邀請(qǐng)我去網(wǎng)易食堂吃飯, 不過(guò)畢竟靦腆, 我給拒絕了。出來(lái)才發(fā)現(xiàn).. 找個(gè)飯店真不容易.. 早知道就厚著臉皮試試”丁家豬”了。
網(wǎng)易HR面_現(xiàn)場(chǎng)
下午HR面, HR是個(gè)很漂亮的妹子.. 整個(gè)過(guò)程都比較歡樂(lè), 雖然一些問(wèn)題上可能有不同看法。
HR問(wèn)的主要是一些職業(yè)規(guī)劃, 抗壓能力, 學(xué)習(xí)習(xí)慣, 別人怎么看待自己等等..
面試完以后, HR問(wèn)我接下去準(zhǔn)備干嘛, 我說(shuō)我要一路玩到蕭山機(jī)場(chǎng)(那天酒店在蕭山機(jī)場(chǎng)附近)。然后她打趣到:”真瀟灑阿..”
杭州確實(shí)很美, 不夠時(shí)間關(guān)系, 就在西湖附近逛了會(huì)。 附帶張圖片。
3.31參加完網(wǎng)易杭州的現(xiàn)場(chǎng)面試. 4月23號(hào)收到網(wǎng)易的正式offer。 總算, 踏實(shí)了…
騰訊_微信事業(yè)部(拿到offer)
之前騰訊校招的時(shí)候, 投了簡(jiǎn)歷。 不過(guò)一直到周圍同學(xué)都參加了在線筆試, 我仍然沒(méi)收到通知的時(shí)候, 我基本上已經(jīng)放棄了。覺得自己應(yīng)該在簡(jiǎn)歷環(huán)節(jié)就被刷了, 比較凄涼..
微信一面_電話
不過(guò)4月20的時(shí)候, 突然來(lái)了個(gè)電話, 對(duì)方說(shuō)是騰訊微信事業(yè)部的。 很突然, 完全沒(méi)想到。 可以說(shuō), 幸福來(lái)的太突然了..
電話用時(shí)1小時(shí)10分.. 中間把院長(zhǎng)的課給翹了.. - -!
主要還是圍繞這幾個(gè)方面: 項(xiàng)目, 設(shè)計(jì)模式, 算法..
問(wèn)題包括:
如何保證軟件質(zhì)量, 怎么分析Crash日志
談?wù)勀阌X得最重要的一個(gè)項(xiàng)目
你的個(gè)人主頁(yè)是怎么寫的
假如我是一名初學(xué)者, 你會(huì)向我推薦哪些第三方庫(kù)
使用了第三方庫(kù), 有看他們是怎么實(shí)現(xiàn)的嗎
有沒(méi)有看過(guò)大型項(xiàng)目的源碼
強(qiáng)連通量算法
最短路徑算法
排序算法
25個(gè)人, 每5人1個(gè)跑道, 最少經(jīng)過(guò)幾次賽跑, 得到前3名
騰訊給我的感覺就是, 很靠譜。 這幾輪面試, 就騰訊當(dāng)場(chǎng)就給出了結(jié)果, 不管是一面, 二面, 還是HR面 而不是說(shuō)讓你再等通知。 給我的感覺非常好。
一面最后, 這個(gè)面試官就說(shuō), 他這里通過(guò)了, 問(wèn)我明天什么時(shí)候有時(shí)間, 給我約下另外一個(gè)面試官。
微信二面_collabedit+電話
第二天微信二面如約來(lái)了, 面試官很好。提前打電話問(wèn)我有沒(méi)有時(shí)間, 我表示想午睡一會(huì), 一個(gè)小時(shí)后開始。他答應(yīng)了。
然后一個(gè)小時(shí)后, 另外一個(gè)面試官打電話來(lái)了, 要我登錄 http://collabedit.com/xxxx 答題。
collabedit可以在線共享。 就是說(shuō), 我這里敲什么, 面試官那里就能同步顯示。 主要是考核編碼能力。
主要是兩個(gè)算法題, 第一道要求寫出完整代碼, 第二道思路交流。
求兩個(gè)整數(shù)的最大公約數(shù)
微信用戶都是雙向的好友,a是b的好友,那么b一定是a的。給定一個(gè)用戶列表,有些用戶是好友,有些不是,請(qǐng)判斷,這些用戶是否可以劃分為兩組,每組內(nèi)的用 戶,互相都不是好友。如果能,請(qǐng)給出這個(gè)劃分。
完了之后, 面試官問(wèn)了我實(shí)習(xí)時(shí)間, 然后問(wèn)我對(duì)深圳和廣州的看法(因?yàn)槲业谝恢驹柑畹氖巧钲? 微信本部在廣州), 問(wèn)我愿意去廣州嗎。 之后就表示他這里也通過(guò)了。 這一兩天給我約HR。
微信HR面_電話
果然, 兩天后, 微信HR來(lái)電話了。
和她聊天很輕松, 從頭到尾都是喊我’龍澤 .. 龍澤’, 感覺很親切。 主要也是圍繞職業(yè)規(guī)劃等展開。
然后最后就問(wèn)我, 是否愿意來(lái)微信實(shí)習(xí), 如果愿意, 馬上就給我offer, 如果還猶豫, 考慮清楚再聯(lián)系她。
當(dāng)然, 我表示愿意。 然后hr留了微信號(hào), 說(shuō)安排同事給我發(fā)確認(rèn)函。
當(dāng)天晚上, 另外一個(gè)人力資源的妹子打電話, 和我討論薪資等問(wèn)題..
總的來(lái)說(shuō), 微信從一面, 到最后確定下來(lái), 就經(jīng)歷了4天。 非常效率。 中間也很愉快。
說(shuō)來(lái)也巧, 網(wǎng)易和微信是同時(shí)發(fā)來(lái)來(lái)的offer。網(wǎng)易電話剛放下沒(méi)多久, 微信hr就來(lái)電話了。所以當(dāng)時(shí)兩邊是先都允諾能去實(shí)習(xí)了,畢竟時(shí)間太緊, 還沒(méi)考慮好。
之后還是因?yàn)閭€(gè)人原因, 選擇了微信, 所以當(dāng)天下午就打電話給網(wǎng)易, 告知了他們。多少也有些遺憾, 畢竟網(wǎng)易也是我很向往的一家公司。
好了, 到此, 這段時(shí)間的面試總結(jié)就寫好了。下面就我個(gè)人來(lái)說(shuō), 提幾點(diǎn)建議:
基礎(chǔ)。 不管是哪個(gè)方向, 基礎(chǔ)很重要。就比如iOS, objc的方方面面都必須了解。
全面。 有些東西, 雖然不見得能答好, 但你至少應(yīng)該懂。
設(shè)計(jì)模式。 主流的那些設(shè)計(jì)模式非常有必要了解。
算法。 這個(gè)不是說(shuō)惡補(bǔ)能補(bǔ)好的。建議大家長(zhǎng)期積累。 另外推薦<劍指offer>這本書。同時(shí), 可以在這里線上答題: ??途W(wǎng)-劍指offer
簡(jiǎn)歷一定要真實(shí)! 基本上面試官都是圍繞簡(jiǎn)歷展開交流的。 懂或不懂, 一問(wèn)就知道, 沒(méi)必要搬起石頭砸自己的腳
提前準(zhǔn)備。 比如自我介紹, 項(xiàng)目介紹, 職業(yè)規(guī)劃等等?;径际潜貑?wèn)的題目,能提前準(zhǔn)備就提前準(zhǔn)備好。
開源, 分享, 積累。 我一直認(rèn)為, 分享和開源是程序員進(jìn)步的不二法門。 我建議每個(gè)程序員都應(yīng)該有自己的Github, 有自己的博客。就這幾次面試來(lái)說(shuō), 博客和Github幫了我多。 網(wǎng)易面試官直言, 他們認(rèn)真看過(guò)我的Github, 微信HR問(wèn)我要CSDN博客ID, 說(shuō)她很感興趣。幫助別人, 也是幫助自己。
溝通。 有時(shí)候一個(gè)問(wèn)題, 可能不懂, 甚至題目都不理解。不要害怕, 主動(dòng)與面試官溝通。 我在網(wǎng)易面試的時(shí)候, 關(guān)于全拼算法的實(shí)現(xiàn), 我當(dāng)時(shí)連全拼都沒(méi)一個(gè)完整的概念, 它要滿足哪些條件更加不清楚。我跟面試官坦誠(chéng)我不懂這個(gè)概念, 與他們的一步步溝通中實(shí)現(xiàn)了自己的算法。 所以溝通, 遠(yuǎn)比悶頭寫, 到頭來(lái)還可能錯(cuò)誤來(lái)的實(shí)在。
自信。 能得到面試機(jī)會(huì), 最起碼證明, 你很優(yōu)秀。 我覺得自信很重要。 如果一開始, 就表現(xiàn)的慌慌張張, 畏首畏尾, 那么不管是你自己的發(fā)揮, 還是面試官對(duì)你的看法, 我覺得都不會(huì)很好。
敲了一下午,真累!
希望和我一樣大三找實(shí)習(xí)的朋友, 都能拿到自己心儀的offer!
學(xué)習(xí)的路上, 與君共勉。
來(lái)源:CSDN博客 作者:Colin丶
聯(lián)系客服