php學到什麼程度就可以就業了?


我從招聘方的視角來說一下:

我是 優帆遠揚(https://yousails.com)的創始人之一,我們長期招聘遠程工程師(詳見:[優帆遠揚] Laravel、Remote 與 自由)。

從今年二月份到現在,我們已經發起 200 多次的 PHP / Laravel 遠程工程師面試。

先看下我們團隊的『遠程工程師』內部招聘文檔:

--------------- 『遠程工程師招聘文檔』開始 -----------------

我們需要什麼樣的遠程工程師優帆遠揚的 Slogan 是 「創造不息,交付不止」,對於遠程工程師團隊,我們的定位在於「交付不止」,因此我們的工程師一定要具備以下特質:

  1. 重視承諾的項目時間節點;
  2. 重視代碼交付質量;
  3. 重視產品交付質量;
  4. 重視溝通能力以及團隊協作;
  5. 重視開發文檔的重要性;

我們不僅強調工程師的技術能力,還更強調工程師的「項目意識」。我們如何面試工程師為了讓工程師能更好的遵循「交付不止」的理念,我們對工程師採取評分制,滿分為 10 分,將從以下幾個維度進行評分:

  1. 基礎能力評分 - 佔總評分的 20%
  2. 項目能力評分 - 佔總評分的 80%

簡歷初步篩選基礎能力側重點在於考核工程師的項目管理能力,這一部分的信息將從他提交的「簡歷」中獲得。

電話面試滿足以下兩點的用戶可以直接先電話面試:

  1. 用戶的簡歷比較優秀(上文提到的「基礎能力」得分高);
  2. 想申請當全職遠程工程師

否則將直接給他發送筆試題。
電話面試主要在於考量候選人的語言表達能力(該能力對於遠程工程師來說非常重要),並能側面了解其技術能力和項目工程能力。面試要問什麼問題?

1).了解技術能力

  1. 你使用 Laravel 有多久了?為什麼選用 Laravel 做為開發框架?
  2. 簡單的介紹一下 Laravel 的 IoC 伺服器容器
  3. Laravel 的生命周期(啟動過程)是怎樣的?
  4. 你平常都去哪裡學習?

2).了解項目規劃能力

  1. 你有哪些得意之作?
  2. 負責過什麼有技術難度的項目?你在裡面承擔什麼角色?這項目用到了哪些技術你覺得很贊?
  3. 你覺得如何做代碼的質量控制?
  4. 你覺得如何才能做好產品測試?
  5. 如何優化網站的性能?
  6. 開放話題:你覺得導致一個項目失控的原因都有哪些?哪個問題是最難解決的?為什麼?

3).職業規劃

  1. 你未來想做什麼職位?(架構?項目經理?產品經理?)
  2. 如果公司需要,是否可以轉崗?(技術轉產品經理)

筆試題說明

「Talk is cheap. Show me the code.」


我們將根據應聘工程師的開發經驗,讓其直接按照一個完整的項目流程開發一個博客系統。只允許開發三個小時,看其代碼的交付質量。主要考量以下幾個方面:

  1. 是否有文檔說明,文檔說明是否清晰;
  2. git commit 記錄是否清晰;
  3. 代碼行文是否規範、簡潔、清晰;
  4. 是否編寫測試(加分項);
  5. 需求我們故意提的不清晰,看看開發者是否能主動問詢。

--------------- 『遠程工程師招聘文檔』結束 -----------------

從上面可以看出來,我們最看重的是:

項目開發能力。

我們很在意應聘者『做過的項目』數量,多年的經驗告訴我們,作為應用型的開發工程師,以下這幾個階段能很清楚的區分開一個工程師的能力:

  • 5 個項目經驗
  • 20 個項目經驗
  • 50 個項目經驗
  • 100 個項目經驗

當然,項目大小也會納入考慮之中,這裡只是一個很粗糙的原型。

對於新手的建議是:

從現在開始積累自己的作品,重點積累『完整的項目』經驗。

作品的話,以下類似的都能算代碼作品:

  • 分享一個 Laravel 5.3 搭建的簡單博客
  • 分享 Laravel 5.4 開發的博客系統
  • 分享一個 Trait 來易用 Laravel 的緩存
  • Laravel 5.4 FULLTEXT 全文索引的擴展包

