自從拿到阿里的offer之后竹伸,不斷有學(xué)弟學(xué)妹來加微信詢問面試和準(zhǔn)備的事情书在,剛開始還有耐心一個個回答,但后來發(fā)現(xiàn)重復(fù)的回答著實弄的自己索然無味悍缠,索性就在這里統(tǒng)一寫個文檔殊鞭。
一澈灼、 面試流程:
我一共經(jīng)歷三輪面試絮缅,兩輪技術(shù)面怎燥,一輪HR面。HR面結(jié)束次日拿到offer。
二喂链、 面試內(nèi)容:
自我介紹返十。雖然并不是每次面試面試官都會要求自我介紹,但連續(xù)三輪面試都不遇到自我介紹的可能性也不大衩藤。同時吧慢,自我介紹是一個較易準(zhǔn)備的部分涛漂。所以赏表,無論如何準(zhǔn)備好自我介紹⌒僬蹋考慮到大部分人對編程內(nèi)容都會有所偏重瓢剿,所以在自我介紹過程中使用技巧引導(dǎo)面試官的注意力也非常重要,當(dāng)面試官的注意力落在你所擅長的領(lǐng)域時悠轩,你就能在面試過程中發(fā)揮最大的優(yōu)勢间狂。
項目。兩輪技術(shù)面過程中火架,面試官都花了很多時間針對項目進行提問鉴象。但提問方向很常規(guī),包括項目整體構(gòu)架何鸡、所使用的數(shù)據(jù)結(jié)構(gòu)纺弊、項目主要技術(shù)難點、遇到難題如何解決骡男、項目人員分配問題等淆游,只要全程參與項目并對項目足夠熟悉,基本可以應(yīng)付這一部分的問題隔盛。
競賽犹菱。我并沒有參加過較大型的賽事,所以直接回答沒參加過吮炕。但若參加過阿里方面舉辦的競賽腊脱,可在面試過程中作為較大的加分項。
編程龙亲。阿里雖并不強制要求面試過程中進行現(xiàn)場編程陕凹,但面試官總要對面試者的算法和編程能力進行檢驗,所以大部分面試者還是會被要求進行現(xiàn)場白板編程俱笛。
其他基礎(chǔ)性問題捆姜。基礎(chǔ)性問題涉及范圍很廣迎膜,你會被問到的具體問題取決于你項目的偏向泥技、面試中回答的情況及面試官的偏好。就我個人而言磕仅,被問到的問題包括:什么是StackOverflow珊豹;Poll和Select區(qū)別簸呈;Hashtable, HashMap,和ConcurrentHashMap 的底層實現(xiàn)原理;GC的工作原理店茶;OSI七層協(xié)議蜕便;實現(xiàn)多線程的方式;線程同步贩幻,并發(fā)操作怎么控制轿腺;HTTP和HTTPS的區(qū)別;sendRedirect, foward的區(qū)別丛楚;Session, Cookie的區(qū)別族壳;JVM垃圾回收實現(xiàn)原理;TCP中斷連接四次揮手趣些;基本數(shù)據(jù)類型仿荆;死鎖;Java和C/C++之間的差別坏平;數(shù)據(jù)庫事務(wù)隔離機制的特點等拢操。(排序不分先后)
其他常規(guī)HR的問題。包括對公司文化的理解舶替,對公司發(fā)展前景的看法和建議令境,對前兩輪面試官的看法,在讀書期間參加過的社團活動坎穿,印象最深刻的事情展父,個人的優(yōu)缺點,興趣愛好玲昧,喜愛書籍栖茉,期待薪酬,入職情況等孵延。
三吕漂、 算法題
收集了身邊幾個參加阿里面試的同學(xué)的面試情況,發(fā)現(xiàn)阿里面試考察的編程題都較簡單尘应,基本就是對數(shù)據(jù)進行排序或查找惶凝,相同或者相類似的題目都可以在Lintcode上面找到。我當(dāng)時被要求現(xiàn)場手寫二分查找的算法犬钢。算法不難苍鲜,比較麻煩的是現(xiàn)場手寫以及盡量做到bug-free。
四玷犹、 前期準(zhǔn)備
參加競賽混滔。如果是為明年或后年面試做準(zhǔn)備,可盡量參加阿里舉辦的相關(guān)競賽,作為自己的加分項坯屿。
鞏固自己的計算機基礎(chǔ)知識油湖。阿里面試官在校招過程中,對基礎(chǔ)知識的扎實程度很看重领跛,所以一定要穩(wěn)扎穩(wěn)打乏德。
積極刷題。面試中面試官要求手寫的算法大都大同小異吠昭,皆可在類似lintcode這樣專門刷題的網(wǎng)站上找到喊括。不僅我,包括我認(rèn)識的其他人怎诫,面試中遇到的算法題都基本不會逃脫lintcode的范圍瘾晃。只要面試前積極刷題贷痪,對所有面試題做到熟稔幻妓,就可以自如的面對面試中出現(xiàn)的算法題,才能進一步做到bug-free劫拢,進一步提高代碼的運行效率肉津,給面試官留下最好的印象。
項目在精不在多舱沧。對手頭已經(jīng)進行的項目妹沙,一定要認(rèn)真做,深入了解其內(nèi)在原理熟吏,不可浮于表面距糖。
五、 小建議
在進行面試前牵寺,對自己的項目進行回顧悍引、加深熟悉和梳理。保證不在項目問題上丟分帽氓。
知之為知之趣斤,不知為不知。校招過程中黎休,面試官不會因為你在一個領(lǐng)域的不熟悉而否決你浓领,重要的是表現(xiàn)出扎實的基礎(chǔ)功底和優(yōu)秀的潛能。
使用lintcode進行刷題時势腮,利用類別分類及難易分類功能從易到難集中刷題联贩,提高刷題效率。
刷題過程時捎拯,適當(dāng)進行白板訓(xùn)練泪幌,降低面試過程中白板編程的陌生感和不適應(yīng)感。
刷題過程中勤加總結(jié)并進行記錄,方便面試前突擊座菠。
對于HR最后“你還有什么問題狸眼?”,可就企業(yè)社會責(zé)任的浴滴、員工的食和行進行提問拓萌。