程序員如何寫一份更好的簡歷

 

01 引言

面試前要準備的第一件事就是寫簡歷,從零開始寫簡歷是一件痛苦的事,因爲它既重要又耗時。現在就有很多求職者在電腦前急躁不安地搜索簡歷模版和參考例句,卻不知道如何下筆。寫得太短的話HR一定覺得沒誠意,寫得太長的話又無從下手。有的求職者寫完連自己都不忍心看,錯別字連篇,排版混亂就投出去,所以海投簡歷也沒有迴應。而且程序員工資相對較高,有大量人才從其他專業轉來,競爭非常激烈,所以如何從衆多簡歷中脫穎而出,贏得面試的機會就非常重要了。這篇文章會從兩個方面介紹簡歷的常見問題

1. 簡歷中的常見錯誤

2. 簡歷應該怎麼寫

看完之後,讀者就能從中學習到如何寫一份能吸引住HR眼光的更好的簡歷。

02 簡歷中的常見錯誤

1. 信息過多,缺乏重點

常見表現是一開始十幾行的技能列表

熟悉使用Python,Go,熟悉C++,HTML,CSS, Vue, jQuery。熟悉基本數據結構,算法設計能力。熟悉TCP/IP,UDP,HTTP,DNS,WebSocket等網絡協議。...

我舉一個血淋淋的真實例子:

 

 

沒錯,這就是我收到的一份簡歷的開頭,20行的熟悉掌握。這位求職者開始就把自己瞭解的所有工具都列出來,希望通過長長的技能列表突顯自己的經驗和學習能力。但是卻適得其反。因爲HR只有在通過簡介或者技能列表覺得求職者初步符合資格了,纔會認真把簡歷看下去,其餘情況都是快速搜索關鍵字。例如要招前端工程師,HR會先搜索Vue,React,jQuery等前端框架的關鍵字,如果看了5秒都沒找到的話,就會看下一份。

其實不單單是HR,大部分人遇到大段文字都會選擇跳讀,不信你回頭看看,第3行和14行其實是一樣的。所以,越簡潔清晰的簡歷,HR反而越有可能認真看。還有另外一個問題,當掃到裏面有幾行是一些基礎的技能的時候,HR就會開始質疑求職者的能力。想象下,終於到週末休息了,你想找部輕鬆的電影看看,上網搜索到一個20大最佳喜劇電影榜單。當你快速瀏覽的時候,如果發現好幾項都是爛片,一點都不好笑,完全浪費時間,這個情況下,你就會開始懷疑這個喜劇電影排行榜有問題,不會繼續看下去,HR看簡歷也是一樣的。 那麼技能列表應該這麼寫呢,因爲HR可能是工程師,也可能是非技術員工,所以技能列表也應該簡短而排版清晰,讓外行人也能快速定位技能。我建議參考這種方式(因爲熟練度見仁見智,所以不寫也沒什麼關係):

後端框架:Django, Flask, Scrapy前端框架:Vue, React, jQuery數據庫:Redis, MySQL工具:Docker, Jenkins, Git其他:HTTP, TCP/IP, WebSocket外語:大學英語四級,能流暢閱讀英文文檔

就是如此簡短,讓HR能快速定位到求職者的技能,做出是否看下去的判斷。另外這個技能列表應該放在簡介之後,我們之後會介紹。

2. 無意義描述

第二個常見錯誤就是敘述項目經驗的時候進行無意義的描述:

XXX平臺根據項目任務要求完成規劃工作和按時完成軟件開發。完成爬蟲模塊,展示模塊。開發後臺管理系統,實現自定義分頁,第三方登錄。完成數據整理與入庫功能。

HR無法從這樣的描述中得到有效的信息,也無法判斷求職者的技術能力。需要根據

什麼事情: 構建IP代理池,優化爬蟲策略和防屏蔽規則

使用什麼工具: 使用Scrapy開發異步爬蟲系統

結果怎麼樣: 提升200%網頁抓取速度

