6天面試10家,已經拿到offer,Java程式設計師的面試總結分享

2020-12-09 程式設計師託尼

前言:

最近一朋友離了職後,找工作前前後後面試了6天,一共10家公司,我找他分享出面試過程及經驗,希望能對各位正在面試中或者準備面試的童鞋有所幫助,以下面試企業為了保密不說實際名稱。以下為第一人稱。

第一家公司:簡稱A 

由於剛剛開始面試選擇試試水,就在智聯上投遞了一寫公司,這家就是第一個讓我去面試的公司。這家企業是新三板上市的一家公司,大約有700人那樣。面試時間定在早上10點,去了以後給了一份面試題

內容如下:

一、Spring1.請說明spring實現AOP的兩種方式及其區別。2.請說明Spring生命周期中的可擴展接口及其定義的方法,如FactoryBean.3.請簡述Spring Cloud的名個組件及其功能。二、MyBatis4.請說明MyBatis中DAO接口的實現機制。5.現在需要增加一個計算SQL執行時間的插件,請簡述該插件的實現原理與方式。三、前端6.請簡述Prototype的應用場景及其基本用法。7.請簡述Promise的應用場景及基本用法。四、分布式及中間件8.請簡述CAP理論。9.請簡述Redis 2.X實現高可用的方法及如何水平擴展。10.請列舉常用的消息中間件及其特點。11.請簡述HBase的基本概念、應用場景及其與關係型資料庫的區別。五、Java12.請簡述Sring.intern()方法。13.請簡述jdk的類加載機制、ClassLoader及雙親委派模型。14.請說明Executor、ExecutorService、Executors、ThreadPoolExecutor之間的關係。15.請簡述Java並發編程中,鎖的幾種類型。16.請說明CountDownLatch、CyclicBarrier、Semaphore的適用場景。17.請說明ConcurrentHashMap在1.7 和1.8中實現的不同之處。18.請簡述volatile關鍵字的含義、JMM內存模型及happens-before原則。六、設計19.請簡述Observer模式及其在JDK中的應用。20.請給出一個分布式網絡爬蟲的設計架構,支持每天G級的爬取數據量。

然後hr一會告訴我筆試不過,無法進入面試。這個還是很難受的。因為在面試過程中不管如何都會和面試官聊下,起碼知道哪些題不對,也可能是我自己準備不充分導致,第一次面試就這樣草草結束。

第二家公司:簡稱B

這家公司規模很小,大約就50人吧,是boss直聘上一個hr主動聯繫讓去試試,所以就去,對於這家企業還是信心滿滿的,想找點自信,結果恰恰相反。

去了以後也沒面試題,寫了一個登記之後hr就讓我和面試官聊天,首先讓我把項目流程介紹一下,我說了以後。他說我看了你的github代碼感覺還不錯,你給我show一段。有點懵逼,猛下這麼說出乎我的意料,我就說寫個2分查找吧,就隨手寫了一個但是我竟然犯了一個致命錯誤,返回值有些問題寫成null,但是明顯我採用的是int而不是integer。

然後接著問我web前端遇到過什麼問題沒有,我說平時這方面遇到問題倒不是太多,他說好你給我寫個過濾器,這個實在是沒法寫出來,平時可能都是電腦寫,足以說明我準備的確實不充分,後來又讓我寫個sql,雖然最終寫出來了但是時間過久。然後聊點其他的就說你回去吧,後續通知,我就知道這次面試再次掛了。心情低落極點了。

第三家公司:簡稱C

這家企業規模還不錯,有上千人吧,環境也可以,是拉鉤上看到的一家企業。也是10點面試,去了給了一個面試題,一份心理測試題,面試題難度還是有點的,10道選擇題考察知識多少final,static,do which等知識難度倒是一般,後面是大題,比如寫出ssh的配置 ,資料庫連接池配置,thread和runnable是什麼區別,寫幾種單利模式,Linux一些查找命令,一個複雜的sql語句。Linux我不太熟悉,沒寫出來,ssh配置這個平時看的也是,寫的很一般,資料庫連接池配置寫的也一般。

