游 驊
又是一年春暖花開,也恰是莘莘學子們緊張忙碌的季節——他們正面臨畢業的抉擇和考驗。說抉擇,是因為他們需要決定畢業后的發展方向——是繼續深造還是開始工作;說考驗,是因為他們并不確定象牙塔中的多年修煉是否可以達成自己的愿望。
其實,這個季節里緊張忙碌的又何止是畢業生?為了招到合適的人才,用人單位又何嘗不是在奔忙?在市場經濟的條件下,在這場關系到多方利益的“招聘運動”中,要想取得共贏結果,“需求”扮演著非常重要的角色。只有供給與需求相匹配才能產生最大的效益,并最大限度地避免資源浪費。
社會對IT人才的需求到底是什么呢?本文嘗試從個人的角度與讀者分享一些觀點,希望能為教育事業盡些綿力。下面首先列舉IT企業中技術人才的分類與基本技能要求,進而探討高等院校如何培養這些技能。
一般來說,一定規模的IT公司需要的技術人才分為兩大類:管理協調人員和工程技術人員。管理協調人員在項目或團隊中充當協調各方資源、監控進度和對外統一接口的角色,主要負責流程與管理工作——項目經理就是這類人員的代表。這種管理人員具有相當的技術理解力和資源的(主要是人員)協調能力,能夠保證項目按時按質完成,
他們一般從有工程技術經驗的人員中選拔而來,一般占技術人才的比例不會超過五分之一,應屆畢業生很難勝任。除了這類人員,公司的主要研發力量是工程技術人員,對此類人才的分析也是下面探討的重點。
工程技術人才涵蓋廣泛,是IT公司中的主要生產力。按照功能劃分,這類人才主要包括開發工程師和測試驗證工程師。下面以軟件技術人員為例,將其職能的分析總結如表1所示。
在成熟的企業團隊中,開發人員和測試驗證人員各占50%;由于測試驗證功能對產品的成功起著越來越重要的作用,某些情況下測試驗證人員的比例可能更高。另外,技術人員中還有(相對于其他技術人員來說)一小部分主要負責運行、維護基礎IT設施,如員工使用的電腦、電信網絡、服務器等。除此之外,市場技術部門也有一些具有技術背景的工程師做產品售前或售后的技術支持工作。
以上對技術人才的要求分析十分粗略,只列出了一些基本技能和素質要求。而在以前的校園招聘中,招聘人員也總會面對畢業生咨詢“寫簡歷有什么技巧”、“面試有什么技巧”之類的問題。其實秘訣很簡單——能夠被用人單位錄用并非是靠這些所謂的“技巧”,而是靠長期修煉獲得的基本能力——尤其是主動學習的能力和素質。這些能力和素質是對畢業生最基本的要求,它不是一蹴而就的,而是從大一、大二就開始培養的。

舉個例子,對大多數軟件工程師來說,C(C++)語言是一切工作的基礎。對指針的理解和運用絕不是通過簡單的考試就可以滿足實際工作需求的——如果學生沒有真正仔細分析一些應用程序的源代碼,甚至自己動手實驗實現一些功能,可能永遠無法真正理解指向指針的作用,在工作中遇到類似回調函數時也會不知所云。
再如,現在很多大企業有自己的企業文化、工作規范和流程,公司需要有很強的學習和適應能力的技術人才。在正規的軟件公司,不是只要寫出可以運行的程序就可以,工程師需要按照公司的規范進行命名、加注釋及撰寫相應的文檔。如果學習編程時沒有養成良好的編碼習慣,認真完成實驗報告,員工一旦開始工作就會覺得非常不習慣,影響上手的速度。現在大多數企業都喜歡有工作經驗的學生,因此很多學員愿意采取實訓的教學方法。從公司的角度來看,實訓不應成為唯一被重視的方法,學生不應只重視實訓這類大型和正式的實踐活動,而應該在平時就注意鍛煉自己的動手能力,踏踏實實地做好一個個課堂實驗,認認真真地完成好每一個作業。只有這樣才能扎實地練好編程的基本技術,積累知識和能力,為今后的發展打下良好的基礎。
訂單式教育是個很好的培養思路,但是學校也應該慎重使用這種方式。學校還是應該將培養重點放在基本素質的培養上,盡量避免盲目跟風。因為在IT領域,實效性是一個不可回避的問題,如果培養方向并不是真正的業界趨勢,現在培養的學生很可能在畢業時找不到合適的工作。另一方面,謹慎也不是墨守成規。我們的教育工作者應該能夠認清潮流,與時俱進地調整、增減教學重點,培養出市場需要的人才。比如現代處理器的發展使得單純依靠CPU主頻提升獲得應用程序性能提升的“免費午餐”已經成為過去,并行化程序設計成為大多數程序員需要掌握的技能;如果還指望“免費午餐”過活,很快就會被淘汰——因為競爭對手會通過并行化的編程盡可能地發揮出已經日益普及的多核處理器平臺的計算能力,從而在這一領域拔得頭籌。
總之,對學生來說,應該把學習重點放在基本能力和素養的提高上;對教育工作者來說,應該把培養重點放在對學生基本知識、技能和素質(如主動學習)的教育上,順應業界主流方向,這樣就不難培養出市場需要的優秀人才。