# 項目經歷
項目經歷是簡歷閱讀者進一步了解求職者技術能力的重要依據,良好的項目經歷應當清晰,簡潔,既印證前面提到的技術能力,也反映出求職者應對復雜度(Handle complexity)的能力。
[TOC=2,2]
## 22\. 按照時間對項目經歷排序
一般來說,項目經歷應該按照時間倒序排序——最新的項目經歷放在最前。此外,考慮去掉過于久遠(比如說,七八年前)的項目經歷,因為你很有可能已經忘了七八年前做過的東西了。
另外一種排序方式是按照項目的重要程度排序——最重要的項目放在最前,但我個人不推薦這種方式,因為往往最重要的項目都在最近,如果你最重要的項目在很多年,那么很有可能你這些年毫無長進。
## 23\. 不要列出過多的項目
我經常看到非常長的簡歷:三四頁紙,兩三千字,十余個項目,恨不得把他/她做過的東西全都鋪上去。而事實證明寫出這樣簡歷的人水平都不怎么樣——至少就我的個人經驗而言。
項目經歷不是自傳,不用把你全部的經歷鋪上去,也不要寫過多的項目經歷——三個項目是一個不錯的選擇,五個就有點多,十個就會沒人看。要知道三個優秀的項目遠勝十個一般的項目。
所以問題來了,什么是優秀的項目呢?就技術項目而言,我的評估標準是復雜度(Complexity)和影響力(Impact):一個項目,如果復雜度和影響力都有那是最好,如果只有一個也不錯,如果都沒有那就呵呵。我會在[原則25 強調影響力和復雜度](http://zh.lucida.me/blog/lean-technical-resume/?utm_campaign=CodeBaku&utm_medium=web&utm_source=CodeBaku_6#rule25)中進一步說明。
## 24\. 強調成果而非過程
我在我之前的[關于錘子手機和錘子手機發布會](http://zh.lucida.me/blog/on-the-keynote-of-t-one/)提到過:
> 總之,在錘子手機發布會上,我看到的是一個人在不斷的強調自己有多努力多認真,但我也知道當某人不斷的給你強調他有多努力(effort)時,事實往往是他還沒有獲得任何實質性成果(progress),簡而言之,effort不等于progress。
技術簡歷也是如此,不要在項目經歷中過度強調你有多努力。“連續高強度工作三個月”和“在深夜重構了XX項目中的代碼”并不是一個好的項目描述:如果你“連續高強度工作三個月”卻無法說明你的工作成果,“在深夜重構了XX項目中的代碼”卻無法說明重構后代碼改進了多少,那我認為你的“努力”毫無意義。
強調你的項目成果(Achievements)而非過程,“將網站訪問量提升300%”、“將響應時間從1.5s減少到0.1s以內”都是不錯的成果。
## 25\. 使用量化結果而非抽象描述
我經常在簡歷上看到“改善了代碼的質量”、“提升了啟動速度”和“大大增加了網站訪問量”之類的描述,我的第一反應就是:

**用個數字你會死啊!!!看新聞聯播看多了吧親!!!!**
接下來的反應是:
* “改善了代碼的質量”——改善了多少?你是如何評估的?圈復雜度?測試覆蓋度?Bug的數量? ???
* “提升了啟動速度”——提升了多少?用戶的反饋如何?是否在可接受的范圍內? ???
* “大大增加了網站訪問量”——“大大”是什么?訪問量增加了多少?訪問量原來是多少? ???
如果我找不到上面問題的答案,我會直接無視這些抽象描述——還是那句話,我為什么要相信你的一面之詞?而且你連話都說不清。
## 26\. 強調影響力和復雜度
> “Controlling complexity is the essence of computer programming.”
>
> Brian Kernighan
控制復雜度使程序設計的根本(essense),所以絕大多數IT公司在招聘時都會把應對復雜度(Handle complexity)放在職位描述里面——你如果能把難題搞定,那么簡單題也不在話下。如果你做過的項目足夠復雜,那么就證明你能扛得住復雜度,是個好~~備胎~~備選(Candidate)。
那么什么樣的項目經歷稱得上復雜呢?我在這里給出一個不嚴謹的分類,僅供參考:
* 編程復雜度:操作系統,編譯器/解釋器,圖形學編程,網絡協議設計與實現等
* 算法復雜度:算法競賽獎項等(不好意思我不熟悉算法所以給不出啥例子 –_-)
* 設計復雜度:大型網站,企業級應用,分布式應用等
衡量項目的另一個重要依據是影響力(Impact),有的軟件項目可能不那么復雜,但是它具有相當大的影響力,例如jQuery、RoR和JUnit:
> “Never in the field of software development have so many owed so much to so few lines of code (JUnit).”
>
> Martin Fowler
如果你的項目并不復雜,那么請強調它的影響力,用戶量超過十萬的手機應用和被廣泛應用的類庫都是很好的項目,盡管它們可能并不復雜。
如果一個項目既沒有復雜度,也沒有影響力,那么直接刪掉它——不要猶豫,它不會為你的簡歷提供任何價值。