Google Hiring Team前段时间来我们学校时的一些介绍,当时他们使用PPT放的,他们没有把PPT放出来,PPT说的比下面的内容详细,具体规划了First Year, Second Year。不过,最后Google还是给我们发了个页面,内容差不多。
Source:
http://www.google.com/edu/tools-and-solutions/guide-for-technical-development/index.html=============================================================
Recommendations for Academic Learnings
Introduction to CS Course
Notes: Introduction to Computer Science Course that provides instructions on coding Online Resources: Udacity - intro to CS course, Coursera - Computer Science 101
Code in at least one object oriented programming language: C++, Java, or Python
Beginner Online Resources: Coursera - Learn to Program: The Fundamentals, MIT Intro to Programming in Java, Google's Python Class, Coursera - Introduction to Python, Python Open Source E-Book
Intermediate Online Resources: Udacity's Design of Computer Programs, Coursera - Learn to Program: Crafting Quality Code, Coursera - Programming Languages, Brown University - Introduction to Programming Languages
Learn other Programming Languages
Notes: Add to your repertoire - Java Script, CSS, HTML, Ruby, PHP, C, Perl, Shell. Lisp, Scheme.
Online Resources:
w3school.com - HTML Tutorial,
CodeAcademy.comTest Your Code
Notes: Learn how to catch bugs, create tests, and break your software
Online Resources: Udacity - Software Testing Methods, Udacity - Software Debugging
Develop logical reasoning and knowledge of discrete math
Online Resources: MIT Mathematics for Computer Science, Coursera - Introduction to Logic, Coursera - Linear and Discrete Optimization, Coursera - Probabilistic Graphical Models, Coursera - Game Theory
Develop strong understanding of Algorithms and Data Structures
Notes: Learn about fundamental data types (stack, queues, and bags), sorting algorithms (quicksort, mergesort, heapsort), and data structures (binary search trees, red-black trees, hash tables), Big O.
Online Resources: MIT Introduction to Algorithms, Coursera Introduction to Algorithms Part 1 & Part 2, List of Algorithms, List of Data Structures, Book: The Algorithm Design Manual
Develop a strong knowledge of operating systems
Online Resources: UC Berkeley Computer Science 162
Learn Artificial Intelligence Online Resources:
Stanford University - Introduction to Robotics, Natural Language Processing, Machine Learning
Learn how to build compilers
Online Resources: Coursera - Compilers
Learn cryptography
Online Resources: Coursera - Cryptography, Udacity - Applied Cryptography
Learn Parallel Programming
Online Resources: Coursera - Heterogeneous Parallel Programming