Google Technical Development Guide
This guide helps you to develop your technical skills through self-paced, hands-on learning. This guide is meant for Computer Science students those who seeking an internship at Google.Note: Following the guide does not guarantee a job at Google.
Recommended Learnings
“Introduction to CS” course | Focus on basic coding instructions. Online resources: |
Learn to code in (at least) one object-oriented programming language (C++, Java®, Python®) | Online resources for beginning programmers:
|
Learn other programming languages | CSS & HTML Ruby® PHP® C® Perl® Shell® script Lisp® Scheme® Online resources: |
Test your code | Learn how to catch bugs, create tests, and break your software.
Online resources:
|
Develop logical reasoning and knowledge of discrete math | Online resources:
|
Develop a strong understanding of algorithms and data structures | Learn about fundamental data types (stack, queues, and bags), sorting algorithms (quicksort, mergesort, heapsort), data structures (binary search trees, red-black trees, hash tables), and Big O.
Online resources:
|
Develop a strong knowledge of operating systems | Online resources:
Computer Science 162, UC Berkeley, YouTube |
Learn artificial intelligence and machine learning | Online resources:
|
Learn Android development | Online resources:
|
Learn web development | Online resources:
Google Developer Training for Web, on Udacity |
Learn other developer skills | Online resources:
|
Learn cryptography | Online resources:
|
Work on projects outside of the classroom | Create and maintain a website, build your own server, or build a robot.
Online resources:
|
Work on a small piece of a large system (codebase), read and understand existing code, track down documentation, and debug | GitHub is a great way to read other people’s code or contribute to a project.
Online resources: |
Work on projects with other programmers | This will help you improve your ability to work well in a team and enable you to learn from others. |
Practice your algorithmic knowledge and coding skills | Practice your algorithmic knowledge through coding competitions like Code Jam or ACM’s International Collegiate Programming Contest.
Online resources:
|
Become a teaching assistant | Helping to teach other students will help enhance your knowledge of the subject matter. |
Gain internship experience in software engineering | Find Google’s internships in Engineering and Technology on our Students site.
Online resource to prepare to interview for software engineering positions, including for internships: |
Reference - https://techdevguide.withgoogle.com/
No comments:
Post a Comment