We've moved! Visit
The Keyword
for all the latest stories about
life at Google
and our
student programs
.
Student Blog
Brought to you from your @GoogleStudents friends. From pre-university to PhD (and beyond), we got you.
Covering all your codebases: A conversation with a Software Engineer in Test
May 17, 2012
Today we’re featuring Sabrina Williams, a Software Engineer in Test who joined Google in August 2011. Software Engineers in Test undertake a broad range of challenges on a daily basis, designing and building intelligent systems that can explore various use cases and scenarios for distributed computing infrastructure. Read on to learn more about Sabrina’s path to Google and what she works on now that she’s here!
Tell us about yourself and how you got to Google.
I grew up in rural Prunedale, Calif. and went to Stanford where I double-majored in philosophy and computer science. After college I spent six years as a software engineer at HP, working primarily on printer drivers. I began focusing on testing my last two years there—reading books, looking up information and prototyping test tools in my own time. By the time I left, I’d started a project for an automated test framework that most of our lab used.
I applied for a software engineering role at Google four years ago and didn’t do well in my interviews. Thankfully, a Google recruiter called last year and set me up for software engineer (SWE) interviews again. After a day of talking about testing and mocking for every design question I answered, I was told that there were opportunities for me in SWE and SET. I ended up choosing the SET role after speaking with the SET hiring manager. He said two things that convinced me. First, SETs spend as much time coding as SWEs, and I wanted a role where I could write code. Second, the SETs job is to creatively solve testing problems, which sounded more interesting to me than writing features for a product. This seemed like a really unique and appealing opportunity, so I took it!
So what exactly do SETs do?
SETs are SWEs who are really into testing. We help SWEs design and refactor their code so that it is more testable. We work with test engineers (TEs) to figure out how to automate difficult test cases. We also write harnesses, frameworks and tools to make test automation possible. SETs tend to have the best understanding of how everything plays together (production code, manual tests, automated tests, tools, etc.) and we have to make that information accessible to everyone on the team.
What project do you work on?
I work on the
Google Cloud Print
team. Our goal is to make it possible to print anywhere from any device. You can use Google Cloud Print to connect home and work printers to the web so that you (and anyone you share your printers with) can access them from your phone, tablet, Chromebook, PC or any other supported web-connected device.
What advice would you give to aspiring SETs?
First, for computer science majors in general: if there’s any other field about which you are passionate, at least minor in it. CS is wonderfully chameleonic in that it can be applied to anything. So if, for example, you love art history, minor in art and you can write software to help restore images of old paintings.
For aspiring SETs, challenge yourself to write tests for all of the code you write for school. If you can get an internship where you have access to a real-world code base, study how that company approaches testing their code. If it’s well-tested, see how they did it. If it’s not well-tested, think about how you would test it. I don’t (personally) know of a CS program that has even a full course based on testing, so you’ll have to teach yourself. Start by looking up buzzwords like “unit test” and “test-driven development.” Look up the different types of tests (unit, integration, component, system, etc.). Find a code coverage tool (if a free/cheap one is available for your language of choice) and see how well you’re covering your code with your tests. Write a tool that will run all of your tests every time you build your code. If all of this sounds like fun...well...we need more people like you!
If you’re interested in applying for a Software Engineer in Test position, please apply for our general
Software Engineer
position, then indicate in your resume objective line that you’re interested in the SET role.
Posted by Jessica Safir, University Programs
Labels
A Day in the Life of a New Grad in Google Dublin
7
AdCamp
2
AdMob
11
Ambassador Program
14
APAC
7
Appy Trails
28
Back to School
4
Better Know a New Grad
1
Better Know an Intern
15
Better Know an Office
4
Black History Month
10
Caitlin Talks to an Engineer
9
Chrome Extensions
3
Chromebook
1
College Tips by Google
1
Community
14
Conferences
16
consortium
1
CSSI
5
Day in the Life
2
deSTEMber
1
Development Programs
1
Diary of a Business Associate Intern
1
Diary of a Summer Intern
41
Diary of a Summer Intern - Erika
9
Diary of a Summer Intern - Franklin
3
Diary of a Summer Intern - Jess
3
Diary of a Summer intern - Luke
3
Diary of a Summer Intern - Madelaine
4
Diary of a Summer Intern - Pablo
3
Diary of a Summer Intern - Rio
4
Diary of a Summer Intern 2012
18
Diary of an MBA Intern
2
Education
19
EMEA
47
Europe
8
Events
13
Exploring Design at Google
4
GHC15
6
Going Green
6
Gone Google
2
Google Code University
1
Google Code-in
1
Google Games
3
Google Japan
1
Google Lime Scholarship
1
Google on campus
2
Google Online Marketing Challenge
10
Google Science Fair
2
Google.org
1
Google+
6
Googlers
14
Googlers Beta
11
Grace Hopper
11
GradTips
9
Hangouts On Air
21
Inside ITRP
6
Intern Insights
31
Intern Program
72
Interns Making an Impact
7
Interviews
1
Jobs
5
just for fun
30
K-12 (Pre-university)
14
LATAM
3
Life at Google
17
Middle East
1
My Path to Google
45
My Summer at Google
15
My Summer at Google 2012
10
North America
4
Office Environment
4
Open Source
9
PhD
7
Products
94
Programs and Competitions
116
Recruiter Tips and Tricks
15
Rice Plus
4
Scholarships
56
Search
1
STEM
2
STEP
1
Student Tips
15
Students
13
Summer of Code
1
Teach Parents Tech
10
Tech Students
3
Tips and Tricks
27
Women in Engineering
21
Young Innovators
10
YouTube
3
Archive
2020
Jul
May
Mar
Feb
Jan
2019
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2018
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2017
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2016
Nov
Oct
Sep
Aug
Jul
Jun
Apr
Mar
Feb
Jan
2015
Dec
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2014
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2013
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2012
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2011
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2010
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2009
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
2008
Dec
Nov
Oct
Sep
Feed
Follow @GoogleStudents
Interested in opportunities and programs for students? Visit
google.com/students
.