Technical Development Guide---for Google
Technical Development Guide
This guide provides tips and resources to help you develop your technical skills (academically and non-academically) through self-paced, hands-on learning.
This guide is intended for Computer Science students seeking an internship or university grad role at Google.
What this guide is for
- You can use this guide to determine which courses to take, but be sure stay on track with your courses required for your major to graduate.
- We encourage you to learn more outside of this guide. The more you know, the better!
- The online resources we’ve cited aren’t meant to replace courses available at your university, but they may help supplement your education or provide an introduction to a topic.
- The information and recommendations in this guide were gathered through our work with students and candidates in the field. It is a work-in-progress, a living document, so be sure to periodically check back for updates.
Note: Following the recommendations in the guide does not guarantee a job at Google.
How to use this guide
- The guide lists topics and resources in a rough progression, from possible places to begin if you have little or no technical skills, to resources for those with increasing skills, to ways to gain exposure in the Computer Sciences field.
- You can use any of the resources you want, in any order.
Recommendations and Resources
Take an “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:
Online resources for more experienced programmers:
|
|||
Learn other programming languages |
Add to your repertoire:
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:
|
|||
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 CodeJam 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:
|
|||
Technical Development Guide---for Google的更多相关文章
- Website Speed Optimization Guide for Google PageSpeed Rules
原链接地址:http://www.artzstudio.com/2016/07/website-speed-optimization-guide-for-google-pagespeed-rules/ ...
- 转:Oculus Unity Development Guide开发指南(2015-7-21更新)
http://forum.exceedu.com/forum/forum.php?mod=viewthread&tid=34175 Oculus Unity Development Guide ...
- Google coding Style Guide : Google 编码风格/代码风格 手册/指南
1 1 1 https://github.com/google/styleguide Google 编码风格/代码风格 手册/指南 Style guides for Google-originated ...
- Beginning Windows Azure Development Guide
目 录 一 初始化Windows Azure 二 云应用程序的编写. 2.1云应用程序的创建. 2.2一个简单的云应用程序. 2.3 托管云程序. 三 云程序的数据库操作. 3.1通过Cloud平台 ...
- Google Careers 程序员必修课
quote from : https://www.google.com/about/careers/students/guide-to-technical-development.html Techn ...
- The Google Test and Development Environment (持续更新)
最近Google Testing Blog上开始连载The Google Test and Development Environment(Google的测试和开发环境),因为blogspot被墙,我 ...
- What technical details should a programmer of a web application consider before making the site public?
What things should a programmer implementing the technical details of a web application consider bef ...
- Google Chrome开发者工具-移动仿真:触摸事件仿真
如果你在开发PAD/手机所用WEB版应用,需要在桌面审查页面元素.调试脚本,模拟移动设备尺寸.事件.位置等信息, 那么可以使用Chrome开发者工具(DevTools)提供的强大的移动仿真功能,支持主 ...
- google calendar
1. user guide on google https://developers.google.com/google-apps/calendar/instantiate 2. google app ...
随机推荐
- [20190130]删除tab$记录的恢复2.txt
[20190130]删除tab$记录的恢复2.txt --//前面链接写好了脚本,开始测试删除后的恢复.千万不要在生产系统做这样的测试!!--//参考链接:http://blog.itpub.net/ ...
- Navicat Premium 连接oracle ORA-01017:用户名/口令无效;登陆被拒绝
解决的方法就是将用户名改成system
- 重启Zabbix Server
重启zabbix server:systemctl restart zabbix-server #启动服务 systemctl start zabbix-server systemctl start ...
- 第10章 嵌入式Linux 的调试技术
10.1 打印内核调试信息:printk printk位函数运行在内核空间, printf函数运行在用户空间.也就是说,像Linux 驱动这样的Linux内核程序只能使用printk函数输出调试信息 ...
- 使用selenium时,使用从系统启动浏览器与通过自动化驱动方式启动浏览器控件ID不一样解决方法
最近遇到一个怪事,通过正常打开浏览器,按照正常的web登录然后点击进入系统流程,将各控件的ID识别成功,然后使用 python3+selenium写好脚本,高高兴兴的用脚本跑时老是提示找不到控件,然后 ...
- ZooKeeper Observers解决节点过多时写性能下降问题
ZooKeeper Observers Observers: Scaling ZooKeeper Without Hurting Write Performance How to use Observ ...
- wrk 压力测试 http benchmark POST接口
简单的 http 性能测试工具 wrk.git 一个简单的 http benchmark 工具, 能做很多基本的 http 性能测试. wrk 的一个很好的特性就是能用很少的线程压出很大的并发量. 原 ...
- 高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南
原文:http://my.oschina.net/wstone/blog/365010#OSC_h3_13 (WJW)高可用,完全分布式Hadoop集群HDFS和MapReduce安装配置指南 [X] ...
- VS code常用的几个插件
VScode是一个我最近才开始用的编辑器,在此列几个自己在用的插件,以备换机时的需要. auto close tagbeautify css/sass/scss/lessone dark themes ...
- 为什么react的组件要super(props)
https://segmentfault.com/q/1010000008340434