歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

搜狗實習面試記錄

前兩天,參加了搜狗實習的面試。因為實習是一時的想法,沒有做太多准備。第一天投簡歷,第二天就面試了。搜狗營銷事業部的董先生面試的,總體來說表示的十分不好,好多地方都欠缺。特此把面試中的問題記錄下來,留作後續復習使用。

設計模式

  • 選擇你熟悉的設計模式,畫出UML圖。(策略模式、裝飾者模式、門面模式等)
  • 你在項目中使用到了什麼設計模式,為什麼使用?

數據庫

  • 如果要設計一個分布式數據庫,你會怎麼設計,需要考慮什麼。
  • 分布式事務的實現方式。
  • 數據庫的隔離級別。
  • 數據庫加索引的時候,采用的什麼數據結構。如果使用Like進行查詢,使不使用索引。

Java異常

  • 異常有那幾大類,ClassNotFound屬於哪一類,這些異常有什麼區別。
  • 在項目中構建的業務邏輯異常,采用的運行時異常還是檢查異常。

Java並發

  • synchronized關鍵字加在一個靜態方法上時,加鎖的對象是什麼。
  • 線程的狀態轉換圖,wait和sleep的區別。
  • synchronized實現的工作原理是什麼。
  • 什麼是Java Monitor的概念,主要作用是什麼。
  • 生產者和消費者模型,偽代碼實現。

Java容器

  • HashMap的數據結構是什麼,怎麼實現O(1)的復雜度。
  • HashTable、HashMap和ConcurrentHashMap的數據結構實現。
  • ConcurrentHashMap的get,put和size方法的加鎖的步驟和方法。

項目

  • 全國高考錄取系統的架構圖,你開發的模塊要點。
  • 如果程序有性能上的問題,調優的思路是什麼。
  • Java資源占用比較多,使用什麼工具去查看資源占用情況。

算法

  • 26進制數的轉換,27->AA

總結

  • 原來看過的書,例如設計模式、Java並發編程沒有時常復習,現在一時想不起來。
  • 學習的課程,分布式數據庫、大數據平台技術還是有些用處,需要整理和復習。
  • Java的基礎知識還是牢固,需要經常總結復習。
  • 在項目上的問題,需要更深一步思考。

面試後,設計了一個自己的技術學習路線,主要從三個層次:

  • Java基礎知識:設計模式,Java 容器,Java 異常,Java 並發等。學習完成後,完成一個小型項目的練習與開發。
  • Java進階:Jvm 相關知識,Java 網絡編程,Java RPC,Java 網絡架構,CDN,Spring,Memcache等系統的架構了解。
  • 大數據架構:分布式數據庫,分布式集群管理,大數據處理平台。

這次面試後,對自己觸動很大。就想在大三去找的騰訊實習面試一樣,打擊後,毅然決然的選擇了保研道路,並取得了很好的結果。但這次,已經是退無可退,迫切需要自己在技術方面做全面的提升。

Copyright © Linux教程網 All Rights Reserved