Fields of study: Computer Science, Software Engineering, Mathematics, Physics
The Google Software Engineering Internship is a 12-14 week paid program designed for students pursuing degrees in Computer Science or related technical fields. Interns are embedded into engineering teams and work on critical projects such as Search, Cloud, AI, and Android. The program focuses on professional growth, offering mentorship from senior engineers, technical training, and exposure to large-scale distributed systems.
Benefits
Highly competitive monthly salary (varies by location, approx. $7,000-$10,000 USD/month in the US)
Relocation assistance and housing stipend
Free meals and snacks on campus
Access to Google's internal tools and codebase
Mentorship and networking events
Eligibility
Must be currently enrolled in a Bachelor's, Master's, or PhD program in Computer Science or related field
Must be available for a 12-14 week internship (typically May-August or June-September)
Experience with one or more general-purpose programming languages (Java, C++, Python, Go, etc.)
Experience in Unix/Linux environments and solid foundation in data structures and algorithms
Requirements
Updated Curriculum Vitae (CV) or Resume
Current Official or Unofficial Transcript
Coding Assessment (Snapshot or Online Challenge)
Technical Interviews (Whiteboard/Coding)
Required Documents
Resume/CV
Transcript
Cover Letter (Optional)
Programs of Study
Software Engineering Intern (BS/MS)
Software Engineering Intern (PhD)
STEP Internship (First/Second Year Students)
Site Reliability Engineering Intern
Application Process
Visit the Google Careers 'Students' page or the specific regional application link
Click 'Apply' and upload your Resume and Transcript (PDF preferred)
Complete the coding sample/snapshot if requested via email
Participate in technical phone/video interviews if shortlisted
How to Apply
Go to the Google Careers website and search for 'Software Engineering Intern'
Filter by your preferred location (e.g., USA, Canada, India)
Submit your application as early as possible as teams fill up on a rolling basis
Selection Process
Resume screening for technical coursework and projects
Online coding assessment (to test algorithmic thinking)
Two to three technical interviews (focusing on Data Structures, Algorithms, and System Design)
Host Matching (teams review your profile to find a fit)