技術和經驗不匹配時怎麼辦?
在「面試攻略:何為技術和年齡不匹配」一文中,我們討論了面試官對不同階段的開發者的要求,說明了什麼是技術能力和工作年限不匹配。那麼,問題來了:當技術能力和工作年限不匹配時,怎麼辦?
這個令人揪心的問題,答案其實非常簡單:想辦法讓能力和經驗匹配。然而這種正確的廢話沒什麼意義,下面說說具體怎麼做:
開發者的能力模型
辨別你的傾向
尋找適合你定位的策略,刻意練習
好啦,步入正題。
開發者的能力模型
在「面試攻略:何為技術和年齡不匹配」一文中我們討論的其實是「技術能力」,技術能力是一種「硬技能」,硬技能只是開發者綜合能力中的一部分!
硬技能是指在專業領域、與工作直接相關的技術性技能。比如軟體開發領域,「使用C++進行驅動編程」就是一種硬技能。
硬技能對你做的工作非常重要,但往往受限於工作環境,不大容易遷移,所以某種硬技能往往不是大多數人都會去學的東西。
與硬技能相對,還有一些技能應用更廣泛、普遍,無論你在生活和工作中,它們都可以幫助你,比如寫作、游泳、談判、演講、反饋、激勵等等,這類技能,我們稱之為「軟技能」。
實際上,開發者的能力包括三個方面:硬技能、軟技能和資源。
開發者的工作效果,是以「是否解決問題」來衡量的。
解決問題,有時靠技術能力,比如用戶要求網站頁面打開時間小於 1.5 秒,你就必須通過技術手段來解決。
還有的時候,問題的解決,靠溝通、協調、演講、反饋、寫作等軟技能。
比如,客戶抱怨說「系統很難用,不符合他們的要求,拒絕付款」,銷售人員就來找開發,逼著開發把系統搞得好用點,開發很清楚,系統就是按照客戶要求開發的,驗收時客戶也很滿意,不可能不好用。
於是,開發只能去客戶現場觀察。通過和客戶的溝通,發現了癥結所在:使用系統的新手第一次總是找不到想要的功能按鈕。
了解到這個之後,開發給客戶組織了一次現場培訓,問題很快解決,接下來開發還編寫了一份 FAQ 給客戶,客戶非常滿意。
另有一些時候,問題的解決,要靠資源。比如,你所在團隊的技術儲備以 C++ 相關技術為主,現在你們要開發一個網站,沒有懂網站開發的人員,怎麼辦?自己學、借調、招聘、外包,選哪種方式?
如果你和公司負責 Web 開發的經理很熟,打個招呼就能借個人過來;如果你認識靠譜的願做兼職的小夥伴,那問題也能分分鐘解決掉……這兩種解決問題的方式,靠的就是「關係資源」。
所以,我們要從心裡意識到,開發者的能力不僅僅是技術,解決問題也不一定要靠技術。
辨別你的傾向
每個人在發展自己的能力時都有傾向性:有的更願意一直鑽技術,成為技術專家;有的很樂意與不同的人溝通、協作,願意通過別人完成工作,也願意幫助別人完成工作;有的則很喜歡把精力放在琢磨用戶喜好和產品價值上……
當你天天在做的事情和你的傾向性一致時,你更容易投入,更容易做好,更容易有成就感和價值感。
所以,我們要在技術、人際互動、產品這三者中找到自己的傾向。
我們可以採用「技術和產品,哪個更影響你的發展」一文中描述的方法——「體察感受、辨別類型」——來辨別自己的傾向。
回顧你開發一個產品或做一個項目的過程,找出你積極情緒(高興、興奮、意義感、成就感等)比較明顯的時刻,T1、T2、T3,針對每個時刻,套用「我感到……,因為……」這個句式來分析,記錄下結果。
比如,張翀分析後的結果是:
2 月 26 日上午 11 點,我感到特別高興,因為我終於搞懂了 Android 項目中 MVP 的用法
3 月 8 日下午,我感到很有成就感,因為我學會了用 TextureView 渲染視頻,還可以給它添加動畫效果
3 月 15 日上午,我感到很興奮,因為我使用靜態內部類 + WeakReference 的方式搞定了一個由 Handler 引起的內存泄露問題
……
觀察張翀列出的這些積極情緒時刻,你會發現,他一直在講技術,他的關注點始終在技術特性和使用技巧上,由此可以看出,他對技術本身更感興趣。
對產品更感興趣的小夥伴,ta 的積極情緒記錄可能是這樣的:
11 月 11 日周六晚上 11 點,我感到特別有成就感,因為我為雙 11 寫的訂單管理模塊,幫助 50 多萬用戶順利買到心儀的商品。
1 月 16 日下午 3 點,我感到非常興奮,因為我搞定的影視牆功能,滑動超級流暢還帶呼吸燈,酷斃了!
3 月 6 號,我感到很期待,因為我拿到了做博物館 VR 產品的 Offer ,我太喜歡那些文物啦!
在 ta 的積極情緒時刻清單中,大部分都是和產品關聯在一起的。
對人際互動更感興趣的小夥伴,ta 的積極情緒記錄可能是這樣的:
1 月 8 日早上 9 點,我感到超有成就感,兼職有點不可思議,因為我撮合了成昆和張無忌這對死對頭試驗結對編程
2 月 7 日下午 2 點,我感到有點不可思議,我竟然和李鬼聊了 2 個小時還不覺得累
3 月 8 日,我很高興,因為我採用關鍵對話的方式,把一個任務分給了之前堅決拒絕接受的小亮
你的感受不會騙人,多多體會你在工作中的感受,慢慢你就會發現自己的傾向。
除了體察感受,還有一個方法,可以幫助你識別自己的傾向:榜樣分析。
所謂榜樣,是指你想要成為並且經過努力也能成為的人。
找找你視為榜樣的人,看看你想要它們身上的哪一點:技術能力、人際交互還是產品設計。
弄明白這個,就可以知道你的傾向是什麼。
尋找適合你定位的策略,刻意練習
一旦你找到了自己的傾向,接下來的事情,就是:制定提升策略,然後持續執行。
專註技術
比如,你想專註技術,那就先看看自己當下的段位:初級(對很多東西只是簡單了解和使用)、中級(熟悉用到的技術,對其原理和思想有一定認知,可以靈活選擇和運用)、高級(在某一技術方向上達到可以定製、擴展、優化的程度,在其它相關技術方向上達到中級)。
找到自己的段位後,根據自己的情況,為自己制定一些目標,生成計劃,持續行動,定期回顧。很快,你就能獲得提升。
我在 GitChat 上有一個達人課——程序員跨越式成長指南,非常詳盡的描述了怎樣提升技術能力,識別下圖中的二維碼可以參與:
專註技術還有另一種可能:願意一直做技術,但實際上無法在某個技術上挖得很深。這種情況,可以水平拓寬,掌握各種技術,讓自己的廣度足夠,這樣也有一些場景,會能發揮很大作用。
產品
假如你對產品和業務更加感興趣,可以嘗試著去學習:
產品經理的方法論和技術棧
用戶需求分析的方法論
所做產品的業務邏輯
當你能夠更好的把握業務和產品時,往往能夠更好的實現需求、解決問題。因為在大多數公司的大多數產品中,我們關注的都是如何用技術更好的解決問題,而不是技術本身。
打造「業務 + 技術的組合競爭力」,是不願在技術道路上死磕的開發者的優選策略。
軟技能
其實,很多小夥伴做上三五年開發後,會慢慢失去對技術最初的熱衷,不再有那麼大的自驅力天天精進。
這個時候的傾向,不再是技術,可能會轉到人際交互或產品層面,也可能沒什麼明確傾向。不管如何,此時都可以通過培養「軟技能」來彌補自己在技術上的不足。
軟技能有很多種,比如溝通、傾聽、寫作、演講、反饋、說服、激勵、談判、規劃、組織、管理、講授等等。
硬技能是完成某一類工作必備的基礎,軟技能可以讓你成為更好的員工,可以為你帶來更多的機會。
《軟體架構師的12項修鍊》這本書,非常好的對軟技能做了分類,並且闡述了如何修鍊軟技能。
軟技能通常不能在課堂上學到,而要在實際的工作和生活場景中主動練習。所以,我們完全可以從書籍、榜樣等等對象上學得方法、模板,然後在實踐中自己練習,最終提升自己的某項軟技能水平。
TAG:程序視界 |