中国软件开发project师之痛
在最近的一次會議上,有高層談到之前在中國覺得自己做得非常牛,但與美國同行接觸后卻發現與人家存在非常大的差距,這一點我在外企工作時也有過相同的體會。真正與外國同行接觸后才會知道什么是差距,在這篇文章中我從軟件開發project師的角度以“痛點”的形式來談一談我所覺得的差距。
技能之痛
相當數量的軟件開發project師(后面簡稱為project師)覺得除了與編碼相關的內容外,其它技能都不重要。在這樣的意識的引導下,非常easy出現的一個普遍現象是技術能力不錯,但開發能力卻不行。這樣的現象的還有一種表現是:單干能夠,合作不行。
技術能力是指個體對某些技術知識掌握的深度和廣度,而開發能力除了包括技術能力外,還涵蓋個體在項目運作過程中所需掌握的其它能力。
高效的團隊一定離不開通過知識管理將個體所掌握的知識通過分享而沉淀下來。分享途徑無外乎通過一定形式的文字和(或)圖,這就要求project師掌握使用象Word、PowerPoint、Excel、Visio(和UML)這類工具的基本能力,并具備良好的寫作與表達能力。表面看來這樣的能力與編碼能力無關,因而也得不到project師的普遍重視,也因此成了一個痛點。事實上,寫作與表達能力與編程水平息息相關,由于它們都在考驗我們的邏輯思維和概念能力。忽視掌握必要工具軟件的project師難道以為編程語言是知識分享的萬能工具?
個體具備良好的溝通能力是項目順利運作的基石。不良溝通表現為:project師在團隊合作中很多其它採用被動詢問而非主動匯報、不會辯論、對于他人指出的錯誤表現得“自尊”和狡辯而非感謝或承認、對于被邀請的各類審查活動(如設計審查、代碼審查、文檔審查)不是積極響應而需別人催促。在團隊中,假設技術管理者不能非常好地引導,個體溝通能力的缺乏非常easy在團隊中引發“一言堂”或“無政府主義”問題,工作效率低下則是必定。
專業精神之痛
不少project師對于自己的職業缺乏精神上的追求,工作起來不求專業,僅僅求“代碼能工作即可”。這類project師easy將經驗與資歷等同,以為工作年份越長就越有經驗,實則不然。工作年份越長資歷是越老,但假設專業水準沒有在過程中不斷提高的話,所獲得的經驗非常可能趨零。
什么是專業?專業是指我們應以業內所廣泛達成的共識去從事軟件開發活動。這里的“業內”并不是僅僅指“國內的”,而是指“國際的”;“專業”也并不是單指技術內容(比方,編程語言、算法等),還包括軟件項目運作中的其它各個方面(比方,開發方法、建模工具、流程、質量保證手段等)。要做到專業做事一定離不開不斷地學習,僅僅有這樣才干了解行業的動向。
軟件行業盡管沒有“銀彈”,但仍存在不少有效改善開發質量與效率的方法。僅僅有抱著專業做事的態度去工作,我們才有可能去實踐這些方法,并在實踐過程中思考這些方法的內涵與不足,進而為自己的工作量體裁衣。千萬不要覺得“反正業內沒有銀彈,我要去學那么多方法干什么?”
強調專業做事的根本目的,是使我們的做事方法更科學。與我所了解的美國、俄羅斯這些國家的project師相比,我國project師的專業化還有非常長的路要走。
速度之痛
除非你全然認可中國近些年以GDP為導向的經濟發展策略,否則非常可能得反思一下軟件行業所鼓吹的“唯快不破”策略,尤其是互聯網領域。
在商業環境中,“快”能獲得非常多競爭優勢,這毋庸置疑。project師的價值雖得(終于)體如今商業產品上,但千萬不要忘記了我們始終是一名project師,在實現商業價值的道路上不斷提高自己的專業水準不管怎樣都不應被忘記。project師始終要明確,公司的發展與自身的職業發展并不是全然統一。假設在公司的發展過程中我們的專業水準并沒有“水漲船高”,那除了說明我們在吃老本外,還表明我們非常可能是在“拖后腿”。在這樣的情形下,即使公司蒸蒸日上地給我們發薪水,但從個體職業發展的角度說來,公司發展事實上與我們“一毛錢關系都沒有”。我想不致于有人覺得自己以后僅僅會在這一家公司干吧!假設真是那樣想,你能保公司幾十年存在?屆時萬一得無奈地離開公司,單薄的專業水準又怎樣在人才市場與他人競爭?
對“唯快不破”的誤解所帶來的不良后果是,有些project師為了高速實現軟件功能而忽略了專業精神。他們一味地為了速度而筑下高額的“技術債”,甚至在“速度”的幌子下過得心安理得。
假設將“唯快不破”改為“唯效率與質量不破”也許更不easy形成誤解。一說到“快”,給人的感覺往往是投入很多其它的時間就能達成目的,easy讓人忽視做事的方法與效率。與之不同的是,強調效率須要我們考量投入時間的產出比,且暗示做事的方法僅僅有對路才干獲得效率;強調質量則提醒我們盡量別做“豆腐渣”之事,而這隱含的內容是我們必須專業做事,即使欠下了“技術債”它也時刻提醒著我們那是一定要還的。
軟件行業的長期被動加班成為了速度之痛的一個縮影,它讓不少project師過著有工作沒生活的日子。軟件行業要避免偶爾、短期的加班是不可能的,但長期的被動加班絕對是個問題。不重視效率與質量的“勤勞”除了是在浪費外,更是一種透支將來的短視行為。
視野之痛
視野之痛體如今project師在從事技術工作時,忽視了解國外的發展狀況。他們由于不知道同質開源項目的存在而走上“又一次發明輪子”的道路,甚至發明出“三角形的輪子”;也由于對英文資料缺乏閱讀的耐心而不去了解相關國際標準、訂閱開源項目的mailing?list和專業站點的newsletters等。
狹窄的視野非常easy讓人自滿,以為軟件開發就是那么簡單,最后導致成長慢、意識與技能“不入流”。
以我的經驗來看,project師假設不能非常好地閱讀英文資料則要達到高技術水平實在非常難,視野狹窄也恐成必定。另外,編程活動中的命名環節事實上對我們的英語水準提出了一定的要求,不然非常easy動名詞不分而寫出僅僅有自己easy讀懂的程序,或常出現命名時找不到合適的單詞去精確表達程序意圖。
持續發展之痛
以上各痛點的終于結果又給我們帶來了持續發展之痛。其表現為:少有人會在項目中通過文檔提升開發效率;鮮有人會持續改善軟件的設計質量;大部分人僅僅關注短期完畢工作,而忽視短期行為所帶來的高額隱性成本。
持續發展之痛使得project師非常難輕裝上陣,工作精力過多花費在反復、低級的瑣事上,而非用于學習和思考。終于結果是將工作變成了“青春飯”,辛苦但卻看不到美好的未來。
全部痛點能夠歸結為意識的陳舊,或雖有意識卻無力于將其轉變為能力!(注:意識是一種行為,而非能力)
當然,這些“痛”與我國的社會大環境有著緊密的聯系。但不管是怎樣的環境,總有人做得出色,也許他們身上有我們所沒有的內容。是什么?僅僅有自己去想、去悟,成長之痛!?即使大環境好了、大家都非常“專業”,職場的“金字塔”總是擺在那的。誰能向上走?走多遠?全靠個人,沒有shortcut!僅僅只是每一個人都平等地擁有向上走的機會與權力!
總結
以上是生活随笔為你收集整理的中国软件开发project师之痛的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA WEB框架的错误体系
- 下一篇: SSH 登录速度慢的解决办法