然後是心理測試,這個測試題非常多而且考察東西也多,包括一些國外的名人問他幹嘛的,設計怎麼讓北京三環不堵車,還有怎麼設計類似摩託車但是不耗油等等吧,答完題大約11點半,然後第一面竟然是hr,聊了還不少,關於為啥跳槽,發展方向,以前做啥等。第二面大約就幾分鐘,問我會Linux不,我說不怎麼會,以前你幹嘛的然後就說你回去吧我們後續通知。基本也掛了。

第四家公司:簡稱D

從第四家公司開始變得順利,連續過了6家公司。經過前3家失敗,我回去總結下,把基礎知識複習一下,避免死在這樣的問題上。這家企業大約300人,一家傳統的公司,主要大數據方面的。去了也是一份面試題,這個面試題對我來說比較簡單,選擇題就不題了,大題是三個一個問什麼是ioc和aop,一個是設計模式,一個是sql。

大約半小時就寫好了,然後面試官看了一眼面試題也沒問面試題上問題,問我你說咱們聊什麼知識,我就說多線程吧,然後他問我Java線程池幾種方式,我回答4種,各位自己查哪幾種,然後又聊thread和runnable,接著問hashtable和ConcurrentHashMap,因為看過這兩個的源碼所以回答還是挺輕鬆的。陸陸續續問了一些線程安全問題,最後又聊了一些存儲過程知識,這個平時用的少回答的一般,但是我觀點是儘量少用存儲過程,避免把大量業務放在資料庫處理。

還問了一些資料庫索引設計問題,這個我會,所以答的也可以。最後問下我薪水我說最低多少,就開始二面了。二面是一個不是Java的,是這整個團隊的組長,主要問了一些如何處理幾億日誌查詢,我說可以採用存儲過程還有內存資料庫什麼的,她說不是好的方案,接著我問你們有什麼好的方案,她說我們暫時沒有,用的就是你剛剛說的。總體還是挺滿意的然後問我薪水,讓我等下說讓總監決定我的薪水,然後總監不在,這個確實不在,他領著我去人事那邊做個登記說明天給電話來複試。

大約2天後打電話讓去複試,因為我手裡有offer了就給hr說了情況,我說你問下,如果薪水不到,我就不去了。後來hr回復他們確實給不了,我說那就算了。這家公司是好的開頭,整個信心提升了好多。

第五家公司:簡稱E

這家企業大約700人,300多個研發,辦公環境倒是一般,下午2點過去的,也沒有面試題,主要問線程知識,然後問我你熟悉哪個數據結構說個,然後我隨便說了幾個他說可以,又問我要多少薪水,最低多少我說了下他說沒問題,就讓我去二面了。

二面問的是資料庫,線程方面知識,我感覺答的倒是一般,大約聊了半個小時,然後說我們今天就聊到這,然後我就回去準備下一家,然後回來路上一面就給我打電話說你面試通過了,薪水按照你說的來,問我啥時候入職我說下周,他說儘快,最後hr也給我說了薪水,過了一天就發了offer,這家公司感覺還行吧,最後只是感覺挺對不起hr的,答應去沒去,打電話時候明顯生氣了。

第六家公司:簡稱F

這家公司規模還不錯,可能有些買水果支付錢的時候還用到,但是總部在上海,北京新成立不久。這家沒面試題,主要是針對項目,問我遇到過什麼問題,為什麼這麼設計,好處在哪裡,我都一一解答了,聊得時間蠻久的,最後他說他們加班可能會少,團隊目前就5個人,問我能否接受,然後又說自己公司很有前景什麼的一堆,我個人不喜歡這樣小團隊,坑太多就說我回去考慮下給你打電話,當然薪水他也說可以按照我要的來。因為不喜歡這樣環境所以也沒打電話給他。

第七家公司:簡稱G

這個公司可以算是3線網際網路了,小有名氣,規模也比較大,當時是很想拿下的,下午2點過去的,不過面試的還挺多的,就我那一屋子就3個人,面試題是一個小時,第一題主要是針對目前流行的一些技術,讓解釋下。

