Skip to main content

The (digital) road from competitive programming to Google SRE

Welcome to the latest edition of “My Path to Google,” where we talk to Googlers, interns and alumni about how they got to Google, what their roles are like and even some tips on how to prepare for interviews.

Today’s post is all about Mohamed Yosri Ahmed, a Site Reliability Engineer at our Munich office. Yosri’s passion for coding competitions led him to Google -- and now he supports young programmers as a mentor in Google’s own series of coding competitions!

So first off, what is “competitive programming” and what are the competitions like?

In competitive programming, participants put their skills to the test as they work their way through a series of algorithmic puzzles. Competitions are timed, and oftentimes you’re working together with a group of teammates in order to solve difficult puzzles together. Competitive programming is really fun and challenges those who practice it to grow technically and personally.

 How did you first get involved with competitive programming?

 I was born and raised in Cairo, Egypt. I got my computer science bachelor’s degree from Ain Shams University, which is also when my journey with competitive programming (CP) began. Since then I’ve developed a passion for problem solving and finding solutions to complex challenges and riddles.

Yosri at the International Olympiad of Informatics 2019 in Baku, Azerbaijan. Yosri looks over an arena where participants in yellow and orange shirts sit at tables and work at laptops.

Yosri at the International Olympiad of Informatics 2019 in Baku, Azerbaijan.

What’s your role at Google?

 I am a Site Reliability Engineer at the Production Productivity Engineering team. We focus on helping Google rapidly launch reliable services through applying best practices. We get to engage with many teams working in many different areas; this is challenging yet super exciting.

I also help run the Google's Coding Competitions such as Code Jam and Kick Start.

What inspires you to log in every day?

At Google there are always new learning opportunities and the possibilities to grow are endless. Google really cares about its employees’ growth and happiness at work.

Also the impact of my team’s work and the products we build, that affects so many people's lives in many ways, makes me feel grateful and inspired to do more.

How did the recruitment process go for you?

After graduating from college, I got contacted by a Google recruiter following my performance in Code Jam that year. Relocation at that point was not easy for me so we had to stop the process. A couple of months later, I got contacted again by another Google recruiter to explore opportunities. By then, things were clear for me and we decided to move forward and start the interview process. I actually flew from the International Collegiate Programming Contest World Finals in Portugal to do my onsite interviews in France.

How did you join the Site Reliability Engineering team at Google?

After passing the interviews, I proceeded to the next step: software engineer team matching. My recruiter also asked me about my interest in Site Reliability Engineering (SRE) which I didn’t know much about at the time. A Googler SRE friend suggested I check out one of the free online books Google SREs wrote to share their best practices.

Yosri and three other new Googlers stand in front of a Google sign.

Yosri and three other new Googlers at Noogler Orientation in Zürich.

How did coding competitions prepare you for SRE at Google?

Competitive programming can help participants develop lots of skills that are useful for SRE, like dealing with ambiguity and being able to troubleshoot abstract ideas without necessarily being the expert. 

CP trains us to focus on targets and how to achieve them. The short time limits teaches us to appreciate every moment and to efficiently utilize the resources we have.

Another aspect of similarity is troubleshooting and testing at scale. Both are key skills and responsibilities for SRE in order to be confident about a system and to know why it may or may not work. With tight time constraints to solve different problems and penalties on wrong attempts, CPers develop their testing and troubleshooting skills.

Both CP communities and SRE thrive on communication and collaboration. SREs have huge diversity in their responsibilities and how they approach them. Cross team collaboration during incidents for a common mitigation goal is similar to a CP style where 3 teammates are trying to solve the same problem on a single PC. In this style, coordination of efforts is essential. 

In CP, team members may have different strengths in different algorithmic and data structures topics and they join their skills to solve more complex problems. Along the way, we learn to make use of our different skill sets in order to succeed together. 

Any other tips you’d like to share with aspiring Googlers?

The path to success is not unique. These paths may cross but they may never be the same for everyone. We should identify our skills and put them into practice to sharpen them. We should always keep on learning and aiming for a better future. 


by Daphne Karpel via The Keyword

Comments

Popular posts from this blog

certain keys on my keyboard dont work when "cold"

Hi guys, i have a Lenovo Y520-15IKBN (80WK) and certain keys on the keyboard don't work (e,g,h,8,9,Fn...) but only when the weather is cold. for example in the winter it used to work after certain amount of time when i first boot the laptop and stops working when i stop using it for a while, but now that the weather is hot it works just fine except for the first couple of minutes or when its colder. of course i do realise that it has nothing to do with the outside weather but with the temperature of the computer itself. can someone explain to me why this is happening and how it should be fixed as i cannot take it to the tech service until july even though it's still under warranty because i need it for school. ps: an external keyboard works fine. Submitted April 29, 2018 at 03:35PM by AMmej https://ift.tt/2KiQg05

Old PC with a Foxconn n15235 motherboard needs drivers! Help!!

So my Pc corrupted and I had to fresh install windows on it, but now its missing 3 drivers and one of them is for the Ethernet controller! I've tried searching everywhere for the windows 7 drivers but all I seem to find are some dodgey programs saying they will install it for me. Problem is without the ethernet driver I can't bloody connect to the internet. I've been using a USB to try get some drivers on there, but they just end up being useless programmes . I'm also a bit of a noob at these things, I don't understand where to find the names of things in my PC, I've opened it up but I don't understand whats significant and what isnt. If someone has the drivers and can teach me how to install them I'd be very appreciative! Submitted April 29, 2018 at 02:47PM by darrilsteady https://ift.tt/2r76xMZ