程式設計師理想中的工作環境
1. 彈性上班制
程式設計師群體是一群懷有Geek情結的傢伙,追求相對的精神自由,在自己的時間安排上也喜歡自由自在、無拘無束。靈感來時,可以廢寢忘食、瘋狂Coding;思維乏術時,則可能漫不經心、無所事事,這時不如早點結束工作,放鬆心情,觸發下一次的靈感。
常規企業的朝九晚五上班制度,說實話並不適合程式設計師一族,因為這種制度一定程度上扼殺了這個最需要差異性的群體的差異性,把程式設計師的Coding靈感等同於工廠流水線上機械手臂,希望按鈕一按下,靈感發動,按鈕再一按下,靈感結束。這是一種一廂情願的想法。
所以對於高層次的程式設計師群體,請不要在作息時間上嚴格限制他們,因為他們不是裝配工,有著獨一無二的個體差異性,有著不同的思維G點,他們需要差異性的時間作息來調整自己的最佳狀態,從而迸發激情和靈感。
上班時間的彈性有多大,比如早上8點——10點上班,下午4點——6點下班。只是一個相對的參考,因為個體的差異性有時候的確不容易完全包容,作為一個企業的運作,還是需要一定的時間規範,只不過儘可能地考慮到程式設計師群體的獨特性思維。
2. 寬鬆的工作氛圍
程式設計師群體討厭管理,任何自上而下的所謂管理都容易引起程式設計師們的心理牴觸,特別是那種死板的、指令式的管理模式,尤其讓程式設計師們作嘔。
程式設計師們希望自己做的事情是出於內心的意願,那樣他們就會幹勁十足,而不是來自於經理計劃文件中那條冷冰冰的文字,那怕是他們心裡意願的和經理的計劃本是同一件事。所以對於程式設計師群體的管理需要技巧,要化管理於無形,讓他們感覺不到管理的痕跡,讓他們感覺著做這些事情就是出自於他們自己的意願。
總結來說就是讓他們作為自己的管理者,而團隊的管理者所要做就是培養他們這種自管理的能力。
正如K.K在他的大作《失控》中所闡述的思想:有機的活系統,依賴於分散式的自管理的子系統,而各個子系統又依賴於分散式的自管理的個體,沒有中樞,沒有一個統一的自上而下的管理,每個個體相互聯絡,相互反饋,相互協作,創造了一個生機勃勃、充滿活力的有機活系統。看似雜亂,卻有條不紊地運轉。
適度的壓力可以產生做事的動力,但長時間的持續的壓力卻是扼殺激情和創造力的罪魁禍首。壓力會讓程式設計師焦慮,同時也會造成低劣的設計和程式碼實現,因為交付的壓力會讓程式設計師對匆忙設計出來的方案妥協,而不會持續的優化找到最優方案。而一系列看似微不足道的缺陷設計集合到一起,就會形成讓人意想不到的、不可控制的亂象。
正所謂:一張一弛,文武之道也。偶爾的交付壓力,可以讓程式設計師執行效率提高,但卻不是長久之計。讓他們在完成既定目標的同時有自由思考時間,是一個明智的選擇,看似拖長了專案研發的進度,所獲得的回報卻是不容小覷的。因為每個個體表現優異,會疊加到整個集體的表現優異,正向反饋,正向迴圈,持續優化,達到一種最佳的狀態。
所以,“快”不見得是好事,“慢”也不見得是壞事。
3. 鼓勵參與開源專案
開源專案社群的欣欣向榮,是一朵盛開的奇葩,無論怎麼讚譽都不為過。
一些著名的開源專案,例如Linux,Apahce, openssl等等,數不勝數的優秀設計,給我們帶來了多少的驚喜,同時也催生了多少的商業公司。
參與到開源專案中,是一個程式設計師從初級走向高階、完善技術的最有效途徑之一。一些著名的開源專案,架構設計和Coding技巧上都屬上乘之作, 浸淫其中,受益匪淺。
人們常說:成功的第一步就是模仿。在軟體設計領域也是如此。當一個程式設計師通過理論學習掌握了一門語言的基本技巧後,要怎麼樣才能更上一層樓,快速提升自己?實踐,實踐,再實踐!而參與開源專案就是最好的實踐之一。一是可以學到很多優秀的設計思想和Coding技巧,而是可以跟很多牛人並肩作戰,討論技術。人生快事,莫過於此!
站在程式設計師個人角度,參與開源專案的益處顯而易見。那麼站在公司企業的角度,憑什麼要讓自己的員工耗費精力參與到開源專案中呢?這樣有沒有可能影響本職的工作呢?
俗話說:站的高的人才能看的更遠!思維的高度決定行動的高度。企業管理者如果能夠站的高一點,眼光能夠看的遠一點,就會領悟到讓自己的員工參與到開源專案中對企業本身的益處也是顯而易見。
例如下面幾點:
- 公司業務本身使用的技術框架就涉及到開源專案,那麼開源專案的發展就跟企業的發展息息相關。
- 員工本身技術能力的提高會帶動自己團隊整體技術能力的提高,對公司來說是可能是一件需要花費很大氣力要做的事情。
- 讓員工獲得成就感,員工就會把這種積極的情緒帶給團隊和公司,營造一個積極向上的工作氛圍。
當然,企業畢竟不是專職做開源專案的,主營的還是自己的業務。那麼對員工工作時間上的安排要有一個大體的把握,既然鼓勵員工參與到開源專案中,又要提醒他們不要影響到正常的研發工作。這是需要注意的地方。
4. 興趣學習小組
學習,是人的一種天性,是人的一種權利,也是人畢生的追求。
身在企業,如果失去了學習的空間,被剝奪了學習的權利,沒有了自我提升的空間,那麼這個企業就不值得為之付出。
工作之餘,召集幾位志同道合的同事,為了一個共同的學習興趣,開辦一個興趣學習小組,相互討論,共同成長,豈不快哉!
興趣學習小組的形式可以多種多樣,譬如:
- 共同研讀一本書籍,寫下自己的讀書心得,然後跟大家交流。
- 組織讀書會,大家在一起共同研讀經典之作,交流新的,獲取靈感。
- 組織程式設計道場,就一個題目進行設計、編碼、測試,在實踐中獲取真知。
組織活動的時間上要把握好,不能太頻繁,不然會影響正常的工作生活節奏;但也不能跨度太長,不然會造成斷片,大家的積極性會逐漸降低。比如兩週組織一次活動,我覺得還是可以接受的。
相關文章
- 程式設計師的工作環境與效率程式設計師
- 一份理想的程式設計師工作程式設計師
- 理想的程式設計師程式設計師
- 怎樣才是理想的程式設計師程式設計師
- 一個理想主義的程式設計師程式設計師
- 程式設計師如何走出自己的安逸環境程式設計師
- unix環境高階程式設計(中)-程式篇程式設計
- 打造一個好用的 Windows 程式設計環境 2.程式設計環境Windows程式設計
- 5個提高效率的程式設計工作環境程式設計
- 有理想的程式設計師必須知道的15件事程式設計師
- java程式設計環境Java程式設計
- 程式設計師工作中的三個錦囊程式設計師
- 漫畫:程式設計師的工作程式設計師
- 程式設計師的工作站程式設計師
- 內卷大環境之下,萌新程式設計師該如何化解?程式設計師
- 打造一個好用的 Windows 程式設計環境 0.準備工作Windows程式設計
- zt .NET環境下的SNMP程式設計程式設計
- Linux環境下的Socket程式設計Linux程式設計
- 程式設計師在一週工作中的稱霸指南程式設計師
- 作為程式設計師,你最理想的公司是什麼樣的?程式設計師
- 為什麼美國程式設計師工作比中國程式設計師工作輕鬆、加班少?程式設計師
- Python 程式設計師的 Golang 學習指南(II): 開發環境搭建Python程式設計師Golang開發環境
- 自學的程式設計師如何找到好工作?程式設計師
- 程式設計師如何開始新的工作程式設計師
- 我理想中的前端工作流前端
- 程式設計師的生產效率:中斷、會議和遠端工作程式設計師
- 遊戲程式設計師的工作是怎樣的?遊戲程式設計師
- Windows核心程式設計(一)-環境搭建Windows程式設計
- linux環境下的c++程式設計LinuxC++程式設計
- gEdit: 打造簡潔,小巧的程式設計環境程式設計
- Linux環境下的網路程式設計Linux程式設計
- 程式設計師的工作就只有寫程式碼麼???程式設計師
- Unix環境程式設計之定時、訊號與中斷程式設計
- 大齡程式設計師找不到工作,程式設計師真的是吃青春飯的嗎?程式設計師
- 我們該向國外程式設計師環境學點什麼?程式設計師
- 1024程式設計師節/探討ORACLE環境故障的解決方法程式設計師Oracle
- 文章-自學的程式設計師如何找到好工作?程式設計師
- 程式設計師快速適應新工作的方法程式設計師