我大約搞定了80%,因為平時看的多,但是也很多只是知道存在並不知道用法,第二題是一個排序,我寫了一個快排,第三題是求一個數的質數第四題是二叉樹(個人覺得出的有問題我後來問題這個題意義是什麼他說考察一下是否會寫遞歸)第五題是設計題我參考了一下集合方面的設計,採用接口+抽象類+類這種方式。最後是一個排序,我沒有多少思路。

面試時候可能人多直接由技術總監面試,技術考察點倒不是很多,著重考察個人,問你如何展開工作,你是什麼樣的人等等我回答的還可以,然後他說你的薪水多少我說下,然後他籤字說去找hr吧。這家過的很輕鬆。

hr給的薪水明顯低些,但是他們4個月獎金,3個月一發,考核是0.8到1.2基點。offer合同也有寫,應該比嘴上說我們幾個月年終獎靠譜多了。這家企業我猶豫了好久,因為後面我成功面試了另外一家,這家技術總監給我打電話聊了有半小時說了一下他們的前景而且薪水會加到比我拿到的只多不少,hr後來打電話也確認了這件事。

在後來屬於我的直屬上司又打電話和我聊聊,不過說實話挺感動,我說我們加微信吧,以後有機會再合作,因為網際網路圈子很小。

第八家公司:簡稱H

這家企業規模還挺大,讓寫一個心理測試題,主要是php開發,根本就沒有Java開發,主要想招幾個人做一些項目維護,來了一個面試還挺帥的,主要就問項目,沒什麼具體技術點,就是我們相互吹吹牛逼,他吹完我在吹,然後說小夥子很不錯,要不要考慮來啊,我說這個壓力山大啊,你容我考慮考慮就回去了,反正我肯定不想在這樣環境工作,很苦逼。

第九家公司:簡稱I

這家公司知名度挺大的,估計大家也都知道。下午本來約好是4點面試,但是我中間有事遲到了,4點半過去的。第一面的面試官很nice,感覺人特別的好,也很隨和,生活中是值得交的朋友。第一個問題問我什麼事面向對象,反正我回答滔滔不絕。

第二個問了hashtable相關的知識這個我也會接著我們又聊聊volatile,我又說了Java內存模型,後來讓寫個算法,寫的不太好,他說沒關係,我只是想看看你的代碼風格。然後又讓寫個sql,我隨手就寫出來,然後他說你在寫個那個有點複雜沒寫出來,他說沒關係,這個不是面試的範疇,有點難為你了,這個不算啊,不要在意。

後來我記得還問了資料庫索引方面知識,最後告訴我你的一面過了,你等下一面吧(反正這個面試官給了我很深的印象,人確實不錯)。

二面主要考查的是項目,主要問了我最後一個項目包括很多細節,如何優化的並且畫圖,同樣也讓寫個算法,不過比較好的是讓偽代碼就行,所以我還是寫出來了,不過又問有沒有更好的方式,我想了想說目前我也沒更好的方式了。(遇到算法題哪怕在複雜只要實現就寫,能寫出來比不會寫強很多)整個面試還是圍繞項目展開的。

後來面試結束他說整體還可以,某些細節沒答出來,但是整個思路都是對的,那時候都7點多了,問我明天再來一次複試怎麼樣,我說我只有上午有時間,下午我有面試。他說你等下我去找老闆(就是他的領導),然後展開三面,三面上來問了一下整個項目的流程我再次解釋並畫圖,然後聊天過程核心還是團隊協作問題,如何和產品經理溝通,還有一個如果你是組長你會怎麼樣做,側重管理能力,因為我在第二段工作做過類似所以回答起來還是很輕鬆,其實和產品溝通,研發溝通最主要是換位思考,懂的尊重別人。

面試完畢都快9點了,他說hr肯定面不了了,你明天還要不要在來一次,我說明天下午有面試來不了,他說那沒事我讓她電話聯繫你,我說薪水我要多少合適啊,他說你隨便,我說我有offer了說下offer薪水,他說你可以提,我們這邊會給你一個考核的。

