從面試連跪到收割offer,回顧個人春招面試歷程(研發崗位)

微信公衆號【程序員江湖】java

做者黃小斜,斜槓青年,某985碩士,阿里研發工程師,於2018 年秋招拿到 BAT 頭條、網易、滴滴等 8 個大廠 offermysql

我的擅長領域 :自學編程、技術校園招聘、軟件工程考研(關注公衆號後回覆」資料「便可領取 3T 免費技術學習資源)jquery

前幾天我發了一篇文章從零基礎到拿到網易Java實習offer,我作對了哪些事,這篇文章介紹了我準備2017年春招實習的歷程。可是呢,裏面沒有很詳細的麪筋,不少讀者以爲不過癮,因而筆者從塵封多年的帖子中找到了我當年記錄的面經,在這裏分享給各位看官哈。linux

程序員

今生與你,江湖相逢面試

阿里巴巴 春招實習 電話面試redis

一面算法

那一年春天,大概是3月份左右,興致勃勃地投了阿里的Java實習崗位,沒有內推,走的是正式流程,結果面試卻來的比想象中早一些。spring

當時是在阿里招聘官網上直接參加視頻面試,第一次面阿里,當時仍是挺緊張的。sql

一面面試官問的問題比想象中要簡單,一塊兒來看看都有什麼題目吧。

1 項目

當時我沒有什麼拿得出的項目,一個是學校的實訓項目,一個簡單的Java Web應用。另外一個則是我在大四暑假水來的實習項目。整體來講沒啥亮點。

2 項目中的問題

面試官顯然對這些項目沒啥興趣,因此沒問幾個問題就跳過了。

3 Java三大特性

4 Jvm虛擬機 內存結構、算法、垃圾回收

當時已經看過了《深刻理解JVM》因此這些問題基本都回答上來了。

5 集合類 鏈表和數組的區別 map和set的區別

主要考察對集合類源碼的理解,那個時候理解的還不深,可是這些都是面試常見考點,我靠着刷面經也基本都答上來了。因此建議你們要多看看集合類的源碼,後來我在秋招的時候就避免了這一問題。

6 二分查找代碼

7 mysql相關的問題

8 spring

9 先後端數據交互

10 網絡、操做系統

後面這些問題記不大清了,可是都問的比較基礎,基本上就是刷過面經就能搞定的程度,當時對數據庫的索引沒有答好。

後續:

一面以後立刻來了二面,二面面試官問了一個問題就讓我等結果,而且告訴我他們的部門是阿里雲。

原本我還覺得這是過了的意思,後來一個HR問我一週內能不能到崗,我說大概要兩週,結果。。。結果竟然就沒有下文了。

到如今我都不知道這個HR是否是由於時間問題而拒絕了我。因而我就這樣第一次和阿里擦肩而過。(第二年春招實習我又和阿里擦肩而過,不過那一次是我主動放棄的)

因此告誡你們,若是真的是很想去的公司,必定要作好隨時打包上班的準備,不要重蹈個人覆轍。

騰訊  春招實習 電話面試

一面掛

很興奮地參加了騰訊的春招實習生面試,當時對騰訊的後臺開發崗位還沒啥瞭解,事業羣也沒選。而後妥妥地一面掛了。

1 http的數據包格式

2 tcp包含ip麼

3 tcp的數據包格式

騰訊確實很喜歡考計算機網絡,我當時對這塊基本沒準備,掛的很完全。

四、mysql數據庫鏈接池的驅動參數

五、數據庫鏈接池如何防止失效

六、部署項目時tomcat 的參數

問的角度有點刁鑽,當時沒答上來,感受有點勸退的意思。

7 熱加載的原理

8 mybatis的#和$號區別

9 java的jdk源碼

10 hashmap的iterator讀取時是否會讀到另外一個線程put的數據

這個是不會的,迭代器在迭代時若是集合類插入新元素,modcount會變化,此時迭代器的迭代過程應該會失敗退出。

11 Linux的顯示文件夾大小 ls -al

12 Linux的查看端口狀態 natstat加參數

13 linux的查看進程的啓動時間 linux ps

好吧,這就是騰訊第二喜歡的操做系統和Linux。

騰訊 平常實習生 電話面試

一面掛

當時我已經去了網易遊戲實習,某天在杭州逛該的時候,接到了騰訊的面試電話,因而我就在商場裏完成了此次面試。當時是CDG部門面的我,尷尬的是當時我不知道這個事業羣,致使我重複問了面試官好幾遍才確認:好吧,我沒據說這個事業羣。

簡單說一下面試題吧:

1 自我介紹

2 項目

3 java的堆和棧

4 內存泄漏發生在哪

5 設計模式 工廠模式 單例模式 舉例子

