開發(fā)者應警惕的七種糟糕職業(yè)規(guī)劃錯誤
譯文那些心靈雞湯式的說辭總愛美化失敗:失敗是成功之母啦、失敗使人成長啦、別畏懼失敗等等。但事實上,這種思路在軟件開發(fā)領域也許并不適用——至少不完全適用。每位開發(fā)者在職業(yè)生涯中都不可避免會遭遇失敗,但為什么不從他人的經驗中汲取教訓來避免慘痛的挫折?
在今天的文章中,我們將共同了解那些需要加以回避的職業(yè)規(guī)劃陷阱。
錯誤一:在同一家企業(yè)待得太久
時至今日,很少有從業(yè)者會在同一家企業(yè)效力十年甚至更久。雖然這足以體現大家的技術水平,但長期處于同樣的環(huán)境下也許最終會導致各位成為某次“人員精簡”的犧牲品。
“在同一職位上待得越久,技能與薪酬就越是僵化,最終會讓人感到無聊且煩躁不安。”——管理顧問Praveen Puri
作為管理顧問,Praveen Puri在自己的開發(fā)者及項目經理崗位上工作了25年,最終選擇建立自己的公司。“在同一職位上待得越久,技能與薪酬就越是僵化,最終會讓人感到無聊且煩躁不安,”Puri指出。“但如果大家總是不到兩年就換工作,同樣是種危險的信號。我最長的崗位效力時間是14年——我本該在工作6年時就跳槽的。其它崗位的工作時長平均是4年,屬于比較正常的水平。”
長期從事同類工作會帶來兩大弊端:其一是限制自己接觸新的工作方法與技能,其二是產生工作慣性而難以適應其它團隊或企業(yè)的實踐方針。而且事實上,對于技術行業(yè)這一人員流行性較大的領域,雇主往往更希望從業(yè)者能多經歷一些環(huán)境,從而更明確自己到底想要什么樣的工作環(huán)境。
錯誤二:頻繁跳槽
再看另一個問題:跳槽太過頻繁。
“頻繁跳槽往往是種危險的信號。”——艾迪生集團IT部門經理Hilary Craft
雖然更換工作能夠幫助從業(yè)者接觸到更多解決思路與技能,但同時也會導致他們無法適應特定企業(yè)文化的制約與要求。
更重要的是,頻繁跳槽可能令我們失去全程追蹤項目生命周期的機會。反復更換工作會讓我們變得像是雇傭兵,只負責完成任務而沒有任何穩(wěn)定的信任與合作關系。無論技術水平如何高超,大家仍然需要站在客戶的角度看待問題,而這種能力要求我們在同一崗位上擁有一定的從業(yè)時間。
艾迪生集團IT部門經理Hilary Craft提醒稱,一部分專業(yè)人士傾向于強調單位時間內的收入水平,但卻因此錯失了儲備長期合作關系與完整技術經驗的機會。
錯誤三:急于升遷
每位開發(fā)者最終都將面臨這樣的選擇:我們到底是更愛編寫代碼,還是站在臺前領導企業(yè)事務?
進入管理層應當源自謹慎而細致的考量——這是一種職業(yè)的變化,而非單純的邏輯性提升,意味著我們需要使用不同于以往的技能。很多企業(yè)都會選擇出色的技術人才擔任管理職務并將此作為一種獎勵,但這往往會造成嚴重后果。
“每個人都應當在從業(yè)經歷中至少體驗一下管理職位,從而更深入地了解領導者與企業(yè)的運作方式。”——Automic公司產品營銷主管Scott Wilson
每個人都應當在從業(yè)經歷中至少體驗一下管理職位,從而更深入地了解領導者與企業(yè)的運作方式。但并不是每個人都適合長期擔任領導者職務,特別是對于不少技術從業(yè)者而言,繁重的文書工作與會議任務使他們脫離了自己所擅長的方向,而又體會不到應有的成就感。
錯誤四:疏于引導新手
作為開發(fā)人員,很多朋友可能不太重視規(guī)劃自己的職業(yè)道路。事實上,很多企業(yè)發(fā)現年輕的開發(fā)者更需要團隊領導者的引領。
引導新手開發(fā)者有助于提升領導者水平,因為領導者在身體力行的過程中能夠更快地積累經驗。另外,由于開發(fā)者的人際交往能力一般較差,因此領導者也就有更多機會鞏固自己的溝通技巧。
“如果老鳥們沒時間指引新人,我對此完全理解。但請別用‘我不擅長跟人打交道’作為借口。”——JAMF軟件公司專業(yè)服務主管Charles Edge
錯誤五:過分堅持原有積累
現有積累無疑能夠幫助大家穩(wěn)握現有職位——但其是否有利于長遠職業(yè)發(fā)展?或者說,將過多精力投入單一方向是否反而會影響職業(yè)靈活性?
舉例來說,讓一位擁有十年Java開發(fā)經驗的從業(yè)者突然轉而編寫JavaScript代碼,那么其開發(fā)成果將與擁有十年Python經驗的開發(fā)者完全不同。我們掌握的每一項技術都會影響開發(fā)中的決策。有些人認為經驗過于豐富反而不好——如果將Java當中的面向對象方法引入JavaScript這類松散型語言,顯然起不到預期效果。
每種技術堆棧都有著自己的文化與觀點。不少C#開發(fā)者只了解微軟生態(tài)系統(tǒng),而對外界一無所知。事實上,很多Java開發(fā)者反而能夠在C#當中發(fā)揮更出色的表現,因為他們的視野更加廣闊。
當然,盲目跨越技術堆棧也不可取。大家最好能擁有一項真正拿得出手、遠高于平均水平的技能儲備,而后再考慮涉獵其它領域。
錯誤六:忽視軟技能
程序員通常比較內向,至少遠比銷售人員更內向。大家終有一天會發(fā)現,這類性能特質或者說思維方式會影響到自己的職業(yè)生涯。
“軟技能與溝通能力同樣能夠提升軟件構建水平,這能幫助我們真正思考客戶的需求,而非一味過度開發(fā)。”——MediaMath公司工程技術副總裁Ben Donohue
“順暢的交流能夠提升軟件水平。軟技能與溝通能力同樣能夠提升軟件構建水平,這能幫助我們真正思考客戶的需求,而非一味過度開發(fā)。”
要提升軟技能,互聯網、電子課程、朋友與導師都是非常寶貴的資源——當然,前提是我們保持謙虛的態(tài)度及開放的心態(tài)。另外,編程絕不僅僅是開發(fā)工作中的一個側面,其同時也是溝通并理解業(yè)務目標及思路的重要體現——其中涉及多個部門以及技術儲備有所區(qū)別的大量相關人員。很多IT人會在管理層交談時涉及大量技術細節(jié),這顯然不利于雙方的相互理解。
錯誤七:疏于制定發(fā)展路線圖
制定發(fā)展目標,并隨時間推移加以調整——或者反過來,設計一套固定前進路線,并以此規(guī)范自己的發(fā)展進程。
“我建議大家將自己希望獲取并掌握的經驗與技能整理成一份發(fā)展路線圖,且至少每年對其進行更新。”——Talent有限公司CTO Michael Henderson
當然,同樣重要的是如何避免自己走上與計劃相悖的道路。
在早期職業(yè)生涯中,很多從業(yè)者往往羞于說“不”。這意味著大家可能接受了很多根本不可能完成的項目。事實上,如果能以更加自信的方式表達自己的觀點,那么企業(yè)也許能夠節(jié)約下被非技術人員的隨意承諾所浪費掉的時間與金錢。
Automic公司的Wilson援引了阿拉巴馬大學足球教練Nick Saban的講話:“我們要把注意力集中在獲得成功身上,并將整個過程作為約束自身行為的依據。要制定可行的過程,大家需要找到適合自己的導師,理解他們做了什么、為什么這么做以及為什么這樣能夠帶來成功。以此為基礎,再對具體細節(jié)進行個性化調整并嚴格遵守。”
原文標題:7 deadly career mistakes developers make
【51CTO.com獨家譯文,合作站點轉載請注明來源】