1. 程式人生 > >找工作的程式設計師應該這樣優化簡歷【內附120套優質簡歷模板】

找工作的程式設計師應該這樣優化簡歷【內附120套優質簡歷模板】

《花千骨》一劇,白子畫為什麼收花千骨為徒?

《琅琊榜》中,梅長蘇為什麼選靖王而棄太子、譽王?

《泰坦尼克號》裡,傑克和露絲為什麼會一見鍾情?

王子基特為什麼會選擇灰姑娘辛德瑞拉?

這些問題乍一看似乎和程式設計師找工作沒什麼關係,但其實,內在的道理都是相通的,搞明白這些問題,就能清楚下面的問題:

為什麼你投十份簡歷,只有一兩家公司約你?

又或者為什麼你每投一份簡歷都能獲得面試機會?

最根本的原因,就是一方在汲汲渴求,而恰恰另一方呈現出的關鍵點讓其怦然心動。求者心中有所想,而應者恰恰展現了求者所想的那一面。這就是個中奧妙。

程式設計師在找工作時,在一開始有三件事情會對能否獲得面試機會至關重要:

  1. 知識、技能、經歷梳理

  2. 確立求職目標

  3. 簡歷優化

友情提示:假如你不想看萬字長文,可以:跳到第 3 部分,看簡歷優化實操;跳到第 4 部分,看如何提高簡歷投遞成功率。

01 知識、技能、經歷梳理

知識、技能、經歷,這都是一個人能體現出來的商業價值。一家企業招募某個人,一定是因為這個人可以幫助企業在某方面實現價值。而且,正常情況下,個人的貢獻一定要大於企業為這個人負擔的各種成本(薪水、社保、公積金、個稅等),否則,要你毛用啊。

所以,作為程式設計師,我們一定要清楚自己的價值在哪裡。個人的商業價值,可以通過下面五大要素分析出來:

  • 知識

  • 技能

  • 經歷

  • 天賦

  • 人脈

我們在招聘網站上填寫簡歷時,內容最多的就是前三個要素,都是差不多的模板,填下來千人一面。

在最開始的時候,不建議直接到招聘網站上填寫簡歷。強烈建議先用 word 或 MarkdownPad 來整理記錄你認為你具備的所有有價值的知識、技能、經歷,不論大小,統統記錄下來。這是我們後續優化簡歷的基礎,也是確立求職目標的基礎。

1.1 知識與技能

有必要說一下知識和技能的區別,這是很多人常常混淆的。

知識可以通過語言文字、語音、視訊等進行傳授,比如像 C++、Java、數學、物理、Qt、Android、設計模式、網路協議等都是知識。

技能是指按照某種規則應用知識和經驗完成某種任務的能力。比如使用 Qt 開發桌面客戶端軟體就是一種技能,使用 Java 和 Android 介面類庫開發 App 也是一種技能。

我的知識大概有這些:

知識會淡忘,一段時間不用就扔掉了,所以在你的知識圖譜裡,一定有一些是你經常使用的,比如我最熟悉的就是 C、C++ 和 Qt。

我們需要把自己最熟悉的三種知識標註出來,後面會派上用場。

技能就是對知識的運用,所以一般來講你有什麼知識,就能找到一組技能。比如我可能有下列技能:

  • 使用 Qt 開發客戶端軟體

  • 使用 Qt 開發伺服器軟體

  • 使用 Java 開發 Android App

  • 管理專案,制定專案計劃,跟蹤計劃,控制專案進度

  • 團隊管理與激勵

  • 部落格、公眾號等自媒體運營

  • ……

好啦,現在我們應該可以進行知識和技能的梳理工作了。

需要特別注意的是,每個人都有很多知識和技能,一定要找出你擅長的 2~3 種知識,2~3 種技能,這將是你求職時的重要參考。人只有使用最擅長的技能去做事情,才能達到最好的效果。

1.2 經歷

知識和技能可以幫助我們創造商業價值,而知識和技能的積累過程本身也是有價值的。積累知識和技能的過程,就是經歷。

著名電影《貧民窟的百萬富翁》講述了這樣一個故事:在孟買貧民窟長大的少年賈馬爾參加一個名叫 “誰想成為百萬富翁” 的節目,過五關斬六將,最終贏得了 2000 萬盧布的大獎和他心愛的姑娘。

這個故事的神奇之處就在於賈馬爾回答對了諸如 “《darshan do ghanshyam》的詞作者”、“1973 年的動作電影《囚禁》的主演是誰”、“哪一位板球運動員是本世紀曆史得分最多的”、“誰發明了左輪手槍”、“百元美鈔上是哪一位美國總統的肖像” 之類的問題,而這些問題連博士專家都沒把握全中!這與他的身份完全不符,引起了節目主持人的質疑,認定他作弊,趁節目暫停錄映,通知了警方以欺詐的罪名逮捕了貧民小子。