6 mysql數據庫  實現層級樹形結構  引擎  索引  查詢優化  多方面

這些面試題跟以前面試遇到的沒有太大區別,可是答得並非很好,由於我那時候對有些知識點的理解仍是停留在表面,因此時間一長立刻就忘了。這方面不知道各位有沒有同感。

7 微信紅包的設計   開發  注意    用戶數據的統計  項目相關

不是很常見的面試問題,主要考察系統設計方面的知識,沒答好。這道題網上也能夠找到答案,一些常見的系統設計場景題例如:秒殺系統,直播系統,你們平時也能夠稍微瞭解一下。

滴滴  平常實習生 電話面試

一面掛

1項目ssm

2mybatis與hibernate比較

3快排和冒泡

4hadoop redis

這個當時還不會,連基本概念都不曉得。後來纔開始慢慢重視這方面的學習

5 Linux 顯示文件屬性  殺死進程   找出出現次數最多的ip linux指令

打擾了,對Linux命令極爲不熟悉,建議後端同窗重視這方面內容的積累。

6 sql中惟一索引的使用

索引字段若相同則更新,不一樣則插入。

7 hashmap的線程安全,性質

8 多線程的使用

9 同步解決線程安全但帶來低效率問題。

10 map reduce過程

11 spring的幾個特性

12 aop事務的隔離級別和傳播特性

默認隔離級別: ISOLATION_DEFAULT

感受答的還能夠,可是沒有迴音,有點奇怪。

網易遊戲(offer)電話面試

一面:

1 項目內容

2 數據庫設計

3 項目中併發使用,部署狀況,測試狀況

4 系統頁面讀取不一致,使用異常或者警告。

5 項目中的上傳功能

面試官對項目考察的挺多,好在我事先準備的比較充分,基本都打了上來。

6 final finalize finally的用法和區別

7 hashmap原理

8 static做用域

9 大型系統的架構:高可用,高性能,伸縮性,擴展性。

恰好以前看了《大型網站技術架構》這本書,把後端架構的基礎理論搞懂了一些,因此面試官問起來也能比較好地回答。

10 算法 二維數組求最大圖形面積

11 SQL語句  查找

12 spring的核心原理:ioc aop di

ioc:控制反轉,鬆耦合,自動完成依賴注入。

注入方式:構造器,setter,接口。

實話說,當時對這塊內容理解不深,主要靠刷面經來學習知識點

13 hashmap線程安全 stringbuffer 和 stringbuilder.

二面:

1 項目經驗

2 簡歷內容確認

3 兩個智力題

甲有一個王和另外一張牌,乙有兩張牌,問甲擁有兩張王的機率和乙擁有兩張王的機率

機率問題,不會作

一個圓桌,兩人放棋子,誰沒地方放旗子誰輸,問有沒有必勝辦法。

先手放在圓桌中心則必勝

若是你是Java方向的同窗,那麼我打算向你安利個人另外一個微信公衆號【Java技術江湖】這是一位阿里Java工程師的技術小站,致力於分享Java後端技術文章,以及這幾年學習Java的心得體會,偶爾也記錄在阿里成長的點滴,和你們一塊兒在Java學習道路上成長。

360 春招實習 電話面試**

一面

1 volatile  原理 使用 指令重排  內存屏障  保證內存可見性

2 項目

3 Java的特性   抽象類和接口區別

4 aop切面的功能 和繼承的關係

二面:

1 Java的內存模型

2 Java gc 算法 垃圾收集器 分代 分區 參數配置

Java程序運行時與內存模型的關係,堆中有實例,永久代保存類的信息,加載類後自動初始化靜態內容,而後虛擬機棧進行操做,對象引用指向堆中的實例,實例須要調用對應方法。

4 左移有序數組的二分查找

5 volatile的實現

6 cas操做的實現

底層硬件支持,cas爲一條機器碼指令

7 synchronize關鍵字的使用

8 lock的原理和實現,lock和synchronized的區別

9 寫一個電梯須要用到的類和方法

一道面向對象設計問題,常見的題目我還見過「寫一個地鐵須要用到的類」、「寫一個飯店要用到的類」

10 Java8新特性

明年大家可能要掌握Java9的新特性了吧

HR面掛:

一、自我介紹

二、項目的背景

三、實習遇到的困難和感覺

HR面試開始時還跑去接了個電話。

問了不到10分鐘的問題,問題還都是圍繞實習經歷的。

實習經歷問完了直接說今天面試就到這裏了。

她回覆是掛在第三面,理由是問題理解不夠深刻。當時我就懵逼了,第一次被HR掛。

因此就算是HR面,你們也要好好準備,要否則就太惋惜了。

今生與你,江湖相逢

