1. 程式人生 > >面試樂融集團Python開發工程師有感

面試樂融集團Python開發工程師有感

這是筆者第一次面試,,樂融集團位於朝陽區朝陽公園的樂融大廈。是下午兩點的筆面試,筆者是一點半到的,然後在裡面等了會,開始筆試

筆試題並不是太難,就是考的比較寬,因為筆者是校招,所以筆試題出來了資料結構的二叉樹知識和先序遍歷,中序遍歷,後序遍歷等等的知識,

還考了進位制,以及計算機網路的ip分類,tcp/ip四層協議,考了點PHP知識,因為筆者並沒有學過PHP的東西,所以關於PHP的部分都是瞎猜的,然後

是關於資料庫的知識,資料庫的事務是什麼以及如何操作,還有面向物件程式設計和麵向過程程式設計的優缺點,最後是一道二分法查詢的演算法,不管你筆試結果如何

都會面試,接下來是筆者回憶的一面以及二面面試官問的問題。要面試的小夥伴可以參考參考

1.你先講一下你這個專案的大體流程

...我們專案是基於scrapy和flask的一個小專案,先使用scrapy框架從網上爬取所需要的知識,我們爬取的是51job網站的職位資訊,然後將他們存入資料庫中,

然後運用flask框架可以前後端結合,將後端也就是資料庫中的職位資訊展示到前端頁面上。

2.你的專案中的資料庫表結構是如何設定的

...因為專案比較小,所以表結構也不是太複雜,主要是51job的職位表,boss直聘的職位表,還有使用者表等,運用powerdesign就可以輕鬆地設定出表結構

3.mysql資料庫和oracle資料庫他倆之間的區別

...筆者並不是很清楚這個東西,就沒答,有會的同學可以評論。

4.mysql資料庫查100條資料和oracle資料庫查100條資料的區別

...同樣不會,只好說在資料庫方面只會基本的dml操作和一些複雜的多表查詢等等,這倆之間的區別是真的不清楚。

5.你平時在學校熬夜麼

...熬夜啊,經常熬夜,一般誰的很晚,然後面試官說,咋們這個行業肯定會加班的,BAT內些大公司加班更嚴重,我說,我知道的,這一行肯定會加班

6.週末你一般幹什麼

...剛來北京的時候,每週末經常出去逛,去故宮啊,長城啊等等景點遊玩,然後要是懶得出去的話,就在宿舍打打遊戲,或者看看電影啥的

7.你週末出去是一個人還是和朋友

..和朋友啊,一個人的話,就不是太想出去玩,還是比較宅

8.在學校的英語和數學如何

...英語不好,四級最高才考了410,數學吧,還湊合。

 

還問了一些不太重要的問題,記不太清了,然後等了一會通知二面

1.你可以詳細的講講你的專案的具體實現步驟以及實現過程中都遇到了那些問題,以及如何解決的

...我們先是確定要爬取的網頁url,比如要在51job上爬取北京python職位的職位資訊,先在51上選好條件,然後得到url連結,然後分析頁面上的欄位,然後將爬下來的職位資訊,例如職位名稱,公司名等插入到mysql資料庫裡,然後使用flask框架將前後端結合起來,將爬下來的資料分析後運用echars可以直觀的展示給別人看。

...也遇到了很多問題,例如設計登入註冊模組,在前端頁面點選註冊,使用者名稱密碼傳不到資料庫裡,使用了一個session將使用者密碼儲存,再然後存到資料庫,登入也是,前端介面得用到POST方法才可以,GET方法只是返回資料,不能提交資料。

...遇到問題後,一般先自己百度百度,要是不行的話就問我們組長,最後在詢問老師

2.flask框架是如何操作的,就是你如何點選登入,將返回一個介面

...flask是一個輕量級web開發框架,自帶額webservers服務,首先在app.py裡定義一個登入方法,如下

@app.route('/',methods=['GET'])
def hello_world():
return render_template('main.html')

先app.route,然後是連結,再然後決定用POST還是GET方法

3.你有沒有看過scrapy或者flask的原始碼

...emm這個,沒有看過

4.你知道cpy和pypy嗎?

..不知道,然後面試官說目前的python直譯器大部分都是基於c的,pypy是先預編譯了一遍,再然後解釋起來速度會比基於c的直譯器快一半左右,程式碼根本不需要改,就是換一個直譯器就行

5.你在程式碼中是如何處理反爬蟲的

...加一個動態代理,然後在setting中設定時間間隔,我只用了這倆種方法,至於其他的動態ip,新增referer技術也沒有使用

6.假如你是一個網站,你如何識別它是一個爬蟲程式

...emm這個不太清楚,面試官說,假如你是瀏覽器,你得看header裡面的useragent是否有規律

7.我看你有部落格園和fithub,是自己興趣嗎還是

...部落格園是老師建議的,不過發了幾篇部落格後自己慢慢的喜歡上了部落格園,沒事可以回頭看看青澀的自己,github就是自己的興趣了,希望別人可以從自己的程式碼裡學到一些知識

8.如何在linux下面檢視一個專案某一段時間的日誌

...emm這個Linux用的不太多,只會一些基本的ls和cd,面試官說你只用兩個命令結合起來就可以了,具體也沒說是啥命令,說了我應該也忘了,,

 

大體上印象深刻的就是這麼些了,二面面試官還問了一些我都沒有聽過的專業名稱,,我現在已經記不起來了。。

總之以後還得了解了解linux系統的比較深的操作,面試官都特別和藹,很溫柔,也教了我很多,主要還是自己實力不行。還得努力學習。。。

希望要面試python開發的同學可以從我這篇部落格學到一些知識。