為什麼賈馬爾可以做到?隨著問答節目的推進,我們發現,原來,這些問題相關的知識,賈馬爾根本沒有學習過,而是他獨特的貧民窟生活剛好遭遇了這些問題。這就是經歷的價值。

程式設計師的(學習、工作、專案)經歷同樣具有非常獨特的價值,在求職過程中往往會發揮非常重要的作用。比如你做過視訊專案,那再找類似做視訊的公司就很容易脫穎而出;比如你做過影象處理相關的專案,進入美圖秀秀之類的公司就相對容易……

在回顧專案經歷時,關於你自己的那部分,一定要想明白並記錄下來,從下面三點來挖掘你的亮點:

  • 你負責的工作內容

  • 用到的知識、技能

  • 你對整個專案的貢獻(最好可以量化)

我的一個專案經歷:

我沒有列出前面所說三點對應的所有內容,個人亮點也沒完全寫出來,但你的心裡一定要清楚,你發揮了什麼關鍵作用,如果有攻克技術難點的經歷和明顯可以量化的業績,一定要總結出來,面試時經常會被問到哦。

天賦和人脈其實也是個人非常重要的商業價值。但在程式設計師的簡歷中較難體現出來,在面談中倒是有較多機會展現。

02 確立求職目標

不管是從大學走向社會的初次求職,還是在職場摸爬滾打了 N 年的老鳥,找工作時都要忌諱一點:茫無目的,漫天撒網。

求職時,明確目標行業、企業、職位,有針對性的做準備,事半功倍。

2.1 職業延續性

跳一次槽換一個行業,跳一次槽換一條技術棧,這樣極其不利於程式設計師的商業價值積累(知識、技能、業務等)。假如你不是第一次求職,就有必要考慮職業延續性。

假如你現在在金融行業,那換工作時,最好還在裡面。這樣你的行業相關的經驗就可以積累下來,慢慢形成優勢。假如你現在做 iOS 開發,最好換工作時還找 iOS 相關的,這樣你的 Objective-C 啊,Swift 啊、Cocoa 啊才能持續精進……

有一種情況另當別論:你發現你不喜歡現在的行業和所用的技術。此時跳槽,就要找到新的方向(後面方法可以幫到你)。一旦你找到新的方向,轉換過去之後,同樣要考慮以後的延續性。每次都說自己不喜歡現在的,更喜歡另一個,這樣搗騰幾年之後,你很可能會發現,那些悶生不響持續深耕的小夥伴們居然一夜之間都牛逼閃閃起來了……

2.2 成就事件挖掘職業興趣

在我們總結整理自己的工作、專案經歷時,要特別留意那些讓你特別有成就感的事件,它裡面隱藏你的職業興趣,可以挖掘出你今後樂意從事的職業方向。

我們可以遵循 STAR 原則來回顧成就事件:

  • S(Situation),背景情況,包括面臨的障礙、限制或困難

  • T(Task),任務,目標,想完成的事情

  • A(Action),行動計劃與步驟,如何克服障礙、達成目標

  • R(Result),對結果的描述,重點關注你取得了什麼成就

成就事件列出來後,可以按照下面兩點來深入挖掘:

  • 哪一個具體的點讓你特別有成就感,比如 “達成結果受到領導表彰”、“獨立克服某個技術難題”、“用自己的 XXX 幫到了某某某”、“成功組織大家齊心協力達到目標”……

  • 用到了什麼知識、技能

通過這樣的分析,你就可能找到自己的最佳技能和工作中最在意的點在哪裡,就可以根據他們來確立新的職業目標。

2.3 聚焦行業、企業、職業

聚焦的目的是縮小目標範圍,節省時間和精力,深入研究分析,有針對性的對自己的商業價值進行優化組合,提高簡歷的吸引力,最後提升獲取面試機會的概率。

程式設計師運用程式語言、技術框架、設計模式、演算法等開發針對某個領域問題的軟體,軟體必然和目標需求和業務密不可分,所以,程式設計師左手技術,右手業務,假如你對業務內容完全不感興趣,很難想象你可以把軟體做好。因此,當你有了目標產業,目標公司,還要去了解這家公司做什麼產品,是產品導向的公司,還是專案導向,還是外包為主,選擇那家你對它的業務範圍感興趣的公司,不感興趣的就果斷篩掉。

基於延續性的考量,以往工作過的行業領域都需要認真對待,但不一定非要繼續在之前的方向上做,換一換也可以。但有一個基本的原則,離夕陽產業和走下坡路的企業遠點兒。

