1. 程式人生 > >記一次網際網路公司的面試

記一次網際網路公司的面試

距離上一次面試已經過去一年半的時間,現在這家公司雖然領導對我也還不錯(加薪2次一年半的時間哈哈),但是還是有些不滿的地方,一個是三次進行封閉式開發,拉到順義那邊,家都回不了,現在有小孩了,假如再來一次封閉,實在是不太方便,第二個當然還是薪資問題了,雖然漲了2次但是我認為還是和我現有水平不符;本著試試的態度更新了簡歷,節後第一天放開了幾個小時,就趕緊關掉了,因為在自我評價中寫明不去外包公司,結果卻還是有一些外包找上門來,或者是做什麼水利行業的公司,實在是不感興趣,又怕3月份現在公司事情多,就關了,結果沒承想第二天一家網際網路公司拋來了橄欖枝,當即預約下午面試;

  好久沒看過JAVA面試基礎知識,還是有些不放心,走馬觀花的看了1小時,就去了,公司做網際網路視訊的,名字就不說了。去了以後,辦公樓比較破,離家也有點遠,還在北京最堵的東邊,說實話當時只是想再練練面試能力,沒想太多,見到二位面試官後,驚訝的是沒有筆試環節,常規的自我介紹以後,就開始了長達90分鐘的面試,有史以來最長的一次。。。

展開的第一個話題是我做的資料庫同步系統,他們對我如何同步資料、表結構等比較感興趣,我也是講的很有興趣,畢竟自己寫的比較滿意的專案嗎!一長串溝通後,拋開了這個專案,首先從如何設計一個高併發高訪問量的網站系統開始,結合一些以前看過的資料,列舉出:1.CDN加速,2.反向代理,3.負載均衡,4.快取技術,5.NoSql,6.資料庫分佈做讀寫分離等,之後面試官對一些熱點的比如快取架構設計,負載均衡演算法,快取技術,資料庫技術等進行了細緻的詢問,

舉幾個例子現在能記住的,

1.資料庫分割槽分表為什麼快,各有什麼優缺點;

2.如果建立一個聯合索引,如何觸發這些索引;

3.如果你是架構師,如何設計快取系統;

4.如果全國多個熱點城市,都部署了你的網頁程式,這些熱點的資料管理,你會想到哪些問題?

5.TCP為什麼比UDP安全可靠

6.SPRING如何做的單例模式

7.SPRING IOC原理是什麼

8.不同系統互動都有哪些產品,基於什麼協議,各有什麼優缺點;

9.平時你公司做開發,為什麼用WEBLOGIC,不用TOMCAT,前者太重了,為什麼還用

大概記得住還有這些,還有很多小問題,邊聊天邊問,感覺自己答的有一些沒有答道點子上,比如快取問題,自己總是侷限在命中率以及預熱問題上,如果快取的叢集伺服器中,一臺快取伺服器宕機了,他是否應該將自己的資料在整個叢集中共享,如何共享都沒有太多想法;有一些問題可以答得更好,卻一時沒想起來,比如當問到設計模式是否熟悉時,只問到了單例,SPRING如何實現的,我近期也在看SPRING原始碼,單例分為懶漢和餓漢兩種,實現有多種,SPRING程式碼有一部分是通過STATIC FINAL靜態成員變數這種懶漢式實現的單例,其實還有一部分SPRING程式碼是通過靜態內部類實現的單例,當時也是忘記說了。

現在有其他事情忙,暫時不寫了~