在聯發科的系友寫了一封信給我,要幫他的部門找2015 年研發替代役的人才,需要具備以下技能: (原文照登)
「
1. 對於 computer architecture, operating system 等 CS 基礎知識有良好基礎 (mandatory)
2. 熟悉 C / C++ programming (mandatory)
3. 具備影像處理的專業知識 (nice to have)
4. 具備電腦圖學的專業知識 (nice to have)
5. 具備Linux device driver 開發經驗 (nice to have)
6. 具備多執行緒軟體開發經驗 (nice to have)
7. 有強烈企圖心, 想要在一家有國際競爭力, 有國際能見度的公司, 和眾多高手一起打造世界級的產品 (mandatory!)
由於智慧型裝置的軟體複雜度日漸提高, 我們希望能找到一流的軟體人才加入聯發科技
」
「計算機架構」和「作業系統」列在第一項,代表甚麼呢?這些雖然是基礎,但也是變化最快的技術。今年我們要改採新改版的「計算機組織」的課本,20年間不斷改版,這次是第五版。作業系統也差不多,一直有新東西。我幾年教過Linux作業系統,但是Linux不斷改版,不斷更新技術,我現在已經不敢說我確定知道什麼了。
由於變化快速,這兩門課的內容應該是看懂之後要會活用的。張三丰傳授「太極劍」給張無忌的時候,要他理解之後,馬上把劍招給忘掉,才算是真的學會。這種神級的教育法,不是說真的要把學到的東西忘掉,而是希望學生要能活用所學,不要讓所學的知識成為創新的包袱和障礙。
這兩門課,剛好是資訊工程研究所入學必考科目,但是根據我多年改考卷的經驗,兩門科目學得好到能夠解決應用問題的學生,少得可憐。不少考卷,一看就知道考生在補習班背了不少題庫,遇到類似的題目就套用公式,遇到沒見過的問題,不是空白就是亂代公式亂寫。很多時候,連一般的閱讀測驗都看不懂,要談什麼活用?
第二項和第七項,大概每個公司都有類似的要求,不用特別解釋。
第三項到第六項,雖然說是nice to have,但是人家開出了四個項目,如果應徵者一竅不通,人家會要嗎?至少也得專精一項吧?如果有兩項以上,當然更好;如果具備三項,那就更具備競爭力了。
如何具備三項?舉個例子,要擁有第三、五、六項的能力,怎麼學?分開修三門課,是個辦法,但最好是做個專題或是碩士論文,題目像是「利用平行處理與硬體加速技術達成即時影像處理的Android/Linux系統」,就有機會學到如何把這些能力統整與綜合運用。
有些人看到高學歷者抱怨在業界找不到理想的工作,開始大談學位無用論,或是罵業界不長進。曲高和寡,當然可能是業界不致力於產業升級的問題,但很多時候,求職者是否具備推動業界向前發展所需的專業能力,也是職涯規劃中極其重要的問題。
有這些能力,可以去的地方多著呢,何止聯發科技。
沒有留言:
張貼留言