以我為例來分析一下。

技術方面最擅長的語言是 C++,最擅長的框架是 Qt(出過《Qt on Android 核心程式設計》和《Qt Quick 核心程式設計》兩本書),最擅長的是客戶端軟體開發。然後對 Android 開發有了解也有興趣。新的職位最好和這兩方面相關。

我鎖定的第一個目標是高階軟體開發工程師,語言是 C++。行業領域的話,網際網路、智慧城市、企業服務等都可以。

還有,我之前都在小公司摸爬滾打,現在希望到比較大一點的公司裡體驗一下不同的工作氛圍。

在鎖定職位的過程中,還要考慮自己當前的劣勢,以便在簡歷和麵試過程中妥善應對。以我為例,如果找軟體開發工作,就有兩個不好的點:

  • 最近一年沒做什麼開發工作,會被人質疑廉頗老矣尚能飯否

  • 最近幾年都在做技術管理工作,別人可能會奇怪你為什麼倒回去做開發這兩點也會影響到目標職位的選擇和匹配度,比如有的高階開發工程師職位要求有一定團隊管理經驗,那和我的匹配度就高一些。

好啦,我的聚焦過程已經完成了,接下來咱們進入簡歷優化的實操過程。

03 簡歷優化實操

知道了自己有什麼商業價值、弄清了想到什麼樣的行業什麼樣的企業裡什麼樣的崗位上工作,接下來就該優化簡歷了。

簡歷優化有這麼幾個要點:

  • 分析招聘資訊,提取知識、技能、職責當中的關鍵詞

  • 根據招聘資訊裡的關鍵詞,篩選個人知識、技能、經歷

  • 將匹配到的知識、技能、經歷重新組織、呈現

程式設計師的簡歷,一般包含下列內容:

  • 基本資料(姓名、性別、年齡、婚否、電話、當前在職狀態)

  • 求職意向(職位、工作地點)

  • 知識、技能

  • 自我評價

  • 教育經歷

  • 工作經歷

  • 專案經驗

  • 附加資訊(比如興趣愛好、榮譽、部落格、開源專案等)

根據實際情況,有的簡歷可能沒有自我評價、附加資訊,有的可能沒有可寫的教育經歷(比如高中生),有的可能沒有工作經歷和專案經驗(如大學生等初次求職者)。

特別提一下程式設計師的一些個人品牌相關的附加資訊(具體參看這 8 種武器點亮程式設計師的個人品牌),比如技術部落格、github 主頁、參與的開源專案、自己做的 App、公眾號等,都是能非常好展現程式設計師知識、技能的東西,能為你的簡歷加分,也能彌補面試時間簡訊息交流補充分的問題。要知道,決定你能否通過簡歷關的,通常是另外一個程式設計師,而對聰慧內斂的程式設計師致敬的最好方式,就是 “Show me the code”。

3.1 簡歷模板

很多程式設計師都使用招聘網站提供的簡歷模板,要在不同招聘網站上釋出簡歷的話,可能要重複填寫 5、6 次簡歷,非常耗時。我一般會有一份基礎的 word 格式的簡歷,根據它在不同的招聘網站建立不同的簡歷。

接下來介紹我的簡歷,非常簡單,順次包括下列五部分內容:

  • 個人資訊

  • 求職意向

  • 技能與評價

  • 工作經歷

  • 專案經驗

我簡歷的前三部分簡單如下:

我工作年限長,挑最近的幾段看下:

好了,我簡歷的主體框架就是這樣子了。接下來,我會根據我的目標職位——高階軟體開發工程師——來找幾條招聘資訊,通過分析招聘資訊來優化簡歷的技能與評價、專案經歷兩個部分。這兩部分也是我們優化簡歷時的重點。

3.2 簡歷優化

大多數招聘需求是由我們的同行提供的,假如能從招聘資訊裡反推出擬定招聘需求的那個軟體工程師或經理心中的關鍵詞,那你的簡歷優化就有針對性了。

下圖是一個 C++ 高階開發工程師的招聘需求:

紅線標註出來的,是一些關鍵的基本要求,C++、Qt、Windows 桌面客戶端,這些是硬性要求,要應聘該崗位必須要滿足。

綠線標註出來的,是軟性要求,不太容易直接量化和衡量,但面試官可能會在面試中通過交談來考察。比如軟體設計能力、技術傳播能力、溝通能力、溝通與團隊協作等,通常都是在面試中體現,而編碼能力,則可能會通過筆試或者面試中不斷的詢問技術細節來檢驗。

藍線標註出來的,是優選條件,在有多個候選人的情形下,你具備了這些要素,就會被優先考慮。

