1. 程式人生 > >php工程師面經

php工程師面經

        今天忽然想寫寫面試經歷了,畢竟是職業生涯的第一次面試,還成功地拿到了offer,終究是值得紀念的。
        故事從暑假開始說起。那時投了很多簡歷給南昌的公司,不過幾乎都拒絕了,原因是不招兼職,因為我還要讀大三,無法進入全職狀態。
        起初現在這家公司也是拒絕的,因為不招兼職,但是後來,也就是9月14號,我生日那天,公司的hr突然問我是否還想去實習,當時我正在上資料庫實驗課,聽到此訊,欣喜之情不覺溢於言表,然後他叫我18號去面試。
        接下來的幾天,我便開始複習一下重要的知識點,做面試前的最後準備。時間終於到了18號,我大早地坐地鐵然後轉了幾趟公交,最終到了公司所在地。話說公司的辦公室也真是小啊....差不多就一間教室那麼大....之後我進了辦公室,跟hr說我是來面試的。然後hr將我的簡歷遞交給了面試官,接下來就是面試環節了。不好意思說了這麼多廢話。。。
        面試官一開始問我為什麼大三就想來實習,我說大三時間很充沛,充沛得讓人懷疑人生,想過來實習,積累工作經驗。然後他就開始問技術問題了。。
        第一個問題是前端的,說jq裡面除了ajax,還封裝了哪些向後端請求資料的方法。這個問題比較簡單,我說還有get,post,getJSON等等,這些是對ajax的進一步封裝,ajax是最底層的。接著他問有哪些方法可以實現跨域。。我說有ajax裡的jsonp。
        然後他問除了jq還學過哪些前端框架,我說有bootstrap。這個回答得不是很好,所以他補充說讓我去接觸AngularJS,它目前也是比較流行的前端框架。其實這個我也是接觸過的,只是沒系統地去學。
       然後他就開始問後端的,第一個問題是什麼是mvc模式,我說mvc是model-view-controller三層架構,利用mvc模式可以很好的將業務邏輯和頁面展示分離開,使得前端可以專心地做介面美化,後端做業務邏輯。然後問我接觸了哪些php框架和開源系統,我說框架有tp和laravel,系統有discus和ecshop。
       接著他就開始問更有深度的問題了。。比如memcache和redis的異同點是什麼。還好這個剛好複習過了,不然肯定會忘。我說memcache是一種分散式的記憶體快取系統,資料存在記憶體裡,資料儲存都是暫時的,資料型別是key-value,而redis不僅可以將資料存在記憶體,還可以存在硬盤裡,資料可以持久化儲存,資料型別不僅支援key-value,還支援list,set,hash等等資料結構。接著又問了seo優化及資料庫優化有哪些辦法,這兩個是比較熟悉的了,平時也經常背,所以也很輕鬆地回答了。之後又問了實現網站高併發高負載的解決方案,我從硬體,php,mysql,伺服器等4個方面深度闡述了我的方案,比如什麼讀寫分離,資料庫叢集,庫表雜湊,主從複製,資料庫優化等等........之前的這些問題我回答得還好.....
       到了最後,他問我lnmp架構以及在linux系統上怎樣搭建環境,我說lnmp是linux+Nginx+mysql+php架構,nginx可以完美地替代apache,實現高併發。至於搭建.....這個就尷尬了,還沒系統地學linux....雖然以前接觸過,但看到一大堆的命令操作,我就望而卻步了.....       總體下來回答得還行,最後問我要怎樣的待遇。然後結果就不用說了。
      通過這次面試,我明白了我的不足,我會好好利用這大三一年時間,去彌補。