我所在的公司,研發系統效率較低,據非官方信息得知2012年研發項目完成率僅為51%,剩下的49%有這樣或那樣的、合理的不合理的原因,總之就是沒完成!我們研發副總禮賢下士,對大家苦口婆心,就是希望各位項目經理能夠按時、按質地把項目做完做好!有這樣的領導,我們又有何面目不去努力呢?思前想后,我想起了一件事――“李廣之死”。
“但使龍城飛將在,不教胡馬度陰山”中的飛將軍李廣、西漢名將,但名將歸名將終究是非正常死亡,就像“富士康”的某幾個員工一樣。我很惋惜李不是一個程序員,要不然就不會是這樣的結局,也許李家也不會有那樣的遭遇。理由很簡單,程序員要么“累趴下”要么“受不了,跳槽”,很少其它!
雖說李不是程序員,但如果他是,那么從李的離去中,又有哪些事情值得我深思呢?我從軟件項目管理的角度作粗淺分析,以博大家一樂!
(本文雖有對李的諸多調侃,但終不改飛將軍之英雄形象及本人對其之敬仰,當然本文也並非嚴謹的以項目管理理論為依據,更多的可以認為是雜談)
1、 有效溝通
漠北之戰,李廣因迷失道路,延誤軍期,且李廣年事已高,不忍受幕府對簿之辱,軍前自刎而死。李廣的離去讓人無不痛惜,其實在工作當中,類似的事又何嘗不少?有些同事突然離職,讓人覺得可惜,同時也讓領導愕然,公司不解!終其原因大多都是溝通不暢造成的。
在項目開發過程中,良好的溝通是對需求分析、開發協作、測試部署最好的潤滑濟,也是消除和解決分歧和誤會的最佳良葯。要想做好一個項目必須注意溝通,我個人認為在某些“企業文化”的內部項目管理中,溝通可能比“范圍、時間、質量”對項目的影響更大!
在我處過的項目中,就有組員間溝通通暢、協作無間,戰斗力之強遠遠超出我的意料。大家知道總目標在哪,知道近期目標在哪,知道風險在哪,知道協作點在哪,有問題群策群力、雷厲風行!我很榮幸組織過這樣的團隊、參與過這樣的團隊,只可惜種種原因,最后我自願“解甲歸田、韜光養晦”去了。
當然,要想溝通有效,服眾!首先必須要求負責人有一顆公心,持中立立場!軟件開發、少不了爭論,我們能做的只能是坦誠、對事不對人!條條大路通羅馬,沒有最好的,只有暫時更合適的!
同時,要想溝通有效就必需相互尊重。不管對錯,尊重是最起碼的禮儀,是一種修為。對超出了討論范圍之外,惡意挖苦、嘲諷,甚至人身攻擊,要及時制止,且事后要單獨交流、提出批評和建議。
就李廣自刎事件而言,先有戰單於的立功機會而不予,再有衛青私受公孫敖之嫌,以致李廣憤恨;再最后因“不忍受辱”而自刎。雖有“衛青曾暗中受到武帝的囑咐,認為李廣年老又命數不好,不要讓他與單於正面對陣”的說法,但我想李廣之死衛青是有責任的,一則很多事沒有溝通清楚從而引起誤會,在李本有怨言之時未加以開導化解,后來所做的一些事又使得老將軍覺得“受辱”以致釀成自刎惡果。我想若以李廣聲望,振臂一呼、臨陣倒戈,衛青那就灘上大事了。
所以說“李,怨封三尺,非一日之言”所致,是衛青長期溝通不暢導致的。這也告訴我們做項目時必須要有溝通計划,必須是一個長期、有效的溝通機制!
如果說溝通不暢造成這次悲劇,衛青負有責任。那么李廣延誤軍期、未按時到達也是有錯在先,衛青依法行事也並無過錯。
2、 誠實守信
做項目如行軍打丈,大項目更甚。言必行、行必果,令行禁止。約定的時間交付、約定的成果交付、約定的功能要求必須按時、按質的提供,這就是守信。李廣因延誤軍期而受罰我覺得正常。
在項目管理中,會議討論通過、評審通過的方針、路線、里程碑等都必須嚴格執行。對項目組中的成員安排的任務也必須不折不扣完成,對因個人原因造成的延誤必須自己想辦法彌補(常見加班、趕工等)。當然在執行過程中,也要求負責人具有一定的領導能力和個人魅力,決不能雙重標准、選擇性執行!
我公司有些項目是里程碑倒了再立,立了再倒,還真有點屢敗屢戰的味到,有時我直接懷疑項目經理制定計划的能力或是其團隊的執行力!其實,這種事情多了對團隊士氣打擊很大,會讓隊員對項目失去信心,從而造成守信是一個可有可無的約束,借口才是嘴邊常掛的理由。
其實我一直認為守信不僅僅是個人品格,它也是一種團隊精神、狼一樣團隊必須具備的精神。一個守信的團隊基本上可以從容地應對所出現的風險。
李廣如果是一個守信的人,那么作為一名軍人一個將領,應該知道軍法如山道理。那么這次行軍因迷路誤點,要么心有不爽想陷衛青等於不利,要么就是對本次任務的風險控制不足,我更想信是后者!
3、 風險控制
明知山有虎偏向虎山行,勇氣可佳,但行為魯莽!從這個角度出發就不難得出,李廣還是有其內在的一些不足,在沒有向導的情況下、帶着個人情緒,倉促出戰。在風險實際存在,個人分析不足,且未與統帥衛青交流備案的情況下,被迫領命。是典型的沒有做足風險分析,並給出相應的風險應對措施。
再說,這次衛青與單於交戰未果也就罷了,若是真干上了,而東路軍未致,那后果可能不堪設想。
作為老將軍,犯此錯誤,本是不該,但以李廣的個性,我想應該是遲早的事!
4、 高級程序員
不得不說李廣是個老程序員、好程序員、技術牛流,他和他的小團隊是一個有戰斗力的組織!但終觀老李一身,功過參半,以致“難封”!肯定是有原因的。
資治通鑒中說:廣行無部伍、行陳,就善水草舍止,人人自便,不擊刁斗以自衛,莫府省約文書;然亦遠斥候,未嘗遇嗐。
程不識曰:“李廣軍極簡易,然虜卒犯之,無以禁也;而其士卒亦佚樂,咸樂為之死。我軍雖煩擾,然虜亦不得犯我。”士兵人人自便,晚上不打更巡邏自衛,但如果匈奴進攻,大軍沒辦法抵擋。程不識則以嚴格治軍而聞名,他注重部隊的編制,隊列和陣式。晚上敲刁斗巡邏,軍中事務繁瑣,卻不怕匈奴進犯。可是士兵卻苦於程不識之嚴,都喜歡跟隨李廣作戰,這是程不識對老戰友李廣委婉的批評。(摘自百度百科)
不難看出李廣行軍打仗較為渙散,就如一些老程序員一樣,代碼不寫注釋、沒有文檔、一個類寫到底,相當隨意,無拘無束,如“行雲流水”。反觀主帥衛青就不一樣,其“為將號令嚴明,與士卒同甘苦”。我想這就是老程序員與架構師和項目經理的區別吧。
宏觀、大局,都離不開規矩!理論基礎不一樣、視野不一樣,個人修為也會不一樣。這也許正是李廣作為名將而不得志的原因吧,用現在的話來說是在某些方面做不到“與時俱進”。李廣早期主要是內部平叛、負責防衛匈奴,屢立大功,但在后期對對匈奴作戰轉入戰略進攻時,卻建樹不多。我想這跟很多老程員有類似之處:有些人曾經輝煌過,總沉浸在當初的榮耀當中,躺在功勞簿上;在自己的理論帝國中不能自拔,以致固步自封!在無法破除自我構造的“輪子”時,也就難以了解、學習和接受新技術、新思想,更別說新的突破;有些人甚至在某些方面會阻礙公司的技術發展與革新。
當然,據記載李廣在死前曾對部下說:“廣年六十余矣,終不能復對刀筆之吏。”,可見李是一位不忍自己被“小人”詬病的人,維護了一名資深程序員的尊嚴。
其實作為一名優秀的程序員又何嘗不應該如此呢?很多人寫的代碼很隨意、太垃圾,以致可讀性、可擴展性太差,常被后來維護人員大吐口水!如果平時我們就心懷“敬畏之心”來寫代碼,又何懼后來者的詬病?作為一名優秀的程序員必須對提供的每一行代碼負責,這應該是最起碼的職業精神,也是不懼“刀筆之吏”的資本。
說到職業精神,李廣元狩六年被任命為前將軍,以花甲之年隨衛青出征,不得不說是一位極其敬業的程序員!
5、 契約精神
一個敬業的程序員,肯定是有契約精神的!
食君祿、忠君事;忠信義、禮廉恥,這是我們不可放棄的原則。就算在物欲橫流的當今,我們拿着老板的錢就必須為老板把事做好,這是我們的義務。
也許你認為以你目前的能力,可能可以賺更多的錢,但當初我們既然同意了這份協議、簽署了勞動合同,那么我們就必須履行我們的義務,這就是契約精神,是一種承諾!
知無不言、言無不盡,盡最大的能力提供自己力所能及的支持,應該也是這精神的體現。近期看到一句話“領導驅動開發”,我覺得這可能是我們行業的一個普遍現象,是一種悲哀、一種無奈。想想古人尚有“將在外君命有所不授”,難道我們連“保留意見”的勇氣都沒了?如果真是這樣,那又談何“承擔和責任”,更別提“精神”了。
在面對悲哀、無奈、挫折、不如意時,可能有很多人的第一個念頭就是離職,其實這是一種不負責任的表現,也是有背於契約精神的。據我觀察,在面對悲哀、無奈、挫折、不如意時,那些努力去完善、改進的往往比離職逃避的最終發展的更好。而李的自刎是不是一種“無法面對的逃避”呢?不得而知。
昨天我建議否決了一份招聘,就是因為應聘者跳槽太頻繁。雖然工作是雙向選擇,但不能沒有底線!說真的,我不反對換工作,但我反對頻繁換工作,因為這有違最基本的契約精神。想當這,想起一句話“哥,不是那種為了500塊錢就會跳槽的人!”
但話又說回來:
縱觀李家一門慘烈,漢武帝決非好老板。
跳槽吧,跟對的人,做正確的事!