若以薪資報酬與公司硬體設備來衡量,谷歌(Google)可能是世界上最受歡迎的公司。谷歌給薪不手軟,即使不同的工作崗位存有極大差異,但工程師始終都是公司最重視的職務。根據美國求職網站Glassdoor.com的數據,一般而言,谷歌工程師的年薪都高於10萬美元,即便是軟體工程師實習生(Software Engineer Intern)的年薪也介於7-9萬美元之間;而高級軟體工程師(Senior Software Engineer)的年薪就超過15萬美元。
紐約財經與科技網站《商業內幕》10月31日報導,谷歌每年收到超過250萬封應徵信函,但最後只有4,000名幸運兒能夠脫穎而出。谷歌的一份教育訓練資料顯示,想成為谷歌的軟體工程師必須具備11項技能。這份文件上說,「擁有紮實的電腦科學基礎,是成為成功軟體工程師的重要因素。」
以下是谷歌理想的工程師人選所應具備的條件,在每項技能下,還有《商業內幕》推薦的網絡學習資源,供讀者參考。
1.精通電腦基本知識。
【學習網站】www.udacity.com、www.coursera.org
www.udacity.com(網站擷圖)
www.coursera.org(網站擷圖)
2.至少會撰寫一種面向對象的程式語言(Object-Oriented Programming Language,又稱物件導向程式設計語言),像是C++、JAVA或是Python等。
【學習網站】 www.udacity.com、ocw.mit.edu
ocw.mit.edu(網站擷圖)
3.懂得更多其他的程序設計語言,如:Java Script、CSS、Ruby或是HTML。
【學習網站】www.w3schools.com、www.codecademy.com
www.w3schools.com(網站擷圖)
www.codecademy.com(網站擷圖)
4.能夠測試自己撰寫的程序语言。谷歌希望新進人員能夠找出程序中錯誤(Bugs)、生成測試(Create Tests)並能突破自己寫的軟體(Break Your Software)。
【學習網站】www.udacity.com
5.具備抽象數學的知識,像是邏輯推理以及離散數學(Discrete Mathematics)。
【學習網站】ocw.mit.edu
6.了解演算法以及數據結構。谷歌希望的理想的候選人熟悉基礎據數類型(如:Stacks、Queues、Bags)以及排序演算法(Sorting Algorithm,如:quicksort、mergesort、heapsort)
【學習網站】ocw.mit.edu
7.清楚作業系統。
【學習網站】http://freevideolectures.com/University/UC-Berkeley/Computer-Science/Subject/Page1#
http://freevideolectures.com/University/UC-Berkeley(網站擷圖)
8.熟悉人工智慧(Artificial Intelligence)。
【學習網站】online.stanford.edu/courses
online.stanford.edu/courses(網站擷圖)
9.學習如何編寫電腦編譯器。軟體工程師必須學習如何編寫針對人類的高階語言,並將它系統地轉換為機器看得懂的低階程序。
【學習網站】www.coursera.org
10.知道如何編寫密碼。
【學習網站】www.coursera.org、www.udacity.com
11.要了解平行計算。
【學習網站】 http://parallel.illinois.edu/education/passionate-parallel-reu
http://parallel.illinois.edu/education/passionate-parallel-reu(網站擷圖)
此外,谷歌不僅看重以上的專業電腦技能,同時也強調一些個人的特質。