另外,多混技術社區,重點關注社區里的 Laravel / PHP 社區招聘板塊,從這些招聘貼中你能很具體的知道你該優化哪些地方。


不是科班出身,水貨EE。12年的時候在完全沒用過php的情況下,看了幾個開源程序的語法和代碼,查著手冊,查著百度,一個月左右硬生生擼出一個內部用的任務分配管理系統來,還自己寫了前端。那會在一個動畫公司,創業團隊,做後期,實際上是什麼都干。現在看代碼夠屎的,主要是參考學習的那個開源項目代碼寫的也很屎。但是那東西好歹還跑起來了,有許可權分配,管理,還放了幾個js的控制項。後來離職回了家。幹了幾年亂起八糟雜七雜八的事。

目前不想在小城市呆了,想轉行,近半年時間在刷大學計算機專業課,複習了一遍C,然後開始學CS那些專業課,從計算機專業導論開始,數據結構,演算法,離散數學,計算機原理,python,git都補了一遍,這兩天在刷操作系統。接下來打算看看編譯原理,計算機網路,資料庫,然後linux(給筆記本裝了Ubuntu,暫時放一邊吃灰了),再加js和vue,mysql,php,think php,redis,swoole,然後再擼兩個小項目,然後再做點演算法題。

看了你們的回答。。。

我他喵的是不是用力過度了?


php的基本語法、資料庫的連接操作、php開發、運行環境的搭建配置,這些都要掌握;再則就是流行的php開發框架必須熟悉一個,這樣就可以去應聘個php程序猿了,在工作中提高自己;再則就是要掌握常用的緩存技術,性能調優技術,還有有就是各種業務邏輯理解和需求轉化成程序實現,懂得設計快速、高效的方案來實現業務需求,這樣就可以去應聘個php高級開發工程師了。

感謝各位對回答的評論,我只是針對「php」限制下的程序員的回答。

下面有個PHP初級程序員應掌握的初級入門知識總結,未完成,初學者可以參考,高手飄過

有沒有完整的、簡要的PHP入門總結? - 知乎


我不是php程序員,但以目前php的市場看,需求口很大。懂一些皮毛就可以找一份湊合的工作了


http://web1702271952145.bj01.bdysite.com這個樣子的可以嗎,本人會html css js jq php mysql thinkphp Linux基本操作,能用mvc和oop加smarty設計一個單一入口小框架,以前準備學前端的學到一半就連後台也一塊學了,所以我模仿過很多前端的作品,後端也有。


正在自學php 有一定C++基礎 水平很一般 非科班出身

標記一發,等我找到php工作再來回答這個問題???


看你自己的追求吧,現在PHP確實是屬於比較好找工作的,輕便,容易學。不過樓主列的這些,也不算是魯過度了吧,那些培訓班兒出來的人,學的東西遠遠比你的多的多。


有了興趣就學,有了機會就上!


在有其他編程語言基礎的前提下可以直接去找php實習


雖然我不是php程序員,但以目前php的市場看,需求口很大。

能掌握php語法,會些基本演算法,懂一些web知識,就能在市場上找一份還湊合的工作了。


我之前沒有接觸過PHP,在2015年9月份開始因為業務需要開始學PHP,剛開始學的CI,Yii2,JS,JQuery,bootstrap,Vue.js,做了一個APP的後台,然後2016年陸陸續續用PHP做了很多網站,包括視頻站,H5,微信小程序,B2B,其中有訪問量超大的兌換網站,使用了mongodb和redis來優化性能,然後2017年不做了,全部給下面的小夥子來做,原因是做來做去太簡單了,沒辦法深入下去,求打醒


推薦閱讀:

有哪些為了精通 php 而一定要自己實現一次的例子? demo?
為什麼現在很多框架都用Composer來安裝,增加了學習難度?
php查詢資料庫用了一個c寫的擴展,這樣做有什麼好處呢?
PHP 大流量優化?
Mac 下如何搭建 PHP 開發環境?

TAG:PHP | PHP程序員 | PHP開發 | PHP學習 |