一般的企業處理軟體開發工程師的簡歷,是 HR 先挑,然後是技術人員(程式設計師或經理)再次篩選,通過技術人員的篩選後,就會通知筆試或者面試。

HR 拿到招聘需求,會和技術人員溝通要關注的關鍵點,然後根據這些關鍵點挑選合適的簡歷。通常在 HR 眼裡,關鍵點就是關鍵詞,所以,我們修改簡歷時,儘可能使用招聘資訊裡出現的字眼,便於 HR 識別。HR 看一份簡歷,多則一分鐘,少則 20、30 秒。

技術人員篩選簡歷,通常比 HR 要細一些,大致分兩步,先篩關鍵詞,然後是看專案經驗裡是否體現出了他們釋出的崗位需要的技能和軟實力。關鍵詞匹配不上,PASS,30 秒不到;能匹配上,繼續看專案經驗,整個過程可能會持續幾分鐘。

在看專案經驗時,一方面看應聘者在專案中是否用到了將來需要的相關技能,另一方面看具體專案內容,做行業、產品、業務相關性比對,如果應聘者做的產品與招聘方要做的相關性高,就會被優先考慮。

通過對簡歷篩選流程的瞭解,可以知道關鍵詞的重要性了。那接下來我們就要依據從招聘資訊中提取的關鍵點來修改簡歷了。

在修改簡歷時,我的做法是儘可能多的在簡歷中體現企業要求的技能及軟實力。一般可以在下面兩處反覆琢磨:

  1. 技能與評價

  2. 專案經歷

結合我的簡歷,先看技能與評價部分怎麼修改。

因為目標職位是高階軟體開發工程師,招聘資訊也沒有特別體現對管理能力和經驗的要求,所以我的管理經驗可以淡化或拿掉。然後是突出 C++、Qt、軟體設計、技術傳播等內容。新的版本如下:

新版本兼顧了硬性要求、軟性要求和優選條件,與初始版本有明顯不同。接下來,我們就要重新組織、呈現專案經歷,讓它更多地體現企業 HR、面試官所關注的關鍵點。下面是我的一個具體的專案經驗:

這個招聘需求,和我的匹配點主要在技能(C++、Qt),接下來這個,責主要匹配的是業務(行業)經驗。

紅線標註出了基本要求:C/C++、Linux。

綠線標註的軟性要求,一部分是不太容易量化的技能,比如精通多執行緒、獨立設計經驗等,一部分是產品業務相關的,比如音視訊編解碼、封裝、流媒體、網路協議、視訊業務系統等。

這則招聘資訊中有兩個優選條件,不過和我的知識、技能都不匹配。

一個程式設計師的知識、技能、經歷,橫看成嶺側成峰,角度很重要。

來看看新修改的技能與評價:

和麵向上一個招聘資訊的內容又有了較大差異,是不是?

這次我改兩個之前展示過的專案經歷,方便比較不同。第一個:

這次我將重點放在了多媒體、設計等方面,與前面那份有了很大不同。

再來看文章最前面提到過的一個網際網路視訊卡頓的專案經驗,新版本如下:

和原來大不一樣了。

需要特別提醒的是,簡歷優化是針對程式設計師知識、技能、經歷進行的穿衣打扮,是從不同的視角呈現不同的側面,可以用心琢磨,但萬萬不可造假。

3.3 檢驗優化效果

提供一個檢驗你簡歷優化水平的方法:

  • 將你鐘意的企業和職位分為 A、B、C 三類,A 是最符合你目標的,B 與你最核心的訴求匹配,C 類呢可能抵觸了你的某些核心價值觀。

  • 針對 C 類公司的職位,測試你的簡歷優化技能,找三五家來練手,投遞簡歷,簡歷過了就去面試,攢面試經驗。

  • C 類之後進行 B 類,最後是 A 類。

這樣的過程,能保證你先練簡歷和麵試技術,然後以最好的狀態走向你最心儀的公司最鐘意的職位。

04 如何提高簡歷投遞成功率

根據前面的分析,要想提高簡歷投遞的成功概率,遵循下面的流程將非常有幫助:

梳理知識、技能、經歷並記錄在案,形成基礎簡歷

  1. 確立求職目標

  2. 篩選招聘資訊

  3. 選擇匹配自己目標的公司和職位

  4. 針對每個招聘資訊進行分析,提取關鍵詞

  5. 根據關鍵詞,結合基礎簡歷,優化技能描述和專案經驗,生成一份有針對性的簡歷

重點來了

福利怎麼獲取

微信關注公眾號:javafirst

公眾號對話方塊回覆

簡歷模板

免費獲取120套簡歷模板的網盤地址!