每當我問起軟件開發(fā)者如何提高自身的技術水平時,總會得到各種各樣的回答——做業(yè)余項目,,瀏覽Hacker News,,收聽技術播客,參加在線教育課程,。往往一個人的答案還不止一種,,而且這些事情大多都是在下班以后做的。 然而我很少聽到這樣的回答:公司在他們的學習過程中扮演著重要的角色,。 非常有趣的是,,科技公司和創(chuàng)業(yè)公司常常給人才開出驚人的薪酬福利,在員工完成工作最重要的方面上——持續(xù)學習——卻沒有提供幫助,。由此我擴展出了一個重要的話題,。 編程與大多數(shù)工作不同許多工作需求的知識基礎比較靜態(tài),但是軟件開發(fā)并非如此,。技術總是在不斷進步,,因此如果開發(fā)者致力于做到最好的話,他們也應該一同進步,??梢赃@么說,對于編程這份工作而言,,學習的重要性不亞于寫代碼,。 舉個例子,新語言,、新框架的出現(xiàn)并不是什么稀罕事——蘋果的Swift語言就是最好的例子——這可能會改變一位開發(fā)人員未來一段時間內(nèi)使用怎樣的編程語言,。 當我回顧自己的職業(yè)生涯時,我發(fā)現(xiàn)大學里我學的是C++,,工作時學習了Perl,,自學Java從而找到了更好的工作,然后自學Ruby on Rails創(chuàng)辦了自己的咨詢公司,。通過學習新技術,、新語言,我才能保持作為一名開發(fā)者的競爭優(yōu)勢,也取得了非常成功的職業(yè)生涯轉變,。如果不是堅持學習,,我不可能達到現(xiàn)在這樣的成就。 所有開發(fā)者都有這樣的學習動力嗎,?恐怕不是,。那么如果開發(fā)者沒有緊跟技術發(fā)展趨勢的話,會產(chǎn)生怎樣的后果,?他們開發(fā)的產(chǎn)品以及他們效力的公司最終都將蒙受損失,。代碼會因此更難維護,執(zhí)行時間更長,,或者編寫代碼使用的舊語言/舊框架其它開發(fā)人員都不愿意再使用了,。對于任何公司而言這樣的情況都十分可怕,不過下點功夫的話這個困難也會迎刃而解,。 公司應當如何支持開發(fā)人員的持續(xù)學習大多數(shù)由公司驅動的教育解決方案實施方便,,價格合理。而且即便價格不菲,,生產(chǎn)力或員工幸福指數(shù)的提升肯定也讓它顯得物有所值,。 一開始,你能做的最簡單的一件事就是向員工重申可以在工作時間內(nèi)學習,。對于開發(fā)人員來說,,在工作時間里不“工作”,抽空學習教程或者閱讀Hacker News,,難免會感到不安,,但是你與老員工、新員工溝通方式的簡單改變就可以掃除這樣的恐懼,。 另外一個完全免費的解決方案就是鼓勵結對編程,。一方面,結對編程已經(jīng)被證明能夠最大限度地避免bug,,提高代碼質(zhì)量,,另一方面第一時間見證另一位開發(fā)人員如何解決問題也是學習提高的最佳途徑之一,。 另外,,一些公司已經(jīng)實行了繼續(xù)教育措施,確保技術團隊在相關領域中擁有大致相同的知識基礎,。開發(fā)團隊中知識的差別能夠對生產(chǎn)力造成毀滅性的打擊(更不用說士氣了),,因此開設官方的學習項目是一個減少不滿情緒的好辦法。 Code School的每個月當中,,我們都會抽出一天來進行一個我們稱為“提高”(betterment)的項目,。這一天中,我們只做一些、開發(fā)一些或者學習一些能讓我們得到提升的東西,。比如參加一個打字班,,閱讀某一本書,開發(fā)開源的業(yè)余項目,,學習新語言或新框架,。這一天為我們公司從教育、創(chuàng)意和士氣上帶來的提升一直都超出我們的想象,。 我們還會為員工付錢,,讓他們每年參加一次當?shù)貢h、一次外地會議,,并且?guī)椭徺I圖書,、在線課程、研習班等等學習資料,。我認為,,對于許多科技人才而言,他們會覺得這些比免費的Netflix訂閱或者在辦公室拜訪桌上足球更有意義(而且這些東西也太老套了吧),。 這些只是我的幾個想法,。最終每家公司都需要針對公司、針對團隊,、針對如何達到最佳學習效果摸索到最適合的解決方案,。 學習型團隊更能創(chuàng)新鼓勵學習的工作環(huán)境還夠帶來一項副產(chǎn)品,那就是對產(chǎn)品以及整個公司的生命周期產(chǎn)生積極影響,。它能夠培養(yǎng)出永遠使用最好的工具(而不是大家最熟悉的工具)來工作的文化,。 那些為尋找創(chuàng)造性解決方案應對難題準備更完善的組織更有可能獲得成功。盡管打造成功公司取決于很多方面的原因,,但是建立一個持續(xù)學習的團隊將會讓你領先于那些把技術人才當作碼農(nóng)而不是學習者的公司,。 事實上,這兩方面的能力所有的開發(fā)者都要具備,。 |
|
來自: 極客黨 > 《Progamming》