三個點來修改,最好加上數據來證明。

XXX平臺構建IP代理池,使用Scrapy開發異步爬蟲系統,優化爬蟲策略和防屏蔽規則,提升200%網頁抓取速度。使用Vue框架完成後臺管理系統,實現自定義分頁,第三方登錄等6個主要功能。負責數據的清洗與存儲到MySQL數據庫,使用數據庫索引減少50%數據查詢時間。

我理解大部分求職者並沒有面試官的經驗,沒看過多少人的簡歷,連回憶項目就已經很難了,還要想怎麼表達出來。所以我們準備了一些簡歷上能用到的,關於簡介/工作經歷/項目經驗的例句在這裏,大家可以根據自己的實際情況來修改。

有良好的代碼風格,通過添加註釋提高代碼可讀性,注重代碼質量,研讀多個開源項目,學習改善代碼的健壯性與擴展性。

有良好的代碼編寫習慣,具有良好的溝通、協作能力能力,有良好的職業道德和較強的工作責任感。

理解操作系統中進程、線程、死鎖、虛擬化、文件系統等原理和簡單實現。

有大型互聯網分佈式系統的架構設計和開發經驗,擁抱新技術,有很強的學習能力。

有紮實的計算機理論基礎,良好的算法與數據結構基礎,瞭解計算機基本原理與常見機制。

...

如果你寫完不知道寫得如何,也可以請求我們幫忙Review簡歷或模擬面試。重要的是,從現在開始統計,養成先測量再優化的開發習慣。而且嘗試去發掘數據,沒有統計過查詢時間,可以通過CPU或者內存負載數據來展示,最起碼也可以像上面第二條一樣說完成了多少個功能。

3. 排版雜亂,錯別字多

錯別字絕對是零容忍,連自己的簡歷都不重視,HR更不會重視。

熟悉iOS發佈上架流程,真機調戲。熟悉mysql數據庫,瞭解MySQL基本原理(術語前後不符)

還有的簡歷字體極小(因爲內容太多,又要塞在兩頁中),行距小,難以閱讀,模塊之間沒有明顯的分隔,讓HR找不到想要的信息。有些招聘網站並不能完全正確渲染PDF文件。(例如拉勾網,遇到PDF文件翻頁就會有大片空白出現。),我找了兩個真實的例子放在下面,你問爲什麼海投沒有迴應,HR問你這樣的簡歷怎麼看。

 

 

寫完簡歷之後一定要自己仔細檢查,再請一位朋友看一遍,請求中肯的建議。在排版上我建議大家用HTML寫然後轉成PDF,HTML比Markdown和Word更好進行樣式與版本控制,而且求職者可以直接把HTML放在個人網站或者GitHub Pages上面,隨時可以瀏覽。有興趣的讀者可以使用我們的免費HTML模版和付費HTML模版(均通過熱門招聘網站測試),確保自己的求職簡歷能更好呈現在HR面前。

 

 

03 如何寫一份更好的簡歷

一份簡歷總體可以分爲6個模塊:基本信息,個人簡介,技能列表,工作經歷,項目經驗,教育情況,其他。這個順序能讓HR從淺到深快速瞭解求職者的優勢與技能。學校信息如果是重點學校或者萌新工程師,可以提前,放在基本信息之後。

基本信息

基本信息包括姓名,郵箱,電話,Github/博客,求職意向與其他信息。

姓名/電話

如實填寫即可,要注意的是,投簡歷之前,可以先在這裏查詢該公司是否註冊了。有些獵頭會隨便起一個公司名字,專門接受簡歷然後再聯繫求職者,不小心投遞了就出賣隱私了。

郵箱

