非科班普通本科是如何在人才輩出的年代成功入職阿里?(面試經(jīng)驗,建議收藏)

說一說作為我應(yīng)屆時的面試經(jīng)驗吧,大概是投了7家最后過了一家。網(wǎng)易、騰訊、美團、螞蟻金服、滴滴、京東、百度

我記得百度、騰訊和美團簡歷直接被篩選掉了。螞蟻金服、京東、滴滴分別在二面、一面、四面就掛了。后面就一直在準備阿里的這根獨苗,準備面試一起是將近一個月時間,每天除了睡覺就是刷題??赡軟]有人知道這段時間我到底經(jīng)歷了什么

當然最后所有的努力還是沒有白費,在最后的獨苗憑借著運氣踏進了阿里的大門,作為非科班普通本科出門的我已經(jīng)非常滿足了

阿里一面

  1. 自我介紹(個人信息:一分鐘說完了);
  2. 抽象類和接口的區(qū)別(Java核心技術(shù):全部講了一通后,拋出第三個問題)
  3. 抽象類內(nèi)方法如果全部是抽象的,是不是就是接口?為什么有的類繼承一個類后,還要實現(xiàn)多個接口?(Java核心技術(shù):我說了個接口隔離原則,實在不知道他想要啥答案)
  4. 多線程中,線程池用過哪些線程池?(多線程并發(fā):沒用過,講了一些自己了解的);
  5. 線程池中所有的參數(shù)講解一下(多線程并發(fā):corePoolSize,maximumPoolSize,F(xiàn)actory之類的扯了一通)
  6. 線程池中從corePoolSize到maximumPoolSize轉(zhuǎn)變過程,然后一直問我反向轉(zhuǎn)變的操作(多線程并發(fā):就是并發(fā)量突然降低了,這個過程怎么實現(xiàn)的,參數(shù)如何變化)
  7. HTTP發(fā)送請求和接收響應(yīng)的整個流程;(web技術(shù):扯了一下客戶端和服務(wù)端之間的流程)
  8. 403和500狀態(tài)分別講解一下,他們之間有什么區(qū)別;(web技術(shù))
  9. 淘寶里如果按照1-5星的店面,從五家店里一共推送出10個同一類產(chǎn)品,都是隨機推送,但是最后大量的隨機測試后,要保證五顆星的店家推送的商品數(shù)量大概是一顆星店家推送的商品數(shù)量的五倍,且不能破壞其他概率輸出(思維能力:這個問題跟他討論了有10幾分鐘,最后他問我有沒有優(yōu)化。。。我哪知道怎么優(yōu)化)
  10. 一個已知存儲了數(shù)據(jù)的HashMap中如何讓所有的鍵修改成"阿里+原來的鍵",意思是在所有的key中添加"網(wǎng)易"這個前綴。(Java核心技術(shù):我說迭代處理,但是會有fail-fast問題,然后我就瞎扯了同步操作一下)
  11. spring的AOP原理和底層實現(xiàn)(框架技術(shù):扯了一下概念和反射機制)
  12. Spring的注解講一下;(框架技術(shù))
  13. 靜態(tài)代理和動態(tài)代理區(qū)別講一下;(Java核心技術(shù))
  14. 靜態(tài)代理和適配器設(shè)計模式的區(qū)別;(Java核心技術(shù))
  15. tcp和udp的區(qū)別;(計算機網(wǎng)絡(luò)知識:就從可靠性,通訊方式,數(shù)據(jù)大小,應(yīng)用方面說了說)
  16. cglib底層實現(xiàn);(框架技術(shù):懵逼)
  17. 數(shù)據(jù)庫的樂觀鎖原理和實現(xiàn);(數(shù)據(jù)庫:懵逼)

