老闆應該為程式設計師的成長提供更多幫助

edithfang發表於2014-10-22



每當我問起軟體開發者如何提高自身的技術水平時,總會得到各種各樣的回答——做業餘專案,瀏覽Hacker News,收聽技術播客,參加線上教育課程。往往一個人的答案還不止一種,而且這些事情大多都是在下班以後做的。

然而我很少聽到這樣的回答:公司在他們的學習過程中扮演著重要的角色。

非常有趣的是,科技公司和創業公司常常給人才開出驚人的薪酬福利,在員工完成工作最重要的方面上——持續學習——卻沒有提供幫助。由此我擴充套件出了一個重要的話題。

程式設計與大多數工作不同

許多工作需求的知識基礎比較靜態,但是軟體開發並非如此。技術總是在不斷進步,因此如果開發者致力於做到最好的話,他們也應該一同進步。可以這麼說,對於程式設計這份工作而言,學習的重要性不亞於寫程式碼。

舉個例子,新語言、新框架的出現並不是什麼稀罕事——蘋果的Swift語言就是最好的例子——這可能會改變一位開發人員未來一段時間內使用怎樣的程式語言。

當我回顧自己的職業生涯時,我發現大學裡我學的是C++,工作時學習了Perl,自學Java從而找到了更好的工作,然後自學Ruby on Rails創辦了自己的諮詢公司。通過學習新技術、新語言,我才能保持作為一名開發者的競爭優勢,也取得了非常成功的職業生涯轉變。如果不是堅持學習,我不可能達到現在這樣的成就。

所有開發者都有這樣的學習動力嗎?恐怕不是。那麼如果開發者沒有緊跟技術發展趨勢的話,會產生怎樣的後果?他們開發的產品以及他們效力的公司最終都將蒙受損失。程式碼會因此更難維護,執行時間更長,或者編寫程式碼使用的舊語言/舊框架其它開發人員都不願意再使用了。對於任何公司而言這樣的情況都十分可怕,不過下點功夫的話這個困難也會迎刃而解。

公司應當如何支援開發人員的持續學習

大多數由公司驅動的教育解決方案實施方便,價格合理。而且即便價格不菲,生產力或員工幸福指數的提升肯定也讓它顯得物有所值。

一開始,你能做的最簡單的一件事就是向員工重申可以在工作時間內學習。對於開發人員來說,在工作時間裡不“工作”,抽空學習教程或者閱讀Hacker News,難免會感到不安,但是你與老員工、新員工溝通方式的簡單改變就可以掃除這樣的恐懼。

另外一個完全免費的解決方案就是鼓勵結對程式設計。一方面,結對程式設計已經被證明能夠最大限度地避免bug,提高程式碼質量,另一方面第一時間見證另一位開發人員如何解決問題也是學習提高的最佳途徑之一。

另外,一些公司已經實行了繼續教育措施,確保技術團隊在相關領域中擁有大致相同的知識基礎。開發團隊中知識的差別能夠對生產力造成毀滅性的打擊(更不用說士氣了),因此開設官方的學習專案是一個減少不滿情緒的好辦法。

Code School的每個月當中,我們都會抽出一天來進行一個我們稱為“提高”(betterment)的專案。這一天中,我們只做一些、開發一些或者學習一些能讓我們得到提升的東西。比如參加一個打字班,閱讀某一本書,開發開源的業餘專案,學習新語言或新框架。這一天為我們公司從教育、創意和士氣上帶來的提升一直都超出我們的想象。

我們還會為員工付錢,讓他們每年參加一次當地會議、一次外地會議,並且幫助購買圖書、線上課程、研習班等等學習資料。我認為,對於許多科技人才而言,他們會覺得這些比免費的Netflix訂閱或者在辦公室拜訪桌上足球更有意義(而且這些東西也太老套了吧)。

這些只是我的幾個想法。最終每家公司都需要針對公司、針對團隊、針對如何達到最佳學習效果摸索到最適合的解決方案。

學習型團隊更能創新

鼓勵學習的工作環境還夠帶來一項副產品,那就是對產品以及整個公司的生命週期產生積極影響。它能夠培養出永遠使用最好的工具(而不是大家最熟悉的工具)來工作的文化。

那些為尋找創造性解決方案應對難題準備更完善的組織更有可能獲得成功。儘管打造成功公司取決於很多方面的原因,但是建立一個持續學習的團隊將會讓你領先於那些把技術人才當作碼農而不是學習者的公司。

事實上,這兩方面的能力所有的開發者都要具備。
來自:程式師
相關閱讀
評論(2)

相關文章