寫常用郵箱即可,論壇上,偶爾會討論使用什麼尾綴的郵箱看起來比較厲害,有的建議用gmail,覺得能突顯英語能力。有的建議使用Outlook或者163,在國內能比較穩定地接受郵件。也有鄙視qq郵箱的,覺得太私人而顯得不專業。我無法代表所有HR給出意見,某些HR可能會因爲郵箱尾綴而對求職者的初步印象產生影響。不過,只有在求職者的簡歷沒有亮眼點,結構混亂的前提下,HR纔會因爲這些小細節而篩掉他們。只要求職者在簡歷中展現出自己的優點,什麼郵箱尾綴都不重要。

Github/博客

放上Github或者博客鏈接的前提是它能突顯求職者的編程能力,HR滿懷期待點進去但是發現Github既沒貢獻過開源項目,一年就commit了幾次的話很難會有好印象。技術博客寫得好的話可以放上去,有些職位要求裏面也會提到這些加分項。

求職意向

這個細節很多求職者會忽略,一名HR可能會接受不同職位的簡歷,如果簡歷上沒有註明應聘的職位,HR也就不知道怎麼去判斷求職者合不合適了,最簡單的方法,直接看下一份簡歷。所以求職意向必須說清楚自己的目標職位,例如前端工程師,爬蟲工程師。

其他信息

其他信息包括政治面貌,性別,年齡,照片等。如果要投國企或者事業單位,黨員的政治面貌可能有幫助,至於其他加不加都沒什麼關係。合起來,基本信息部分可以像這樣寫:

楊勇郵箱: [email protected] / 電話: 133-5555-6666 Github: http://github.com/abc / 求職意向: 爬蟲工程師

簡介

有些工程師會有一些誤區,他們覺得如果循規蹈矩地寫簡歷,只會吸引到傳統的,無聊的公司。我遇過不少簡介寫熱愛自由,熱愛生活,我想大多數人都喜歡自由,單純寫熱愛自由並不能展現出真正的熱愛,在計算機領域最好證明的方法就是使用自由軟件與貢獻開源項目。簡介非常重要,也是HR開始瞭解求職者的第一步。一開始不知道從何下筆的時候,可以根據目標職位的職位要求來參考,而且當看到目標職位都要求熟悉多線程編程而自己不太理解的時候,就是非常好的補習機會了,面試絕對考啊。這裏我們假設求職者喜歡的一家公司的崗位描述與要求如下:

Python爬蟲工程師崗位描述:負責爬蟲系統架構設計和開發;參與設計系統技術方案,核心代碼開發和系統調優;參與各專項技術調研,新技術引入等;崗位要求:2年或以上Python開發經驗,本科及以上學歷,計算機相關專業;熱愛計算機科學和互聯網技術,精通Python語言,熟悉正則表達式,熟悉MySQL數據庫;熟悉Python網絡編程,能夠設計和維護基於TCP/IP協議的高性能事件驅動框架程序;有強烈的求知慾,優秀的學習和溝通能力;

先分析下這個崗位的要求,需要開發爬蟲系統,有Python開發能力,對網絡協議有了解。抓住這幾點之後,我們就可以針對這個崗位寫簡介:

兩年Python爬蟲系統開發經驗,熟悉Scrapy框架,作爲主力工程師參與設計與開發過多個項目,負責系統核心模塊的開發,自動化測試與部署。熟悉HTTP協議、TCP/IP協議,瞭解正則表達式,XPATH的用法,瞭解Redis,MySQL數據庫與Linux系統的常見機制與原理。有優秀的學習能力和團隊溝通能力,經常與團隊進行技術分享,能與團隊共同成長。

簡介/工作經歷/項目經驗中的關鍵字應該加粗。這裏的第一條首先突出個人的開發經驗,簡單介紹之前主要工作職責(有爬蟲開發,自動化測試與部署經驗)。第二條展現自己的符合崗位要求的專業知識與技能列表,第三條列出軟技能,以與團隊進行技術分享爲例子,突顯出團隊合作的能力。

如果是非科班或者萌新工程師的話可以儘量從個人項目,學習能力以及軟技能突顯自己。

