天天看點

公司陷入困境的思考

        我們公司陷入困境的原因是多方面的,很多東西我可能永遠不會知道,但直接的導火線應該是A公司的一個項目。這是A公司外包的系統,需要與A公司的專用硬體裝置進行通訊。當軟體主管剛接觸到這個項目時,就已經知道在這個項目中無法賺到錢。因為按設計這是一個電信級的系統,難度比較大,加上不少技術公司以前是沒有涉及到。涉及到的技術内容大概有C、java、IBM portal/portlet、SameTime、Domino、LDAP、SIP、InstallShield多平台版及A公司自己的一些通訊協定,系統最後将運作在5台伺服器上。怕是沒有人想得通這是一個什麼樣的系統。軟體主管最後卻決定接下這個項目,并自己擔任這個項目的項目經理。他認為雖然此項目不賺錢(不會貼太多錢),但在這個項目可以學到很多新東西。并希望公司有可能由做項目轉到做研發上來。我想也許還有一點就是可以用這個項目來炫耀,進而攬到其它的項目。

        公司位于廣州,A公司卻在深圳。項目是在去年下半年才開始的,公司沒有采用現場開發的方式。原因有幾點:1.認為派人去待在深圳進行開發成本太高;2.在A公司無法聯上網際網路,找資料不友善;3.不友善加班。因為軟體主管習慣于半夜工作。不知道和A公司不允許吸煙有沒有關聯,一群人(好象就除了我)一天能抽掉一條煙,有些人是用裝月餅的鐵盒來作煙灰缸;4.公司希望部分開發人員同時對其他的項目進行支援。我就是同時對其他項目的公用元件提供支援。是以僅由軟體主管一個人自己去A公司處理需求方面的事情。同時,公司認為在市區内進行軟體開發比較吵雜,是以将軟體部搬到番禺的某個花園小區裡進行開發。對于開發人員來說,這項目是一個惡夢的開始。由于系統過于複雜,每個人都要學習新技術,是以為了能按時拿出産品,大家都不得不加班幹活,周末也不例外。實際上不幹活,大家也沒有什麼事情幹。小區内沒有多少娛樂的,去一趟廣州市區内也不友善。由于軟體主管習慣于半夜幹活,是以不少人晚上都跟着加班到2、3點鐘。在加班上我倒是個例外人,而且不管上司是怎麼看待我。最後的結果是,去年下半年大家都累得不行了。但軟體的開發進度卻比想象的還要慢了許多。一是新技術的應用使大家花了不少時間在學習。二是新技術加上疲憊使得做出的軟體品質比較差,在後續的工作上花了不少的時間。一個例子就是我後來在重構某位已經離開的成員的代碼時,删除了大約三分之一的代碼後軟體還能夠正常運作。三是不在現場開發,我們無法比較準确地模拟出A公司的硬體通訊環境。在軟體的調試和測試方面浪費了不少時間。四是與A公司方面溝通不力。一些需求的變更根本無法及時的回報給開發人員,也使得沒有辦法按計劃将軟體送出到A公司進行測試。五是A公司也有一些責任,在此期間他們換了三四次工作銜接和聯系人員。而且有些接口資訊沒有文檔,全由我們到現場自己收集。

        春節過後的一些日子,軟體部開了會議宣布去年軟體部門沒有賺到錢(系統內建部門倒是賺了些)。辛苦了一年還是沒有賺到錢,是以不久就陸續有人離開公司。上半年軟體開發人員的流動率接近50%,而人員少一些的系統內建部門流動率卻為0%。由于軟體遲遲未能送出并進入測試階段,A公司終于火了。要求增加人員到現場開發,加快開發速度,否則會采取一些措施。由于此項目的部分開發人員已經離開,而且為了公司的信譽,公司隻好取消一些其他尚未開始的項目,再從快要終驗的項目中抽調一些人員到A公司的項目上去。隻可惜,抽調過A公司項目的人對業務和已有的代碼不太了解,也隻能作一些測試方面的工作,對開發工作也沒有太多的幫助。而尚未終驗的項目由于部分人員被抽調走,也延長了項目終驗、收款的時間。公司由于在A公司的項目中貼入了比較多的錢,資金反而一下子周轉不過來了,加之員工對公司裡某些事情的不滿,是以公司已經是危機四伏。

        我覺得這個項目本身新技術太多,簽下此項目本身的風險就已經很大。加上沒有合理的軟體過程支援、沒有重視軟體品質,失敗的可能性本來就很高。隻是誰也沒有想到公司就這樣陷了進去。從項目中學到的新技術也因為開發人員的離開而流失,隻在軟體主管的腦裡還留下了一些。但我想一個人的精力終究是有限的,很多事情心有餘而力不足。

        如果我在這個項目中處于項目經理的位置,我應該怎麼樣做呢?

繼續閱讀