Meet Uber’s Software Engineer Apprentices

One of the beautiful things about programming is how many ways there are to learn it. With the explosion of online courses, tutorials, videos, and bootcamps, learning to code is more popular and accessible than ever for aspiring software engineers.

With its Software Engineer Apprentice Program, Uber is an excellent landing pad for non-traditional engineers. Intended for developers who did not study undergraduate computer science, the program is a six-month introduction to industry-level software, complete with extended training and strong mentorship. Apprentices are typically self-taught programmers or coding bootcamp graduates with diverse backgrounds: teaching, game design, psychotherapy, and visual art are just a few of the fields represented by this year’s apprentice class.

So, what is it like to be a Software Engineer Apprentice at Uber? Developer Ginny Fahs spoke with her fellow apprentices about their paths to programming and their first few months as software engineers.

Syrie Bianco, Eats Order Experience

What were you doing before you learned to code?

I was in the 2014 corps of Teach For America, teaching 8th grade science in New Jersey. Grading was a really tedious part of teaching, so the first “program” I made was a platform that connected Google Sheets, Forms, and Docs. Students could use the platform to take district tests, then the platform would grade and aggregate the data afterwards. As a teacher, I witnessed the power of programming firsthand, and grew excited about attending a coding bootcamp.

And what was the bootcamp experience like?

Intense. It was the most mentally exhausting thing I think I’ve ever done. You spent 9-11 a.m. in lecture every day, and then pair programmed on projects that were designed to be too long to finish until 6 p.m. Then you would go home and learn brand new concepts to apply the next day.

What do you hope to get out of your apprenticeship?

I really wanted experience working with real-life, big-kid code. I’ve built little projects and front-end games, but I wanted to dig into code that others read and work with. Making something that works on its own is totally different than building something that has to play well with others’ work; real code won’t ever exist in a vacuum. So that’s what I want to build experience with while I’m here. I also love my coworkers, so hopefully I’ll take home some lifelong friends, too.

What have you worked on so far during your apprenticeship?

I am embedded on the Uber Eats Order Experience team, so I’m building a feature that tells eaters if they’ve ordered from a restaurant before and, if so, how many times. I’ve been surprised by how warm and welcoming (and brilliant) my coworkers have been—and by how much I appreciate my daily avocado toast.

Aron Cutler, Vehicle Solutions

Your previous career was totally different from tech. Why did you make the switch?

I worked as a psychotherapist doing neuropsychological assessment clinics in hospitals for many years. Over time, I started to dislike the ambiguity and formality of it all, and since I’d always been fascinated with math and technology, decided to make the leap and learn programming. I love how, as a software engineer, the opportunities for learning are endless.

What’s your experience at Uber been like?

I’m part of a team that implements innovative solutions for driver vehicle rentals. In just a month, I’ve had the chance to build features in three different languages and use dozens of internal and open source tools. The speed of learning here is off the charts because of the huge array of challenges we’re facing and technologies at our disposal. I’ve also loved leading weekly guided meditations with Uber’s mindfulness program and becoming a member of Uber Engineering’s resource group for women, LadyEng.

Justin Dizon, Driver Documents

You have a graphic design and illustration background. Why learn coding?

One day I stumbled upon a video about Augmentative and Alternative Communication (AAC) applications—apps that support people who have little or no ability to speak. I was amazed by how technology could improve someone’s life in such a fundamental way. It made me want to build tools that could transform people’s lives.

What have you done in your apprenticeship so far?

As a member of Uber’s Driver Documents team, I’m working on improving internal tools that upload and process documents for drivers. I’m really excited and grateful to have been given the opportunity to learn and grow as a developer here at Uber. The culture here is really supportive, and everyone I’ve met is so invested in their work.

What do you hope to get out of your apprenticeship?

By the end of my apprenticeship, I hope to be a better software engineer with a more clear understanding of how production code is constructed and maintained. I also hope to achieve wider insight into the tech industry as a whole and learn more about the programming community, being a developer, and other ways tech can help better people’s lives.

When you’re not coding, how do you spend your free time?

I love taking my son to museums or other culturally enriching activities, watching movies, and, like any good Bay Area sports fan, following the Warriors, the Raiders, the Sharks, and the A’s.

Brianna Forster, Driver Onboarding

You spent a number of years working in Japan. What were you up to there?

I had a job as a game designer at a game development studio in Tokyo. In this role, I came up with ideas for new storylines, wrote up spec documents, and sent them to engineers and artists so they could implement these ideas into the game. I started learning code on the side so that I could work more effectively with the engineers on my team. I got sucked in pretty quickly, and found myself wanting to learn more and more.

Tell me about your team at Uber.

The Driver Onboarding team is responsible for managing the onboarding funnel for new driver partners. As a less experienced engineer from a non-traditional background, I was worried about dragging my team down or feeling pressured to prove myself— but the people I work with have made it clear that I belong on the team since day one.

Kevin Mathews, Uber Eats Pricing

Tell me about your background.

Before pursuing software engineering, I studied fine arts with a focus in photography. I started my software development journey through web design courses as part of my major. I was inspired by my peers who utilized web and technology in their art pieces.

What was your bootcamp experience like?

I attended App Academy in the summer of 2016. Over the span of three months, I was studying code for 10-12 hours a day, 7 days a week. I learned a lot, and at the end of curriculum, I was able to create personal applications for my portfolio. It was one of the most rewarding experiences of my life.

What have you worked on at Uber so far?

I’m helping the Uber Eats Pricing team develop better incentives for delivery partners. I’m thankful for how kind and supportive everyone has been in my first weeks since joining the team!

And when you’re not at work?

I photograph, draw, paint, and dance.

Alicia Savelly, Driver Connection

Tell me about one of your earliest coding projects.

I got my degree in psychology and family studies and started working with children while exploring other career opportunities. I loved it, but knew I wanted my career trajectory to change, and coding is one of the areas I started exploring. One of my first projects was a Tetris-inspired video game. Creating something that others could use was super exciting; I knew I wanted to do more of it. Once that happened, learning how to code became a priority instead of a hobby.

Why did you apply to the apprenticeship program at Uber?

The apprenticeship program looked like an amazing opportunity to have mentorship opportunities at an awesome company. When I learned that Uber also wanted to attract talent from coding bootcamps, I knew that this was the kind of place I wanted to work at.

What do you work on at Uber?

I work on Uber’s Driver Connection team helping build out our driver profiles. As a back-end engineer, I code in Go. I’ve been really impressed with how many helpful and passionate people I’ve met—and it’s only been two months!

What do you hope to get out of your apprenticeship?

During my apprenticeship, I hope to learn a lot from the other engineers I work with. So far, it’s been fascinating to learn about how a company this size functions. I also want to advance my software engineering abilities, as well as create meaningful relationships with my colleagues.

Uber’s Software Engineer Apprentice program was created in 2017 by engineers Kurtis Nusbaum and Josh Clemm with the goal of empowering developers of diverse backgrounds to excel in their technical careers. If you are interested in becoming a Software Engineer Apprentice, let us know!

Ginny Fahs is an avid blogger and current Software Engineer Apprentice at Uber.