兩年獨立開發Web項目經驗,瞭解項目開發流程及自動化部署,設計以及開發了Todo-list,博客等項目,實現了瀏覽,評論,點贊等功能。熟悉HTTP協議、TCP/IP協議,瞭解Redis,MySQL數據庫與Linux系統的常見機制與原理。熱衷學習計算機技術,自學了計算機系統,數據結構等多個計算機課程。

非科班工程師要與科班工程師競爭,最好自己有做過崗位類似的項目。優質的個人項目也是加分項。博客,爬蟲,Todo-list這些實在太常見了,我不是說它缺少技術含量(可以看看Python作者Guido van Rossum寫的爬蟲),只是太多求職者都只完成非常簡單的功能,沒有深究原理。如果能完成一些與衆不同的項目的話,那麼就能吸引到HR的眼球了,500lines裏面就有很多有趣的項目。如果覺得跟不上,可以跟着幾個MOOC課程學習,裏面也實現一些項目,例如瀏覽器,搜索引擎和社交網絡,看起來難,但是它都會有一步步的說明與示例代碼。我相信大部分開發者都能從中學習到很多。試想下,簡介如果寫爲這樣:

兩年Python後端開發經驗,瞭解Scrapy爬蟲框架,設計開發了簡單的瀏覽器,實現語法解析,編譯功能。開發了一個搜索引擎和社交網絡,實現了搜索,關注功能。熟悉HTTP協議、TCP/IP協議,正則表達式,XPATH的用法,瞭解MySQL數據庫與Linux系統的常見機制與原理。熱衷學習計算機技術,自學了計算機系統,數據結構等多個計算機課程。

是不是非常不一樣了,HR也會願意給機會這樣特別的求職者。寫簡歷的過程其實也是自我反省的過程,從中你能知道自己哪裏不足,及時地彌補與學習,才能得到好的offer。

恭喜你,第一步的簡介完成了。你抓住了HR的眼球,接下來的話就是要展現自己的能力。

技能列表

像我在常見錯誤說的,HR會直接在簡歷中搜索關鍵字,如果沒有的話就直接篩掉。所以技能列表可以按照類型把自己最擅長的工具列上去,熟悉度因爲見仁見智,所以不用寫,或者用進度條表示就好:

後端框架:Django, Flask, Scrapy前端框架:Vue, React, jQuery數據庫:Redis, MySQL工具:Docker, Jenkins, Git其他:TCP/IP, HTTP, Websocket外語:大學英語六級,能流暢閱讀英文文檔

工作經歷

如果這份簡歷就是用來找實習的話,這個模塊可以跳過。一個要注意的點是工作經歷的完整性,我有一次去一家大廠面試的時候(我常常去面試,參考如何準備技術面試),他們問我爲什麼沒有把完整的工作經歷寫上去,因爲他們要求從畢業到現在的時間不能出現空白期。我回答說一方面是保持簡歷的簡短,另外一方面是最近的工作經歷與這個崗位比較有關。不過這也是我僅有的一次被要求填寫完整的工作經歷,所以我的建議是簡歷上最好寫上不多於3間公司的工作經歷,而且面試問到之前的工作的話要能正確地回答,並且連接所有時間點,不要讓面試官覺得你在隱瞞什麼。工作經歷應按照最近的工作倒序列出,可以分爲四點:

公司名稱

寫上公司全稱即可,如果產品比較出名的話,可以把產品名寫上:

獨角科技有限公司(旗下產品EngineGo, Thankyou-opensource)

崗位/在職時間

崗位title要注意,如果投的崗位是數據分析工程師,那麼爬蟲工程師與數據挖掘工程師對HR來說就不一樣了,高級工程師的話也要加上去。在職時間要根據社保繳納的時間寫,有些廠會做背景調查的。

獨角科技有限公司(旗下產品EngineGo, Thankyou-opensource)2014年6月-2016年6月 | 高級Python開發工程師

主要職責

主要職責突顯的是在職的職責以及給公司帶來什麼效益,與接下來的項目經驗不同,不需要詳細寫技術棧和項目細節,只需要大致闡述即可,這裏舉一個我們例句中的一個例子:

