人人網面試經歷

對於一年開發經驗的程序員來講是很是尷尬的,通過一個月的面試總結,也快入職心儀的公司了,差很少算是敲定了工做。因此想到陸續的放出一些互聯網公司的面試經驗來,雖然面不上,可是可提供給別人參閱,以便大家遇到相似或者同一家的公司可以見招拆招!
首先須要說明的是,我可以去人人網面試是經過一家外派公司做爲中介纔去的。這家外派公司叫作:北京銀河創想信息技術有限公司,在智聯投遞的簡歷,那邊的HR打電話通知我週三上午去面試,去以前我百度了這家公司,搜索引擎給的結果是這家公司與「培訓機構」、「不正規」等字樣聯繫起來,當時我心是懸的。不過想到不如虎穴焉得虎子,因而就去了。我暫且把銀河創想的面試過程稱爲一面吧!html

一面

進了公司以後,看到裏面已經來了好幾個來面試的人,遞交簡歷以後被安排到一臺筆記本面前,總共有五道題目,不許百度,不能交頭接耳。他們有一套本身的評分方式,有本身的輸入輸入用例,有點像OJ題目,限時30分鐘。判分60分以上就能進入面試,不及格就不能進入面試,只好走人。
五道題分別以下:程序員

1.結合金融業務,實現轉帳過程,從帳戶A轉到帳戶B,注意金額不能爲負數。面試

public class User{
    private String name;
    private int blance;
    
    //getter/setter方法
}

這道題要作的幾現實它的一個計算方法,上面提供了JavaBean,題目代碼貌似以下:正則表達式

/**
     * 
     * @param blanceFrom 借貸人
     * @param blanceTo 借款人
     * @param blance 借款金額
     */
    public static void execute(User blanceFrom, User blanceTo, int blance) {
        
    }

這道題不難,須要注意的是判斷空指針異常和blance非負數,因此這裏我就不提供參考代碼了。
2.迴文數問題。我感受這道題描述有問題,按照個人理解是寫一算法判斷是否爲迴文數。可是題目卻說好比1221,1234321等都不是迴文數,我一臉蒙逼,問面試官是否是題目描述錯誤了。面試官十分確定的回答我:題目沒有錯,會作就作,不會作的能夠跳過。
本題我直接跳過,不過我解題思路是先把原字數賦值到新的變量,不斷的對原來的數字對10取餘,而後數字自己除以10,直到該數爲0爲止。算法

public boolean isHuiWen(int number) {
        int oldNumber = number;
        int newNumber = 0;
        while(number != 0) {
            newNumber = newNumber*10 + number%10;
            number /= 10;
        }

        if(oldNumber == newNumber) {
            return true;
        }
        return false;
    }

3.統計句子中每一個單詞出現的次數。好比以下句子中數據庫

Java this is a Java Hello World Thank you編程

本句子中,各單詞出現次數以下:設計模式

"Java"出現2次
「this」出現1次
「is」出現1次
「a」出現1次
「Hello」出現1次
「World」出現1次
「Thank」出現1次
「you」出現1次數組

空格不進入統計裏邊。這道題用Map的數據結構來作最適合,Map是一種key-value的數據結構。首先用正則表達式將句子切割成String數組,而後遍歷這個數組把第i個元素的值做爲Map的key,出現次數做爲value,當第一次存入key時value等於1,不然value+1。tomcat

public Map<String, Integer> wordCount(String sentence) {
        String[] strs = sentence.split("\\s+");
        Map<String, Integer> wordMap = new HashMap<String, Integer>();
        for(int i = 0; i < strs.length; i++) {
            if(wordMap.get(strs[i]) == null) {
                wordMap.put(strs[i], 1);
            } else {
                wordMap.put(strs[i], wordMap.get(strs[i])+1);
            }
        }
        
        return wordMap;
    }

4.將阿拉伯字母轉爲漢字。好比123轉爲一百二十三。
這道題當時作不出來,之前見過次題,不過沒有看別人是怎麼解決的,因此這裏貼出別人的博客地址:Java實現中文數字轉換爲阿拉伯數字
5.這道題贊記不起來了。