東 平常實習生**

一面掛

1 mysql行級鎖表級鎖,sql語句寫select * 時如何加行級索

2 項目中的上傳功能。

3 sql優化方式

4 xss攻擊

5 線程安全的實現方式

面試官也挺奇葩,讓我本身打電話找他面試,而後說話快得我聽不清,問問題感受也是比較隨意,沒下文了。

搜狐(offer) 平常實習生

一面

1 hashmap

2 說一個集合類

3 說說java特性

4 說說js

5 說說jquery

6 項目

7 sql

這個面試明顯很水了,一個女面試官,面了十分鐘就說經過了。

因此有時候不要以爲實習面試過了就很開心,也要根據面試難度來評估對方公司和部分作的事情是否對你有幫助,不然過去以後可能就是徹底在打雜,得不償失。

團點評(offer) 春招實習**

一面

1 Java ArrayList如何排序

2 hashmap原理、衝突處理、優化

3 mysql索引使用

4 Java併發包的內容

5 Java方法棧的做用

6 分佈式、soa、鎖

那時候對這方面還不太清楚,答得比較水。

7 兩個棧實現一個隊列

8 n我的中挑選m我的

9 平時看什麼書

10 spring的 ioc和aop

11 Java8新特性

12 負載均衡方式

隨機、輪詢、加羣輪詢、一致性哈希

二面

1 mysql引擎

2 項目難題

3 jvm優化,博客內容

當時博客寫的還不太多,沒什麼拿得出手的內容,博客這種東西須要花時間積累,建議各位也寫一些。

4 設計模式中的觀察者模式,聚合和組合,組合和繼承

5 hashmap優化

6 redis,分佈式

二面答得不太好。

不過當天發了offer,沒有HR面

CVTE(offer)春招實習**

一面

1 數據庫設計

2 冗餘

3 範式

4 反範式

比較少見的問題,可是不難,範式用於減小數據冗餘,反範式則能夠避免多表鏈接。

5 索引優缺點

6 索引實現

7 mysql引擎行級鎖表級鎖

8 數組中找到第k大的數。

劍指offer原題,不過我當時只想到了先快排再找第k大的數。實際上在快排過程當中就能夠找到第k大的數了。

二面

1 數據庫設計

2 閒聊

hr面

面試官一對二面試,問了半個小時,據說掛人不少,不過最後咱們兩個一塊兒面試的都經過了。

菇街(offer)春招實習  **

一面

1 JAVA的jvm:內存模型、分代的介紹、每一個代的操做,gc算法。

2 類加載器、雙親委派模型、雙親實現,反雙親設計,類隔離。

這部分問的很深了,特別是最後兩個問題,把我問懵了。當時面的應該是基礎架構部門,因此作的技術偏底層,問題都比較有深度。

3 hashmap實現、concurrenthashmap實現。

4 volatile實現,鎖分類介紹、AQS介紹、公平鎖非公平鎖介紹。

當時壓根不懂AQS,對於鎖的幾種類型也不夠熟悉(互斥鎖,輕量級鎖,偏向鎖)。這部份內容強烈建議看《Java併發編程藝術》以及《深刻理解JVM虛擬機進行學習》

5 併發、併發中的threadlocal原理。

6 tomcat介紹

7 三個任務,每一個任務id都爲long類型,如何用一個long來表示三個任務都已完成,要求不能用countdownlauch。

答案是:使用三個id相&,若爲0則完成不然不完成。(位運算性質)

8 NIO和BIO的區別

當時對NIO和BIO的底層原理不瞭解,只會回答很淺顯的區別,實際上須要更加深刻去分析,BIO的本質是基於阻塞IO的socket完成通訊,而NIO是基於IO多路複用來實現的,在Linux上的底層實現就是epoll。

9 Spring的AOP和IOC

10 使用一個數組實現map,能夠用i存key,i+1存value。

11 使用一個數組實現一個鏈表,i存本身下標,i+1存下一個結點下標,i+2存值。面試官要求使用移位操做。沒答上,轉而提問了問題7.

二面

很水,問項目,問學習經驗,問一些有的沒的。

看什麼書,學過哪些技術。

HR面:

已面完,問了半個小時問題,感受還能夠啦。

如今回想起來,當時蘑菇街和美團的offer也是不錯的,不過由於筆者一對網易遊戲有情懷,最後仍是選擇了它。

至此,咱們找實習之旅也到了尾聲。以上就是我所有的實習面經了,不知道你們看的過不過癮呢。

若是你也有面經想要和你們分享,那不妨來找做者投稿吧。每一段找實習或者找工做的經歷都是各不相同的,相信你的那一段經歷也值得收藏。 

相關文章
相關標籤/搜索