好程式設計師Python培訓分享Python程式設計師面試技巧
好程式設計師 Python培訓分享 Python程式設計師面試技巧, 往年的這個時候,“金三銀四”的招聘熱潮已經撲面而至。今年,因為疫情的影響,各大公司的社招可能跟“2002的第一場雪”一樣,比以往時候來得更晚一些。當然,對於計劃在年後找工作或者跳槽的人來說,相當於多了一段可以用來準備面試的時間,相信有這個計劃的人已經開始各項準備工作了。
今天,想跟大家聊一聊面試中的一些技巧,因為我自己是一個程式設計師,目前以Python作為主要的開發語言,我跟大家聊的也是程式設計師面試的相關技巧。可能我會以Python程式設計師面試為例,但是這些技巧應該對程式設計師都有用的。
我們的簡歷上通常會有一個叫做“專業技能”的部分,這個部分通常會羅列6到12項左右的內容來展示你對程式語言、開發框架、伺服器產品、開發工具等的理解和掌握情況。這裡的每句話在面試時都可能都會產生一個或多個對應的問題,如果不事先做好準備,只是憑感覺羅列出若干項內容,那麼在面試的時候必然是一個填不起的大坑。接下來,我為大家舉例說明這些坑都在什麼地方。
下面的內容是不是在你的簡歷上也有類似的描述呀,那麼看看我提出的問題,你是否能夠給出漂亮的答案。
技能點1 :熟練的使用Python語言進行應用程式開發,有良好的程式設計習慣,對物件導向的設計原則以及常用設計模式有較為深入的理解,熟悉Python開發中常用的標準庫和第三方庫。
如果我是面試官,針對上面的描述會問你如下幾個問題。
問題1
:你所指的良好的程式設計習慣是什麼。
問這個問題其實是想考察你對程式設計規範(如:PEP8)的理解,除此之外還想知道你有沒有使用Lint工具檢查程式碼的習慣。
問題2
:說一說你知道的物件導向的設計原則有哪些;你在
專案中
用到過哪些設計模式。
很多面試者都喜歡說自己懂設計原則和設計模式,但是基本上稍微一問就原形畢露了。最簡單的“哪些地方會用到單例模式”,很多面試者都答不上來,而且面試官並不想聽你說出23種設計模式的名字,而是想知道你的專案中哪個場景用到了哪種設計模式。
問題3
:說幾個你在
平時工作中
用得最多的標準庫和三方庫。
技能點2 :熟練的使用Django和Flask框架進行Web應用後端開發,熟悉MVC(MTV)架構模式,有在專案中使用django-redis、django-celery、django-rest-framework、flask-sqlalchemy、flask-restful等第三方庫的經驗,瞭解過Web.py、Tornado、Twisted等框架。
如果我是面試官,針對上面的描述會向你提出如下幾個問題。
問題1
:說一下你對MVC的理解。
這個問題其實還是很友好的,但是如果你就背書式的把網上找到的所謂的參考答案念出來,面試官肯定是不滿意的。這種問題一定要說自己的理解和看法,最好結合著專案來講。我在面試中還有一個神奇的發現就是很多面試者認為MVC就是三層架構,我只能說這個行業裡面蹩腳的開發者還真多。
問題2
:說一說Django框架中一個請求的生命週期是怎樣的。
問題3
:說一說Django、Flask、Tornado框架各自的優缺點。
技能點3 :熟悉關係型資料庫產品MySQL和Oracle,熟練的使用SQL,對MySQL的最佳化有一定程度的瞭解,熟悉非關係型資料庫產品MongoDB和Redis,有使用快取記憶體服務和訊息佇列服務最佳化專案的經驗。
問題1
:你知道哪些和MySQL最佳化相關知識?
這個問題可能還是比較能夠鑑別開發者的能力和水平,因為MySQL的最佳化涉及到硬體、軟體、架構各個方面的問題,當然還有程式本身的最佳化。
問題2
:在使用Redis實現快取記憶體時,有沒有遇到過快取雪崩、快取穿透等問題?
問題3
:比較一下你用過的資料庫產品,說一下它們都適合什麼樣的應用場景。
技能點4 :熟悉常用的機器學習演算法和模型,包括:KNN、DecisionTree、LR、Naive Bayes、SVM、PCA、AdaBoost、K-Means等。
問題1
:K均值演算法的優缺點是什麼?如何對演算法進行調優?
問題2
:歐氏距離和餘弦距離的特點和應用場景分別是什麼?
問題3
:決策樹有哪些常用的啟發函式?
技能點5 :熟練使用Linux作業系統,熟悉Linux常用服務的安裝和配置,熟悉Shell程式設計。
問題1
:說一些你常用的Linux命令。
這個問題貌似非常友好,但是如果你張嘴就說出pwd、ls、cd這些命令,面試基本就結束了,為什麼自己想想就明白了,想不明白就給我留言吧。
問題2:
如何使用find命令根據檔案大小、檔案最後修改時間搜尋檔案,如何刪除搜尋到的檔案。
一個命令加上的常用引數深挖一下,也可以甄別出很多對Linux系統並不熟悉的小白。
問題3
:Shell指令碼中如何定義函式?函式中如何獲取傳入的引數?如何呼叫函式並傳入引數?
技能點6 :熟練的使用Git實施專案的版本控制,熟悉專案的開發流程。
問題1
:說一下之前的公司專案開發使用的過程模型(開發流程)。
問題2
:說一下之前的專案中是如何實施缺陷管理(錯誤管理)的。
這個問題還可以繼續深挖到如何提一個缺陷報告、缺陷分為多少個級別等。
問題3
:之前公司在使用git進行版本控制時,用的是哪一種分支管理策略?
我經常驚奇的發現,很多面試者說自己能熟練的使用Git,但是居然不知道Git的分支管理策略。
技能點7 :熟悉Nginx、uWSGI、Gunicorn等伺服器的配置和使用,熟Docker、K8S等工具在專案部署中的應用。
問題1
:之前的專案部署一共用了多少臺伺服器?有沒有跳板機?有沒有配置VPC?
問題2
:說一下WSGI是什麼?比較一下uWSGI和Gunicorn。
很多面試者對CGI、WSGI這些完全沒有概念,這就是典型的知其然不知其所以然。
問題3
:微服務架構有什麼優點?專案中是否使用過微服務架構?
技能點8
:熟悉Web前端開發的語言和框架,對HTML、CSS和JavaScript有較好的理解和掌握,熟悉jQuery、Lodash、Bootstrap、AngularJS、Vue.js等前端庫和框架。
前端的東西我也不太懂,也沒有什麼發言權,但是一般面試的時候我也喜歡問下面幾個問題。
問題1
:你們公司的前端用過哪些庫和框架?
就算你只負責後端開發,但是前端用的技術肯定也應該是清楚的,沒吃過豬肉也見過豬跑。
問題2
:你們移動端是原生開發還是跨平臺開發?
這個問題可以繼續追問關於跨平臺開發工具的相關問題,道理跟第一個問題一樣。
問題3
:你們公司前端跟後端如何對接工作?例如遇到資料格式化之類的問題時,到底是前端來處理還是後端來處理。
看到這裡,相信你已經比較深刻的體會到了寫簡歷是個技術活,一不小心就給自己挖一個在面試的過程中無法填補的大坑。那麼如何提前把這個坑填好了,兩個辦法:
1. 認真負責的製作簡歷,
不要把無法把控的內容強加到自己的簡歷上
。
2. 對於已經做好了簡歷,給它
做一版標註稿
,把可能遇到的問題提前標註好,並藉此思考這些問題應該如何解決,這也算是
對之前學習工作的經歷做一個總結和沉澱
。
當然,剛才只說了“專業技能”的部分,至於”工作經歷“和”專案經驗“的部分也會有類似的問題。 行成於思毀於隨 , 凡事預則立不預則廢 ,製作一份有競爭力的優質簡歷的關鍵就在於此。面試當然不僅僅是簡歷,簡歷只是一個開始,找工作需要的是全面展示自己的綜合實力。但是,我們相信好的開始是成功的一半,首先做好自己的簡歷,才能迎來美好的”金三銀四“。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2687918/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 好程式設計師Python培訓分享四款Python程式庫程式設計師Python
- 好程式設計師Java培訓分享Java程式設計技巧程式設計師Java
- 好程式設計師Python培訓分享numpy簡介程式設計師Python
- 好程式設計師Python培訓分享Python如何呼叫RPC介面程式設計師PythonRPC
- 好程式設計師Python培訓分享Python配置gRPC環境程式設計師PythonRPC
- 好程式設計師Python培訓分享Python異常處理程式設計師Python
- 好程式設計師Python培訓分享機器學習面試題一程式設計師Python機器學習面試題
- 好程式設計師Python培訓分享Python面試寶典之基礎篇-03程式設計師Python面試
- 好程式設計師Python培訓分享Python程式設計中常見的異常處理程式設計師Python
- 好程式設計師Python培訓分享Python系列之分支結構程式設計師Python
- 好程式設計師Python培訓分享Python系列之字串的使用程式設計師Python字串
- 好程式設計師Python培訓分享Python爬蟲工具列表大全程式設計師Python爬蟲
- 好程式設計師Python培訓分享Python爬蟲相關框架程式設計師Python爬蟲框架
- 好程式設計師Python培訓分享學Python要注意什麼程式設計師Python
- 好程式設計師Python培訓分享如何寫Python裝飾器程式設計師Python
- 好程式設計師web前端培訓分享Vue面試題程式設計師Web前端Vue面試題
- 好程式設計師Java培訓分享Mybatis面試題集合程式設計師JavaMyBatis面試題
- 好程式設計師Python培訓分享開發工具推薦程式設計師Python
- 好程式設計師Python培訓分享基礎入門Django程式設計師PythonDjango
- 好程式設計師Python培訓分享簡述fetchone()函式程式設計師Python函式
- 好程式設計師Python培訓分享For迴圈用法詳解程式設計師Python
- 好程式設計師Python培訓分享Python系列之迴圈結構程式設計師Python
- 好程式設計師Python培訓分享Python入門基礎知識程式設計師Python
- 好程式設計師Python培訓分享Python生成器與迭代器程式設計師Python
- 好程式設計師Python培訓分享Python之初識網路爬蟲程式設計師Python爬蟲
- 好程式設計師Python培訓分享Python中程式和執行緒詳解程式設計師Python執行緒
- 好程式設計師Java培訓分享Java程式設計師技能提升指南程式設計師Java
- 好程式設計師Web前端培訓分享jQuery面試題梳理程式設計師Web前端jQuery面試題
- 好程式設計師Python培訓分享函數語言程式設計之匿名函式程式設計師Python函數函式
- 好程式設計師Python培訓Python如何呼叫服務介面程式設計師Python
- 好程式設計師Python教程分享常見的Python面試題程式設計師Python面試題
- 好程式設計師Python教程分享Python常見面試問題程式設計師Python面試
- 好程式設計師Java培訓分享SpringBoot -YAML程式設計師JavaSpring BootYAML
- 好程式設計師Java培訓分享Java面試題集合篇一程式設計師Java面試題
- 好程式設計師Java培訓分享Java面試題集合篇二程式設計師Java面試題
- 好程式設計師web前端培訓分享Vue面試題1.程式設計師Web前端Vue面試題
- 好程式設計師Java培訓分享22道Spring Boot面試題!程式設計師JavaSpring Boot面試題
- 好程式設計師Java培訓分享面試Java的注意事項程式設計師Java面試