軟體工程自20世紀60年代末期誕生以來,逐漸形成了其系統的軟體開發理論、技術和方法,並在軟體開發實踐中發揮了重要作用。
作為軟體設計、開發、實施工作的主體——軟體技術團隊,它的建設是開發生產高質量軟體產品的重要保障。
實現1+1>1是軟體技術團隊建設的基本目標,而實現1+1>2則是其高階目標。
軟體技術團隊一定是軟體技術群體,反之未必盡然。本文從軟體技術群體的特徵、幾個值得思考的問題和怎樣構建1+1>2的軟體團隊3個方面討論了如何使軟體技術團隊確實1+1確實大於2這一話題。
一、軟體技術群體的特徵
軟體技術群體這裡指軟體技術人員構成的群體。從我國現有國情來看,在整個該群體中,受過高等教育的軟體技術人員的數量上佔絕大多數;
同時由於產業的相對年輕,在特定領域、特定技術上有良好職業經歷和實踐經驗的人才相對匱乏;「平庸者眾,精專者少」確實是乙個無法迴避的現實。
另一方面,我國軟體的工程化程度亟待提高,很多軟體公司有著上規模的軟體團隊,卻難以生產出上規模的軟體團隊應該生產出的軟體產品。
這種現象是僅僅是產業成長過程中的必然,還是軟體技術群體獨有的特點造成的?
本節從軟體技術人員這個群體的組成、特點等幾個方面來進行**。
(一)高度個性化的成員
首先,軟體技術群體成員的特點是高度個性化,而軟體工程的重要產品輸出:軟體本身也需要有個性並且有創造性的人才。他們往往難以像一顆螺絲釘一樣,放在**都能正常工作。機械化的管理會極大的破壞他們的創造性與活力。
(二)通才、庸才與專家
其次,這個行業在我國已經飛速發展了20多年,然而從行業內主流的職業體系規劃上來看,不職業體系清晰。
甚至軟體工程師、部門經理、ceo這些原本專業要求上合技能要求上並不搭界的崗位會成為乙個普遍的個人發展路線圖。
(注:這裡不是反對跨領域發展,不是反對技術人員做管理,而是在討論怎樣的主流趨勢是合理的)。
這樣以來,能夠長期在某一特定領域發展的人才乃至後備人才寥寥。
我們形成了一大批「懂」很多東西的人才,我們現在很缺少有專長的、真正意義上的專家,尤其是技術專家。
記得在2023年來到北京,剛入行的時候,一位前輩對我語重心長地講:「這個行業做的人很多,做得精的很少。」
當時我是那樣的不解:因為我心目中這個充滿光環的行業,各個都是精英,怎麼可能有庸才呢?
轉眼,十來年過去了,經歷了很多事,認識了很多人之後,我才真正體會到那位前輩真正要表達的意思:
他並不是在說這個行業缺乏能人,而是在憂慮這個行業還沒有形成可持續發展的良性的生態環境,我國這個朝陽產業的「朝陽」何時能夠公升起在長空之上?
(三)小作坊與大兵團
產品開發部、軟體部、軟體開發部、產品開發部、研發中心、軟體專案部、專案實施部等等林林總總的名稱各個企業不盡相同,軟體技術部門大體上分為產品和專案產品兩大類。
而這些部門從幾個人、到幾十人甚至幾百人的規模不等,數量上有一定規模的軟體團隊不在少數。但是否產出了大兵團應該產出的軟體產品呢?
這些上「規模」的大兵團,和先前小作坊的區別在**?優勢又在**?
每天困擾著專案經理、產品經理的問題————「人力不足做不好,人力足了不好做!」真正沒有解決的辦法了嗎?
二、值得思考的幾個問題
(一)「烏合之眾」是怎樣產生的?
「烏合之眾」並不全是講成員的技能比較低,更是因為其整體上缺乏戰鬥力。
不難想象,無法產生合力的團隊,無論成員的能力有多高,都將是難以輸出好的工作產品的。
(二)質量真的就是生命嗎?
質量真的就是生命嗎?這個問題似乎問的有些多餘,
也被作為乙個值得思考的問題而提出來,是在於:質量是相對的,有目標的質量最具價值。
質量重要,目標和創意也很重要。
強調質量,不可破壞創造性,更不能忘記目標,去為了質量而質量。
(三)團隊何以是團隊?
團隊之所以成為團隊,自然是有其職責的,如公司成立研發中心自然是研發產品為主、成立專案部自然是承擔專案建設為主。
然而,僅僅有職責的團隊是不完整的,她只有擁有使命才能有活力,成為一支真正的團隊。
三、3p3o構建1+1大於2軟體技術團隊
構建能否發揮團隊效應的軟體技術團隊,這裡想提一下3p3o(3個proper,3個own),這裡的「自己」指團隊,不是專指某個人。
(一)「適合的」管理思想
用怎樣的管理思想來管理團隊是軟體技術團隊成功的首要因素。
沒有最好的,只有適合的。
純理論的、機械化的管理辦法對軟體技術團隊而言,那不能稱之為管理,而只是破壞。
「適合的」管理思想自然**於團隊,最終應用於團隊、服務於團隊。
(二)「適合的」管理層次
有些軟體企業實行「彈性工作制」、並實行了「扁平化管理」:比如,某家200多人的研發中心甚至只有乙個行政上的主管,通過專業組、技術組的合理分工保障依然組織有效。然而,更多的軟體企業依然是傳統的多層次的管理體制,部門林立、內耗和管理成本比較高。
不過,同第一條「適合的」管理思想,管理層次關鍵在「適合的」,沒有「最好的」。怎樣的管理層次才是最適合自己企業的軟體技術團隊,需要認真調研與分析,不可照搬其他企業所謂的「經驗」,更不可照搬書本上的理論條條。
(三)「適合的」團隊規模
團隊的規模與團隊的職責、工作模式等都有關係,數量過多或過少都會影響團隊工作的效率與效果。
(四)形成「自己的」隊伍
既然是團隊,就要避免臨時拼湊,要有統籌規劃和長遠打算,切忌東一頭西一頭的安排工作,這樣不利於團隊成員成長,從也不利於團隊穩定。
(五)培養「自己的」專家
根據團隊的職責與使命,不斷地形成特定領域的專家是很必要的。所謂越做越專,「一招先」的道理大家都懂,但真正踏實下心來,專心左專乙個領域,不僅僅需要毅力和決心,還需要有信念的支撐和長遠的保證。
(六)構築「自己的」文化
團隊精神停留在口頭上沒用,僅僅是人際關係融洽也還不夠。形成一種共同的奮鬥目標,共同願景是乙個長遠而強大團隊的精神所在。
因此,團隊自己的文化是團隊的靈魂,對軟體技術團隊而言,同樣是最重要的。
總之,實現1+1大於1是軟體技術團隊領導者的基本職責,實現1+1大於2是軟體技術團隊管理的最高境界。
如何使軟體技術團隊1 1 2
軟體工程自20世紀60年代末期誕生以來,逐漸形成了其系統的軟體開發理論 技術和方法,並在軟體開發實踐中發揮了重要作用。作為軟體設計 開發 實施工作的主體 軟體技術團隊,它的建設是開發生產高質量軟體產品的重要保障。實現1 1 1是軟體技術團隊建設的基本目標,而實現1 1 2則是其高階目標。軟體技術團隊...
如何使軟體技術團隊1 1 2
軟體工程自20世紀60年代末期誕生以來,逐漸形成了其系統的軟體開發理論 技術和方法,並在軟體開發實踐中發揮了重要作用。作為軟體設計 開發 實施工作的主體 軟體技術團隊,它的建設是開發生產高質量軟體產品的重要保障。實現1 1 1是軟體技術團隊建設的基本目標,而實現1 1 2則是其高階目標。軟體技術團隊...
開源軟體技術
有關軟體分發的特殊理念是作業系統未來發展所需關注的乙個問題,即開發一種同時適用於公司和消費者的作業系統。大家普遍認為linux作為一種根據 開源軟體技術 的原則建立和分發的作業系統,已經對作業系統產生了較大的影響。大多數作業系統 驅動程式和實用程式由分發其軟體 可執行版本 這些版本不可以研究或更改 ...