我這么說(shuō)并不是玩笑:軟件工程師的能力問(wèn)題在這樣一個(gè)廣泛連通的世界里只會(huì )變得越來(lái)越緊迫。 就在不久前,一個(gè)四年制計算機科學(xué)與工程專(zhuān)業(yè)的畢業(yè)生還可以在專(zhuān)業(yè)軟件工程機構找到一個(gè)入門(mén)級職位,然后與同事、經(jīng)理一起工作并享有培訓機會(huì ),當然最重要的是還可以掌握正規的開(kāi)發(fā)方法和最佳實(shí)踐。而通常來(lái)說(shuō),這樣的員工需要經(jīng)過(guò)約一年的培訓和實(shí)踐后才能給團隊帶來(lái)效益。 而當今社會(huì )則充斥著(zhù)大量零散的工作需要軟件程序員來(lái)處理,因此,對軟件程序員的巨大需求使得軟件工程領(lǐng)域的這種事實(shí)上的學(xué)徒制方法變得越來(lái)越少見(jiàn)或者消失了,因為在日趨緊張的交付時(shí)間要求下,這種學(xué)徒制方法簡(jiǎn)直就是一種奢望。 最終人們會(huì )發(fā)現,所有的熱情、編程馬拉松和沖刺都無(wú)法彌補個(gè)人在專(zhuān)門(mén)技能方面的缺失與不足。而軟件團隊通常會(huì )掩蓋個(gè)人在技能方面的不足,但這僅僅是因為其他成員幫助彌補了那些技能不足者的低生產(chǎn)率。 實(shí)際上,根據軟件質(zhì)量與度量領(lǐng)域專(zhuān)家、Pyxis Systems International公司總裁G.Gordon Schulmeyer先生所言,當前形勢非常嚴峻,所有大型項目中都可能存在著(zhù)一些Schulmeyer稱(chēng)之為“凈負生產(chǎn)程序員(NNPP)”的人,而這些人所做的破壞要超過(guò)他們的產(chǎn)值。 在《凈負生產(chǎn)程序員》(The Net Negative Producing Programmer)一文中,Schulmeyer寫(xiě)道:“負生產(chǎn)并不僅僅適用于極端案例。假設在一個(gè)十人團隊中,三名成員的缺陷率都高到足以列入凈負生產(chǎn)程序員的行列,那么,在技能常態(tài)分布的情況下,一個(gè)十人團隊中沒(méi)有一人是凈負生產(chǎn)程序員的可能性為零。而如果你不幸分到一個(gè)缺陷率高的項目團隊中(即每1000行可執行碼中有30個(gè)~60個(gè)缺陷),那么你所在的團隊中,有可能一半的成員都是凈負生產(chǎn)程序員。 那么,如何才能知道自己是否是一名合格的軟件工程師?如何才能讓公司、經(jīng)理和團隊成員知道你不是一名凈負生產(chǎn)程序員呢? Jacob Beningod在他最近的一篇博客《硬件工程師該如何成為軟件專(zhuān)家》里給出了很多建議,其中一條就是獲得行業(yè)認證。這似乎是個(gè)好主意,所以我要好好琢磨一下為什么實(shí)際上很少看到有人這么做,為什么相當少的軟件從業(yè)者拿到了行業(yè)認證。 如果說(shuō)僅僅一小部分在職軟件工程師曾經(jīng)學(xué)過(guò)四年的軟件工程課程,這話(huà)并無(wú)偏頗。事實(shí)上,在美國只有22個(gè)這樣的課程設計。我們絕大多數軟件工程師都是在接受正規的計算機科學(xué)教育后再接受在職訓練,但計算機科學(xué)教育并不同于軟件工程。 Construx Software公司首席顧問(wèn)兼IEEE計算機學(xué)會(huì )認證委員會(huì )主席Steve Tockey說(shuō):“你不會(huì )派一位化學(xué)專(zhuān)業(yè)人員去解決化工問(wèn)題,同樣,為什么我們要讓計算機科學(xué)家去解決軟件工程問(wèn)題呢?” Tockey所在的委員會(huì )負責如下IEEE認證項目(引自IEEE計算機學(xué)會(huì )): ● 初級軟件工程師職業(yè)資格認證(CSDA)—針對應屆軟件工程師和初級軟件從業(yè)人員。 ● 軟件工程師職業(yè)認證(CSDP)—針對希望證明其軟件開(kāi)發(fā)能力進(jìn)一步拓展事業(yè)的中高級軟件從業(yè)人員。 Tockey說(shuō):“這背后的問(wèn)題是,雇員和雇主們都對必需的技能和知識缺乏了解。做出雇用決定的人常常不知道這些東西。所以要幫助他們弄清楚! CSDA/CSDP項目代表的技能與知識體現在軟件工程知識體系(SWEBOK)指南中,該指南包含了人們普遍認可的軟件工程核心知識。ISO/IEC 24773于2008年發(fā)布了這一國際權威指南,從而使CSDA/CSDP被全球廣泛承認。 實(shí)際上,IEEE計算機學(xué)會(huì )還特別針對印度和中國推出了SWEBOK認證項目(SCP)。按IEEE計算機學(xué)會(huì )的說(shuō)法,印度有約130萬(wàn)名軟件、計算機科學(xué)和計算機工程專(zhuān)業(yè)的學(xué)生,每年要畢業(yè)數十萬(wàn)相關(guān)專(zhuān)業(yè)的大學(xué)生,然而最近對超過(guò)5.5萬(wàn)名工科生的抽樣調查表明,只有17%的學(xué)生符合任職條件。 SWEBOK Guide初版于2004年推出,現正在修訂。但現在已有SWEBOK Guide V3討論稿,據Tockey說(shuō),SWEBOK Guide V3很可能在今年年底稍做修改即公開(kāi)發(fā)布。 Tockey說(shuō),從2004年的指南到V3版,最顯著(zhù)的變化包括: ● 增加了新進(jìn)展,比如敏捷開(kāi)發(fā); ● 更強調安全; ● 與CSDA/CSDP知識同步。 V3中的另一變化是將2004年版中的大量核心參考文獻裁減到了可控范圍。事實(shí)上,即便你不想付出太多,怎么也得把SWEBOK Version 3 Consolidated Reference List吃透了。如果你想提升自己的技能,不妨就從這里開(kāi)始。 正如Tockey所說(shuō),認證并不保證你能勝任什么,但它減少了你被淘汰的風(fēng)險。有時(shí)候,知道這一點(diǎn)就夠了。 |