What is Google STEP Internship Program? Who all can apply?
STEP (Student Training in Engineering Program), formerly known as Engineering Practicum, is a 10 to 12-week internship for first and second-year undergraduate students with a passion for computer science. The internship program focuses on providing development opportunities to students from historically underrepresented groups in tech through technical training and professional development. More details on it can be found on https://buildyourfuture.withgoogle.com/programs/step/ .
In India, this program focuses on girls in their first or second year of undergraduate studies. So, I’d encourage all first and second-year students to give it a shot, at the very least.
How did you stumble upon it?
Since it’s a relatively new program in India, I did not know about it till I was told by one of my college seniors in January last year (2019). She knew because one of our alumni, who’s currently working in Google, had stumbled upon this program.
What does the application process involve?
Since I applied through a referral, I had to submit my updated resume along with my transcripts for all semesters. These requirements are the same for applying through the link given above. After shortlisting of candidates based on resume and transcripts, there are typically two phone interview rounds, one for algorithm and another for coding. This is followed by a packet review by the Hiring Committee for final review of candidature.
Did you have to contact any official from Google after having submitted the application? Did any official from Google contact you?
I was contacted by an official from Google after submitting my form and being shortlisted for the interviews. She approached me to schedule the date and time of interviews according to my convenience. She was quite friendly, sweet and approachable. She took into consideration my requests for rescheduling of interviews as they fell between Class Tests and even got back to me later with feedback about my interviews.
What were the roadblocks you faced during the process?
One of the major roadblocks I faced during the process was that I hadn’t done any proper competitive coding prior and hadn’t prepared well for the interviews. As such, I had to put in all my efforts to do whatever I could in a mere fortnight, interspersed with CTs. I was extremely lucky that I had seniors who guided me all along the way, whom I could approach with whatever problems I was facing at ungodly hours of the day, and at inappropriate times, such as during Festember inductions.
The second hurdle was the long waiting process of about a month after the interviews. I had lost all hopes during that one month and had even forgotten that I’d applied, until I got a call one fine day that my application would be going forward to the Hiring Committee.
What does Google look for in applicants? Is there any specific criterion that stands out and appears to be the deciding factor for selection?
I think that, above all, Google looks for people who are ready to engage and possess critical problem-solving approach. I was very scared before my interviews, but my interviewers were very encouraging, and focused more on how I thought about the problem and how I approached it rather than the actual code. The actual coding came only after I had told them my approach to solving the current problem at hand. While solving a problem, some things to take care of are the input, output, edge cases and initial assumptions and it’s always good to clear them with the interviewer so that they know that the candidate is aware of these situations for any problem. An approach that worked for me was thinking about the problem out loud. This showcases to the interviewer whether you’re on the right track or not, and they usually give hints along the way to see the way you utilize them.
What do they look for in your resume?
It depends on who you are and what your resume focuses on. I had co-interns who were great in competitive coding and had good ranks in all major competitive websites like Codechef, Codeforces etc. What worked for me was that I had a wide array of projects that I had worked on, due to which I had interesting things to talk about when they asked me about them, and I had a clear-cut idea of what my role was in each project. Obviously a combination of both is great, but they know that the candidates are second year students, so it is fine if we have just started exploring something but have a good experience in at least one of these.
Elaborate on the sequence of events after the selection.
You first sign the Non-Disclosure Agreement of the company. Next, you discuss and decide the dates and the location of the internship, fill up various forms regarding your interests to get a project closer to those and send them other necessary documents. Google sends out a gift package received either before or on day one of the internship. One-way STEP internship differs from SWE internship is that there is no project matching stage after one gets an approval in interviews. In project matching stage, there is more intensive search to find a team and a project according to the candidate’s interests and it leads to a series of talks with team’s managers.
Please give us a brief description of your internship profile.
I was a part of the Google Docs team and had a co-intern working on the same project, as well as a mentor and a co-mentor who were extremely helpful and friendly from the very beginning. They helped us ease into the role from day one onwards. We enjoyed their company so much that we used to always go for lunch together, as well as dinner and breakfast sometimes.
What project were you a part of during the internship?
My project was to implement DOCX files to HTML files conversion under Google Docs team. We started out with first getting text from a docx and other auxiliary issues.
How was your internship experience? How was the company’s work culture?
My internship experience was an intensely satisfying journey. It was not an easy project, but at the same time, my mentors guided me at every step and my co-interns, Khushi, just made my life so much fun there. From not knowing anyone to going together for coffee breaks, we gelled well which helped us in working together. We both had our own strengths and weaknesses and what really helped us in delivering results was the fact that we learnt from each other and worked together as a team.
The work culture was extremely friendly, and everyone was quite open and receptive. There is no formal dress code, and everyone is called by their first name which really helps to remove the seniority difference. As I said, the whole team used to go for lunch and coffee together, and we even participated in a competition with them. As a send-off gift, we got to eat dinner at the Taj during my last week!
What are your biggest takeaways from your internship experience?
My biggest takeaway was the feedback that I got from my mentors about ways to improve my coding and overall thought process. From a better way to approaching problems, importance of naming variables correctly, to writing good comments and descriptions along with good code, I did a lot of learning. Most importantly, I loved the work culture attitude of working and playing hard.
Can you tell us how you prepared for the interview process?
Data Structures and Algorithms are the main concepts tested in these interviews. I brushed up on concepts taught in these subjects in college, as well as read from the book Cracking the Coding Interview. I found this book very insightful and helpful as it talks about how to approach an interview as well as how to think about problems. I lose interest easily, but the book’s lucid and interesting language surprisingly managed to keep me hooked. However, more importantly, it requires regular practice of coding questions. I personally found LeetCode suitable as the questions are framed in a way like those asked by companies in interviews, but a lot of people recommend Hackerrank as well to check basic concepts. An important thing to remember here is that competitive programming is a bit different from coding in an interview, as it is very important to write clean, legible and a beautiful code and not enough to just write working code which passes all edge cases. Your code mustn’t require comments to explain any part of it. It is also essential to communicate every thought with the interviewer while solving a problem, which isn’t a necessity while doing competitive programming.
Does Google offer stipend for the intern to cover expenses/pay for the work done?
Yes, Google offers stipend for the work and arranges accommodation and transport to the office during the duration of the intern.
There is a healthy chance for students to have overseen programs like these. How do you advise the students to be on the lookout for the same?
Setting up alerts on Google careers page is a good way to keep track of these opportunities. Also, asking seniors about the opportunities you are interested in can help you know the right time around which you can start looking for such intern or job postings.
Do you have plans to pursue further internships in Google and eventually get placed there as well? How are you planning to go about it?
I will be interning in Google India again this summer, but I do not know any further details about the internship for now. So far, most things have worked for me spontaneously. I will try to go with the flow and make the best use of all the opportunities that I can get.
Do you think this internship will be a significant advantage for people looking to get placed in Google off campus?
Of course. It gives an idea about how teams and projects work in companies like these and you pick up important soft skills along the way. For me, it was an eye-opener to the everyday life of an employee in a corporate job. Even if you do not plan to work in Google or plan to go for Higher Education, it is a great learning experience, a joyful one at that.
Any doubts and questions can be addressed to Ishani, who can be contacted at: https://www.linkedin.com/in/ishani-srivastava-a38056164