Python程序猿面試雜談

 

    不一樣的互聯網公司面試環節不盡相同,整體而言,通常有技術面(1-3輪)、leader面(組長/總監/CTO/CEO...)、hr面,面試輪數視公司規模和公司實際具體狀況而定。下文將就面試的不一樣環節闡述下這些年來我的做爲一個兩方面角色的參與者的一些體會,但願可以有所裨益。web

 

1、技術面:面試

 

    技術面這塊考察的內容主要分爲兩部分:專業能力和綜合素質。算法

    1. 專業能力shell

    專業能力又分爲基礎知識點廣度和深度、邏輯思惟能力、實戰經驗(實際中部分公司並不必定三個方面都會問到)。數據庫

    不一樣的應聘崗位基礎知識點略有不一樣,Python類崗位大致會包括Python基礎相關、數據庫相關、Linux相關、網絡相關等;另外具體崗位會有具體領域的知識點問題,如爬蟲會問反爬相關,測試有測試相關等; 網絡

    邏輯思惟能力大致會經過兩種方式考察:算法和場景設計,場景設計指面試官假設一個實際應用場景,考察應聘者面對全新問題的思惟和解決問題的思路,邏輯思惟這塊頗爲忌諱面試者直接不會,此部分思路重要性遠大於結果架構

    實戰經驗這塊通常指過往項目經驗和從業經歷。不一樣的開發崗位此部分在面試中所佔用的比重不同。對於初中級開發崗而言,該模塊要求不高(實際佔比可能不超過20%)。主要旨在考察候選人在之前的工做中作過什麼,是不是在打雜,遇到過什麼問題,面試官以此在必定程度上判斷應聘者是否能在以後的工做中勝任具體的項目。問法有講一下你過往中的一個項目...「你印象最深入的一個項目/一個問題是什麼...「 」你以爲最能體現你能力的一件事是...「 」你在XXX項目中作了什麼...「等等;異步

 

    2. 綜合素質學習

    該部分通常是從面試中總體感受來評判,主要考察面試者總體的精神面貌、溝通表達能力、潛在的協做能力、是否符合該公司的價值觀文化等。綜合素質對面試結果的影響很大,不少時候會有一票否決的做用。謙遜低調(不要質疑面試官)、主動積極向上、流暢溝通、尊重他人是該部分的關鍵。當有多輪面試時,越日後的面試該部分比重越大。測試

 

2、leader

     技術面後,通常會有一個leader(組長/總監/CTO/CEO...)面,該部分具體基礎知識一般涉及較少,主要集中在場景設計及綜合素質考評這塊,大多爲開放性問題;如講一下你過往中遇到的你印象深入的問題...「你的職業規劃是什麼...」等等。綜合素質是重點

 

3、hr

    hr面分兩種狀況。一種是前面技術面或leader面結果不理想,hr負責讓面試者回去,此種狀況很容易識別。第二種是真正的面試考察,hr旨在考察應聘者的人品是否有問題、是否弄虛做假、是否符合該公司的價值觀文化,以及薪資是否超出該崗位的上限。該部分面試者不犯大錯便可(如候選人說由於和上家公司leader不和而離職,非議前公司,跳槽緣由直說由於薪水、被hr發現造假、要求薪資明顯太高等等)。

 

4、常見面試題

    不一樣的公司、不一樣的面試官差別較大,即便同一個面試官兩次面試問題也常常頗多不一樣,隨興而問較爲常見。下面簡單陳列一下各方面的常見面試題(實際面試中沒被面到勿怪)。

    1. 自我介紹

    自我介紹部分通常是用來面試官閱讀應聘者簡歷時的過渡階段(面試官避免冷場尷尬),該部分候選人須要注意的點:

  •     時間儘可能控制在30s-兩分鐘左右(略大於面試官閱讀簡歷時間便可);
  •     自我介紹時切忌卡頓(非停頓),同時不要給面試官在背書的感受,可眼睛注視面試官;    

    2. 專業能力--知識點廣度和深度(深度部分針對於廣度中的具體知識點回答狀況追問)

    Python相關:

  •     Python3特性和變化
  •     GIL
  •     解釋器
  •     循環引用
  •     內存回收
  •     進程、線程、協程 
  •     LEGB    

    

 DB相關:

  •     MySQL存儲引擎
  •     MySQL索引機制
  •     MySQL使用場景
  •     事務特性
  •     事務隔離
  •     MVCC
  •     Gap Lock 
  •    Redis使用場景
  •    Redis數據類型
  •    Redis存儲機制
  •    zset存儲機制
  •    Redis持久化方式
  •    MongoDB和MySQL差別
  •    MongoDB使用場景

     

    web相關:

  •    TCP握手揮手及原理
  •    TCP鏈接狀態
  •    一次完成的HTTP請求詳細流程
  •    Django具體知識點
  •    Flask具體知識點(如g對象用法)
  •    同步和異步
  •    阻塞和非阻塞
  •    多路複用
  •   Nginx做用及使用場景

   

    Linux相關:

  •     shell命令(查看端口、負載、內存等)
  •     正則
  •     SYN FLOOD    
  •     Centos和Ubuntu差別

    

   其餘(和具體崗位及應聘者簡歷內容相關):

  •    MQ
  •    rabbitmq
  •    kafka
  •    celery
  •    爬蟲
  •  Devops

 

   3. 專業能力--邏輯思惟能力

   算法相關:(此部分變化不少)

  •    洗牌算法
  •    鏈表相交
  •    鏈表逆轉
  •    樹最短路徑
  •    開方實現
  •    ...

 

   場景設計:(和具體應聘公司的崗位及工做內容有關)

  •       設定一個待爬取的業務需求,如何爬取
  •       設定一個系統業務場景,考察架構設計思路
  •       假定一個開發中遇到的問題,考察解決思惟
  •       ...    

 

   4. 專業能力--實戰經驗(可能會根據應聘者回答深刻知識點細問)

  •      闡述你的一個項目
  •      過往工做中解決的最難的問題
  •      過去中最能體現你水平的事情是什麼

 

   5.  綜合素質

   價值觀:

  •      加班意願(大多不會直接問是否接受加班,間接問好比「咱們這邊初期會比較辛苦/咱們大概x月份上線,...」)
  •      職業規劃
  •      過往離職緣由(考察應聘者是否浮躁,此處切忌非議以前公司)

   公司認同:

  •      你對咱們公司瞭解多少
  •      你有什麼要問咱們的嗎
  •      你的指望薪資是多少(考察和該崗位的匹配度及應聘者自我認知)

 

   我的素質:

      溝通表達能力(無問題,面試過程總體體現)

      協做能力(無問題,考察應聘者性格是否過於高傲,是否可能存在不合羣,切忌面試過程當中質疑面試官)

      學習能力(無問題,體如今專業能力面試中及面試總體感受)

      主動性和內驅力(無具體問題,體如今面試總體流程中)

相關文章
相關標籤/搜索