作爲組長負責設計和開發分佈式網絡爬蟲系統,優化爬蟲策略和防屏蔽規則,提升網頁抓取的效率和質量。根據行業需求分析設計方案可行性,對項目代碼進行測試優化,協助持續集成與自動化部署,提高系統可用性。負責公司技術文檔的編寫以及維護,定期review團隊的代碼,與團隊共同學習以及成長。

項目經驗

項目經驗可以放在對應的工作經歷裏,每間公司選1-2個項目重點介紹即可。需要詳細描述主要開發或者維護的模塊,使用了什麼工具,以及達成的效果如何,這裏以EngineGo爬蟲系統爲例,注意簡潔和突出數據,不要進行無意義描述,同時關鍵字應該加粗。

與產品經理保持溝通,使用Scrapy框架對爬蟲模塊進行重構,提高200%爬蟲速度並減少服務器20%CPU負載。改進爬蟲策略,降低40%被屏蔽的請求數。

作爲主要工程師設計以及開發物業模塊,活動模塊,實現報名,即時通知等10個功能。

使用Redis數據庫實現分佈式爬蟲與數據緩存,減少50%數據查詢時間。

與其他工程師合作,使用Docker對項目進行拆分重新架構, 減少業務模塊之間的資源耦合, 實現持續集成與自動化部署。

還有,大部分情況下,不建議簡歷中出現項目的圖片,可以附上項目鏈接。

教育情況

學校大家都會寫,要注意的有幾點,如果就讀比較出名的學校可以把學校放在前面,簡介之後。另外,我碰到不少轉專業的求職者直接不寫原本的專業了,我覺得這毫無必要。HR也不是傻的,看沒寫專業就知道是非科班的,還不如老老實實寫下來,如果是理科的話還有點幫助。高績點/專業課分數高/獎學金/比賽獲獎可以選重要的加上:

XXX大學 | 計算機科學2013年- 2017年計算機系統(85分/專業排名18/100),數據結構(90分/專業排名10/100)績點:3.7 | 獲得一次國家勵志獎學金2015-2016學年獲得美國大學生數學建模競賽一等獎2013-2014學年獲得廣東省“礪劍杯”科技創新大賽二等獎

好吧,如果我的學校非常一般,專業也不對口怎麼辦。我們參考網上的統計,HR看重求職者簡歷的哪些部分,來自好學校,好公司這不用說,完成Udacity/Coursera等課程也有很大程度的加分。求職者可以像這樣展示自己的教育情況。

XXX大學 | 土木工程2013年- 2017年Udacity | 機器學習工程師 / Coursera | 計算機導論/操作系統2016年- 2017年

我不敢說在國內的環境,這一定能加很多分,畢竟大多數公司看重的還是大學的學歷。不過,一些比較開放的公司還是喜歡這樣不斷學習的員工。加上去,起碼不會扣分。

其他(可選)

可選項,也有可能成爲加分項,國內比較少看重這點,不過我個人還是比較注重的:

志願者工作

協助組織翻譯Flask,Requests第一版本文檔,翻譯十多篇技術文章(側面突出了外語能力比較好)。教導初中生從零開始學習Python,並設計並編寫自己的遊戲。Github上的開源項目Cherry獲得200個Star。

興趣愛好

計算機相關或突顯動手能力的興趣可以列上去,如果是唱歌,旅遊這些的話就不用放上去了。

綜合起來

綜合上面的幾點,一份好的簡歷看起來應該是這樣的:

 

03 總結

只要認真去修改簡歷,HR是能感受到的,也能從衆多求職者中脫穎而出,得到更多機會。有時候機會往往就在於用不用心爭取上面。我希望各位看了這篇文章後能寫出更好的簡歷,獲取更多的機會。

關注微信公衆號 【程序猿雜貨鋪】私信 【簡歷】可以獲取文章中的【所有簡歷實例】 以及其他海量【簡歷模板】

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章