Minimum qualifications:
- Pursuing a PhD program with a focus on subjects in software development or other technical related fields.
- Experience in Software Development and coding in one or more of the following: C/C , Java, or Python.
- Experience with data structures or algorithms gathered from inside or outside of school or work.
Preferred qualifications:
- Currently attending a degree program in the US and available to work full time for 12 weeks outside of university term time.
- In their penultimate academic year or returning to a degree program after completion of the internship.
- Research experience in Algorithms, Architecture, Artificial Intelligence, Compilers, Database, Data Mining, Distributed Systems, Machine Learning, Networking, or Systems.
- Programming experience in one or more of the following: C/C , C#, Java, JavaScript, Python Objective C, Go, or similar.
- Experience in computer science, with competencies in data structures, algorithms and software design.
- Ability to communicate in English fluently.
About the job
Join us for a unique 12-14 week paid internship that offers personal and professional development, an executive speaker series, and community-building. The Software Engineering Internship program will give you an opportunity to work on complex computer science solutions, develop scalable, distributed software systems, and also collaborate on multitudes of smaller projects that have universal appeal.
We offer a range of internships in either Software Engineering or Site-Reliability Engineering across North America, including the US and Canada. Our recruitment team will determine where you fit best based on your resume.
As a Software Engineering intern, you will work on a specific project critical to Google’s needs.
Software Engineering Intern:
As a key member of a versatile team, you will work on a specific project critical to Google’s needs. We need our engineers to be versatile, and enthusiastic in addressing problems as we continue to push technology forward. You will design, test, deploy, and maintain software solutions as you grow and evolve during your internship.
Site Reliability Intern:
Our engineers create, fix, extend, and scale the code to keep it working and to harden it against all the bad actors of the internet. We drive reliability and performance on a massive scale. You will work on software development projects to keep important business generating-critical systems up and running, from code-level troubleshooting of traffic anomalies to maintenance of our services, from monitoring and alerts to building automation infrastructure.
Google is and always will be an engineering company. We hire people with a broad set of technical skills who are ready to address some of technology’s greatest challenges and make an impact on millions, if not billions, of users. At Google, engineers not only revolutionize search, they routinely work on massive scalability and storage solutions, large-scale applications and entirely new platforms for developers around the world. From Google Ads to Chrome, Android to YouTube, Social to Local, Google engineers are changing the world one technological achievement after another.
The US base salary range for this full-time position is $106,000-$141,000. Our salary ranges are determined by role, level, and location. The range displayed on each job posting reflects the minimum and maximum target for new hire salaries for the position across all US locations. Within the range, individual pay is determined by work location and additional factors, including job-related skills, experience, and relevant education or training. Your recruiter can share more about the specific salary range for your preferred location during the hiring process. Please note that the compensation details listed in US role postings reflect the base salary only, and do not include bonus, equity, or benefits. Learn more about benefits at Google .
Responsibilities
- Create and support a productive and innovative team including working with peers, managers, and teams.
- Develop scripts to automate routine tasks.
- Analyze information and evaluate results to choose the best solution to effectively solve challenges.
- Apply knowledge gained in computer science courses to real world challenges.