總共五道題目,當時四道題有思路,包括忘記的第二題。只有第4題阿拉伯數字轉漢字作不出來,半個小時到的時候,面試官過來問我作的怎麼樣了,我說「差很少了」。她運行了一下測試用例,52分。有一些額空指針異常和有些案例沒有經過,她說能夠給我延時,再調試一下程序。在調試的過程當中,有些哥們也提交了答案,其中兩個哥們就喊直接走人。通過10多分的修改,面試官再次來問我結果,她再次運行測試用例,恰好60分
就這樣進入了面試,面試主要問我上一家爲何離職,期待薪資,有沒有女友,她在哪裏工做之類的話題。在面試過程當中,我好奇的問面試官,爲何迴文數那個例子說給的例子是非迴文數?我記得之前在學校學編程的時候,教科書的迴文數概念就是那些數字啊!

面試官:它指的的案例本身定義的那些是非迴文數!

我一臉疑問,想一想也許面試官也不懂技術!因此也別再糾纏了。這時候面試官提出了最關鍵的問題:咱們外派到其餘辦公地點辦公,這點你接受的了麼?

我:外派到北京仍是外地?那麼工資之類的是哪家公司發?...

從面試官那獲得的答案是:外派到北京本地,薪資由銀河創想結算。通常都會有開發任務的,就算沒有開發項目了,他們會喊我回來總部,有五險一金!
雖然在網上聽到外派各類門道多,可是沒辦法,先口頭答應吧!

二面

就這樣我順利進入到二面。剛面完回來的路上,接到一家事業單位的面試通知。雖然是事業單位,但確實合同編制。我在微信跟銀河創想HR說能不能把二面推到週四,由於週三另有安排,HR不回覆,內心沒底,並且當時HR沒有說外派到人人網,因此內心對二面期待不高。
週三早上去了中關村人才市場,冷冷清清。下午去那家事業單位面。週三成天都沒收到銀河創想HR發來的面試安排,我不知道她有沒有同一週四再去面。反正週四我也有兩家公司面試安排,坐地鐵去面試的路上,剛下地鐵。微信收到銀河創想HR發來的信息,說:今天下午去人人網那面試,把地址和前臺號碼都發過來給我。她再三叮囑:必定要咱們幫你改過以後的簡歷,不要以前的簡歷,我內心有非常奇怪。
那時候已是午間10點多,太陽正火辣呢,我得找家打印店看看。簡歷打印出來了,我終於知道爲何他們強調要上交他們修改事後的簡歷了。由於這份簡歷是通過包裝以後的。首先把個人年齡縮小了2歲,再次把個人畢業時間提早一年,只有一年工做經驗的我瞬間有了兩年的工做經驗!
心想:這樣不會被戳穿麼?
微信問HR,HR說不要緊的。心想也對,方正我是外派過去的,又不是人人網僱傭的我,沒有和人人網發生勞務關係,簡歷造假應該沒什麼問題的!
人人網辦公大廈

面試地點是在朝陽區酒仙橋分公司。首先填寫信息表,其次給出一張邏輯思惟題目,題目如圖,在該圖的基礎上沿上下左右延展,不許修改本圖的基本架構,畫過以後不許塗改,時間限制爲12分鐘。
邏輯思惟題

寫完我的信息,上交了思惟題目的答案以後,面試官出來了。本來預定2點的,見我來的早了,面試官仍是有點意外的。自我介紹以後,接着是以下的技術面試:

  1. 集合框架了解麼?HashMap和Hashtable的區別?
  2. HashMap實現原理?Hashtable線程安全是怎麼現實的?
  3. 能講講HashMap的put()操做過程麼?
  4. Spring中Bean的生命週期
  5. Spring如何管理事務的?
  6. Service層是單例仍是多例的?是線程安全的麼?若是要作成多例的如何實現?
  7. 事務的傳播性,數據庫的隔離級別?
  8. static能夠被繼承麼?static在哪裏地方會用到?
  9. ArrayList和LinkedList的區別,爲何說ArrayList是線程安全的?
  10. 如何配置服務器(tomcat)的內存大小?
  11. 說一說Servlet實現的接口?
  12. 項目中經常使用的設計模式有哪些?寫一個單例模式?

上訴的技術面當時答的不是特別好,有點自認爲答的能夠,有的答的很差,尤爲是HashMap的底層不太熟悉很讓本身吃虧。可是回來都作過一番溫習。原本想寫一寫這些題目的解析的,可是把這個任務跑給讀者去作吧!

面了幾家的互聯網公司,首先互聯網薪資高,可是技術要求也高。好比他們都比較偏向於問基礎。啥是基礎?就是數據結構和算法,Java集合框架的實現原理等等。即便問到框架,也問的很深層次的東西。

相關文章
相關標籤/搜索