乾貨!谷歌推薦的技術能力提升指南

釋懷發表於2015-05-15



學術學習的推薦

CS課程入門

電腦科學課程導論,介紹編碼的基本知識。

線上資源:Udacity – intro to CS courseCoursera – Computer Science 101

至少要會一種物件導向的程式語言:C ++、Java或Python

初級線上資源: Coursera – Learn to Program: The FundamentalsMIT Intro to Programming in Java,Google’s Python ClassCoursera – Introduction to PythonPython Open Source E-Book

中級線上資源: Udacity’s Design of Computer ProgramsCoursera – Learn to Program: Crafting Quality CodeCoursera – Programming LanguagesBrown University – Introduction to Programming Languages

瞭解其他的程式語言

注:新增到你的知識庫中——JavaScript、CSS & HTML、Ruby、PHP、C、Perl、shell script、Lisp和Scheme

線上資源: w3school.com – HTML TutorialCodecademyUdacity – Mobile Web DevelopmentUdacity – HTML5 Game Development

測試程式碼

注:學習如何捕捉bug,建立測試,破壞軟體

線上資源: Udacity – Software Testing MethodsUdacity – Software Debugging

培養邏輯推理和學習數學離散知識

線上資源: MIT Mathematics for Computer Science, Coursera – Introduction to Logic, Coursera – Linear and Discrete Optimization, Coursera – Probabilistic Graphical Models, Coursera – Game Theory

深刻理解演算法和資料結構

注:瞭解基本的資料型別(棧、佇列和包),排序演算法(快速排序、歸併排序、堆排序),資料結構(二叉搜尋樹、紅黑樹、雜湊表),和演算法的時間複雜度.

線上資源: MIT Introduction to Algorithms, Coursera Introduction to Algorithms Part 1 & Part 2List of AlgorithmsList of Data Structures, 書籍: The Algorithm Design Manual

深刻理解作業系統

線上資源:UC Berkeley Computer Science 162

學習UX設計

線上資源: Udacity – UX Design for Mobile Developers

學習人工智慧

線上資源: Stanford University - Introduction to RoboticsNatural Language ProcessingMachine Learning

學習如何構建編譯器

線上資源:Coursera – Compilers

瞭解密碼學

線上資源:Coursera – CryptographyUdacity – Applied Cryptography

瞭解並行程式設計

線上資源: Coursera – Heterogeneous Parallel Programming

嘗試課外專案

注:可以是建立和維護網站,構建伺服器,或打造機器人。

線上資源: Apache List of ProjectsGoogle Summer of CodeGoogle Developer Group

閱讀和理解來自於一個大型系統(程式碼庫)的程式碼,追蹤文件並除錯。

注:可以在GitHub上閱讀他人的程式碼,研究他們的專案。

線上資源:GitHubKiln

與其他程式設計師一起開發專案

注:這能有助於你提高團隊合作能力,同時還可以取長補短。

實踐演算法知識和編碼技能

注:通過類似於CodeJam和ACM國際大學生程式設計競賽的方式來實踐自己的演算法知識。

線上資源:CodeJamACM ICPC

成為助教

這有利於增強和鞏固自我的學科知識。
相關閱讀
評論(1)

相關文章