最後走的時候說你明天和hr聊天注意點說話不要被刷了,儘量不要說你領導過多好話。反正意思保持中立。前前後後到發offer用了2天時間,hr確實也沒問薪水問題直接他們評定的。我覺得挺理想的。

第十家公司:簡稱J

這家同樣是大企業,名氣也不小。由同事內推過去的。面試的人簡直了實在太多了,感覺所有面試加起來100人都不止,去了也沒筆試題,一面就問我幾個問題,一個是二叉樹的順序排序,會先跟,後跟,中跟就是不會順序,尷尬了。

第二個讓寫一個單例模式,寫了一個內部類。第三個問題問了hashMap的<操作,我回答的不算好,主要考查源碼的,然後讓我寫個歸併排序,這個同樣寫不出來,連續幾個就知道完蛋,肯定不過。果真不過,然後問我面試怎麼樣我說還行拿到幾個offer,他說恭喜之類的話就讓回去了。

總結:

整個面試下來,覺得面試也有運氣成分,但是更多是實力體現,我們不要抱著僥倖的心理,把基礎打雜事,注意說話的方法,一定洋溢著自信。

1、誠懇

注意一點是當面試官問你你有什麼想問他的不,把握好機會,也會可以逆轉局勢。你可以問他需要什麼樣人然後定位自己看看自己是不是,說到底面試的人想要招人過去,記得一定要誠懇。

2、不說大話

不要說什麼大話,什麼我精通多線程之類的。就說你自己性格特點能做什麼樣事,也許面試官會給你一個機會。

3、面前準備

還有就是面試之前記得準備充分,關於是否要看面試題,如果可以還是要看一下,注意一下問題的細節,為自己創造多一點機會。

4、面後總結

還有就是面試完畢之後進行總結,千萬失敗否定自己垂頭喪氣。

如果感覺公司還不錯,就可以踏踏實實工作,不要眼高手低,錯過機會,當你實力很強的時候就是企業主動找你的時候。

最後:

把面試題和在網上找到的一些答案整理了PDF,送給有需要的朋友,幫忙轉發一下,私信【面試資料】即可獲取免費了!還有一些架構相關的視頻,其中覆蓋了網際網路的方方面面,期間碰到各種產品各種場景下的各種問題,希望可以幫助大家擴展自己的技術廣度和知識面。