阿里二面

  1. 上來問我項目用的框架,然后問我springmvc里面有的參數(shù)的設(shè)定,問的是細節(jié),然后問我如果傳的多個值是一個對象的屬性,問我如何處理,我說直接在后端接收為對象就行了,然后突然問我http怎么傳對象,這里有點不明白面試官想問啥,然后就換別的問題了,可以序列化對象為二進制數(shù)據(jù),然后在http1.1以上版本傳輸即可,然后再進行反序列化
  2. 數(shù)據(jù)庫索引都有哪些,介紹一下,然后面試官就問我說話的漏洞,感覺會抓住某一個比較突出的詞來逼問,這里除非特別清楚,否則就被問死了,我這里有點虛,回答的有點猶豫, b+樹,hash索引,b樹索引
  3. 數(shù)據(jù)庫事務(wù),然后問我mysql三個select不顯式聲明事務(wù),他們每一條是個事務(wù)嗎?這里記得有點不清楚,就是問不顯式聲明事務(wù),select是一個事務(wù)嗎 默認autocommit,每一條都是是一個事務(wù)
  4. 樂觀鎖和悲觀鎖,我說到了cas,然后問我java中有哪些地方用到了cas,然后我說concurrenthashmap,然后是咋用的,這個類是怎么保證線程安全的,他還說了一個put啥東西我沒注意,就說不知道。 chm,原子類,AQS等。
  5. chm在put操作沒有沖突時進行cas嘗試,直到成功。
  6. 原子類使用cas執(zhí)行自加自減操作防止并發(fā)問題。
  7. AQS的修改state也是使用了cas操作。
  8. 問我序列化,然后問到了遠程方法調(diào)用,我說沒接觸過 序列化主要是把對象壓縮成二進制數(shù)據(jù),進行網(wǎng)絡(luò)傳輸,rpc就是基于序列化和網(wǎng)絡(luò)通信編程實現(xiàn)的。
  9. 問我項目是練手還是買錢,他笑著對我說,我也笑了
  10. dao層是model層嗎?這個以前沒注意,就說是,也不知道對不對,記得以前面試好像有面試官問我model和pojo的區(qū)別
    差遠了。dao是數(shù)據(jù)持久化層,負責(zé)數(shù)據(jù)庫操作,model負責(zé)數(shù)據(jù)模型
  11. 索引在什么情況下會失效,這個當時有點激動,想了一下沒說出來,有點遺憾, 前綴匹配,沒用用到,函數(shù),判空,<>等

阿里三面

  1. 簡單說說在學(xué)校做過最有成就感的事情(和技術(shù)相關(guān)的)
  2. 開發(fā)了一款游戲,搭了一個人博客,寫了博客集,做了3個項目。并且在GitHub上有長期記錄。
  3. 你的項目用到了數(shù)據(jù)庫,談?wù)剬κ聞?wù)的理解
  4. 事務(wù)保證一致性,原子性,隔離性和持久性。
  5. 假設(shè)你要做一個銀行app,有可能碰到多個人同時向一個賬戶打錢的情況,有可能碰到什么問題,如何解決(鎖)
  6. 可能到時同時修改,導(dǎo)致有人修改失敗,匯款出現(xiàn)問題,解決方式就是事務(wù)或者使用鎖。
  7. 說說樂觀鎖和悲觀鎖
  8. 樂觀鎖在數(shù)據(jù)庫中就是MVCC,悲觀鎖就是行鎖和表鎖。innodb支持行鎖,在索引上加鎖
  9. 最近在看什么書
  10. 大數(shù)據(jù),zookeeper,netty。大型中間件,大型分布式,大型網(wǎng)站
  11. Java基礎(chǔ)(就問了一句==和equals)
  12. 說說現(xiàn)在能寫出來哪些排序算法
  13. 在學(xué)校有沒有參加社團之類的
  14. 給定一個文件名,如何在d盤找出來這個文件,說說思路。
  15. 使用操作系統(tǒng)查找。find -name,locate,whereis

阿里四面

  1. 自我介紹
  2. 項目介紹
  3. 做這個項目的動機
  4. TCP UDP IP ICMP
  5. 知不知道一個應(yīng)用層協(xié)議,運輸層既沒有使用TCP,也沒有使用UDP
  6. 二叉樹中求最長路徑。
  7. 遞歸的方式去實現(xiàn)。
  8. 有什么想問我的嗎?

五面(HR面)

  1. 平常怎么學(xué)習(xí)的
  2. 興趣愛好
  3. 覺得自己前面幾輪面試怎么樣
  4. 除了Java還研究過其它什么技術(shù)(我說AI,區(qū)塊鏈)
  5. 跟我介紹一下區(qū)塊鏈~
  6. 怎么看待國內(nèi)區(qū)塊鏈的發(fā)展
  7. 跟我說一下你認為最具有挑戰(zhàn)性的項目
  8. 問我還參加了什么公司的招聘
  9. 如果有網(wǎng)易游戲,騰訊,阿里的offer你會選擇哪個
  10. 英語10分鐘交流(瞬間懵了,這里估計是部門有英語交流要求)

愿各位早日拿到心儀的offer,我是大仙,歡迎大家關(guān)注我?。?/strong>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容