相關焦點

  • 3年的java程式設計師,歷經3月7輪面試入職阿里,最後薪資意外
    最近有一名java程式設計師,成功拿到了阿里雲的offer, p6的java開發崗,這本來算是一件可喜可賀的事情,可是這名java程式設計師怎麼也高興不起來,並且還是相當的糾結,這是為什麼呢?首先他對最後的薪資不是很滿意,比現在的工作只是高了一點點,這是其一,更重要的是,為了這次面試已經花了他整整三個月的時間,經歷了7輪面試,一路上各種jvm、多線程編程、算法、linux、網絡等面試題,面得他真是懷疑人生,真可謂歷經千辛萬苦,歷經九九八十一難,最後算是修成正果,拿到了真經啊,可是翻開經書一看,是空白,我想這大概就是他的心情了吧。
  • 【面試分享】大三本科生拿到阿里研發、網易郵件、騰訊微信實習offer面試經驗分享
    (已經拿到網易和微信的offer)PS: 總結不是空穴來風, 每次面試完, 我都會坐著認真總結之前的面試, 記錄每道題, 每個答案的關鍵點, 再比對下自己的回答是否完整。總算,踏實了…騰訊_微信事業部(拿到offer)之前騰訊校招的時候, 投了簡歷。 不過一直到周圍同學都參加了在線筆試, 我仍然沒收到通知的時候, 我基本上已經放棄了。覺得自己應該在簡歷環節就被刷了, 比較悽涼..
  • 15家面試、幾個offer,面試歷程分享
    ,分享給大家!1、新東方 03_19技術面試,兩輪,地點:中關村地鐵站E口,某大廈大廈6層,面試時間:2019_03_19_10:30(提前到了45分鐘)1、自我介紹2、項目介紹3、LiveChat項目,第一個4、海南海航項目,第二個,最熟悉5、技術:資料庫 mysql—1.給查詢頻繁的詩句建立索引—使用好的sql
  • 迷茫期後面試阿里奮發圖強8個月,如願拿到offer,定級阿里P7
    前言要說程式設計師最想要進入的大廠,阿里,騰訊,百度必定是首當其衝,而網際網路大廠必定是阿里巴巴首當其衝,今天就來分享一下我面試阿里的一些經歷與心得。不想進大廠的程式設計師不是好程式設計師!決定你面試能否成功的因素中實力固然佔有很大一部 分比例,但是如果你的心態或者說運氣不好的話,依然無法拿到滿意的 oer。運氣暫且不談,就拿心態來說,千萬 不要因為面試失敗而氣餒或者說懷疑自己的能力,面試失敗之後多總結一下失敗的原因,後面你就會發現自己會越來越強大。
  • 程式設計師真實面試經歷:15家公司,幾個offer
    兩個月的 Java面試歷程,分享給大家!
  • 阿里螞蟻金服Java程式設計師面試的11個問題,你會幾個呢?
    此前,w3cschool app開發者頭條上分享了各種的名企程式設計師面經。比如阿里巴巴java面經、小米java面經、網易java面經等,吸引了大多數的程式設計師們的圍觀。在分享螞蟻金服Java程式設計師面經前,不妨來看下Java程式設計師面試時要注意3大要點:0、重視基礎在面試之前,有必要將基礎的知識點重新過一遍,比如並發優缺點、內存可見性、鎖、同步、線程池框架等。
  • 給Java程式設計師的20個鍊表面試題
    Java面試中20大鍊表問題下面列出了技術面試中一些最常見且受歡迎的鍊表面試問題,有些已經附上了答案,但仍然建議你先自己嘗試解決問題。 答案:http://www.java67.com/2017/06/5-difference-between-array-and-linked.html10. 如何移除鍊表中的倒數第N個節點?
  • java程式設計師面試遇到string題如何不涼?
    最近看到好多同學都在儲備面試知識,以備來年輕鬆應對面試官,拿到心儀offer,之前好多同學反映遇到string,都只能送給自己一首涼涼。別涼,今天小編就為大家準備了面試中常遇到的string題,讓你輕鬆愉快拿offer~首先跟大家說說如何創建string~創建字符串較簡單的方式如下String str = "Runoob";在代碼中遇到字符串常量時,這裡的值是 "Runoob"",編譯器會使用該值創建一個 String 對象。
  • 面試感悟:3年工作經驗java程式設計師應有的技能
    簡單先說一下,LZ坐標杭州,13屆本科畢業,算上年前在阿里巴巴B2B事業部的面試,一共有面試了有6家公司(因為LZ不想請假,因此只是每個晚上去其他公司面試,所以面試的公司比較少),其中成功的有4家,另外兩家失敗的原因在於:1、阿里巴巴B2B事業部的面試,兩輪技術面試都過了,最後一輪面試是對方的主管,由於聽說技術面試過了基本上90%都面試成功了,所以LZ在和主管的交談中也是毫無顧忌
  • Java面試總結之Java基礎
    無論是工作多年的高級開發人員還是剛入職場的新人,在換工作面試的過程中,Java基礎是必不可少的面試題之一。能不能順利通過面試,拿到自己理想的offer,在準備面試的過程中,Java基礎也是很關鍵的。對於工作多年的開發人員來說,Java基礎往往是會被大家所忽略的,但在面試的過程中,確是必不可少的問題。在這篇文章裡就來為大家總結一下經常會被問到的Java基礎題。
  • 給大家分享一下阿里三面的面試真題
    大廠難進,阿里作為眾多程式設計師的聖地,進去更是難上加難。
  • Java程式設計師在面試前要做好哪些準備呢?
    對於Java程式設計師而言,今年用人單位無論是筆試還是面試,要求都有所提升,因此,想要找到一份滿意的工作一定要做好充足的準備。Java程式設計師在面試前要做好哪些準備呢?下面千鋒就給大家分享,Java程式設計師如何在面試中彎道超車。1、簡歷如何寫對於面試者來說,簡歷是他們給用人單位的第一印象。
  • 面試總結——Java高級工程師
    尚學堂AD試前面也總結了一和二, 這第三篇可能更偏向於是內心的獨白篇和面試技巧總結吧…..6、合理安排你的面試時間(如果有多家公司的面試機會,儘量把你想去的公司放到最後去面試)原因:估計很多人都不理解這個,可能大部分的人對於如何安排面試時間比較迷茫,隨意安排。可是這裡有個技巧,如果同時有多個面試機會,你把你最想去的公司放到最末尾去面試,這樣你經歷過了前面的這些公司篩選,如果成功了是個機會,如果沒成功,也是為最後做鋪墊。
  • 一位95後程式設計師的分享:如何拿下年薪45萬的offer?
    原題 鍊表找公共節點 鍊表找環結果:一共手撕6道題目,通過面試,拿到了cong郵件實習資格,但最終沒去實習。以上是我的春招經歷,最終拿到了招行信用卡、微軟和華泰證券三個實習offer,我選擇了華泰證券四個月的實習。以下是秋招的面試經歷。
  • 上兩個月,15家面試,幾個offer , 我的面試歷程!
    工作經驗,下面是這兩個月的面試歷程,分享給大家!>>1、新東方 03_19技術面試,兩輪,地點:中關村地鐵站E口,某大廈大廈6層,面試時間:2019_03_19_10:30(提前到了45分鐘)1、自我介紹2、項目介紹3、LiveChat項目,第一個4、海南海航項目,第二個,最熟悉5、技術:資料庫 mysql
  • 收穫8個Offer,來給大家分享備戰和面試經驗
    下面我給大家分享一下我整個求職歷程的準備經驗+面試經驗,希望對大家有幫助。普通211本科非計算機專業,沒有任何實習經驗。校招期間,大大小小的公司一共投遞60多家,不過也放棄了很多家。(這裡一定不要嫌麻煩,集中投簡歷確實是一件很枯燥的事情,但是為了增加求職成功的概率,是必須要克服的)最後拿到的offer:vivo、oppo、平安科技、深信服、美團、騰訊、蘑菇街、恒生電子。還有一些小公司或者知名度不太高的就不列舉了,之所以投遞也是為了積累面試經驗。大三上半學期的時候,就必須要規劃自己的人生路線了,要儘快決定考研還是找工作,不要後面長期猶豫不決。
  • 10家科技和金融公司full-time面試總結(offer@Linkedin, Goldman Sachs)
    總共面了10多家公司,挑選了10家映象比較深刻的寫在這裡,一共7個onsite,兩個offer,分別是Linkedin和Goldman Sachs。最後從了Linkedin。由於NYU的地理位置和校友分布,我們CS系絕大部分人的出路是NYC的金融公司。
  • 90天,從Java轉機器學習面試總結
    機器學習面試過程——難6周學習過後開始試水機器學習市場,也正好是世界盃結束的日子。由於沒有經驗,先投了幾個試試,鍛鍊一下,都是小公司。可能是這個市場還是挺寬容的,接到的回覆有不少,一些電話面試就直接掛了,一些聯繫發簡歷後也掛了。面試機會也挺多,但是深感知識深度、項目經驗不足。
  • 程式設計師必備的app推薦:提升技術,面試,記錄總結的平臺
    發現有趣app,專注分享高質量、有趣、有用的APP。
  • 錯過金三銀四,找工作5個月,面試15家,終於拿到3個offer
    找工作5個月,面試15家,3家offer,敲定最終offer,終於在今天提了離職基本上3-4月份大家會在市場上看機會,留出來的崗位多半是年前或者年後優化空出來的,一些有意向走的同學多半還沒提離職,基本上4月底能拿到offer,那也至少要等到5月份坑才會陸陸續續的空出來,所以5-6月份會出現較多拿到新offer而辭職空出來的hc。