My Journey from Working as a Fabric Weaver in Ethiopia to Becoming a Software Engineer at Uber in San Francisco

I was born in Addis Ababa, Ethiopia and was raised there with my five younger sisters. My father made traditional fabrics, weaving one thread at a time. Weaving in Ethiopia is a family business and every member of the family plays a role. My mother, my siblings, and I helped prepare the threads. In a weaving family, boys typically graduate from preparing threads to making fabrics around the age of 12.

My uncle encouraged my father to set me up with a weaving station once I turned 12, but my father refused to take me out of school. My uncles, who are weavers themselves, knew it was impossible to provide for a family of eight with just one member weaving.

For three years, my father worked hard and provided for us without complaining, but in the early 2000s, the market for fabric worsened as living costs rose. As the first born and only son, it was my responsibility to pick up the slack, so we considered having me start weaving when I was in 7th grade, at age 15.

When my school teachers learned that I was going to leave school and start weaving, they knew it would affect my education. They found an alternative way for me to bring additional income to my family without having to dropout of school by arranging for me to tutor other students from lower grades in mathematics and science. For the next three years, I tutored about eight students every day after school, and my wages provided the additional income my family needed to survive.

At the end of 10th grade, I won a scholarship to finish high school in Hong Kong at Li Po Chun United World College. This was the first time I left my home country, Ethiopia, and it was quite an experience. I was challenged by the rigor of the IB curriculum, underwent in culture shock and experienced homesickness. Despite these challenges, I thrived in my education. My love for science and mathematics got deeper and I learned to adapt to a new culture.

Pursuit of education

After graduating from high school, I received another scholarship, this time to come to the United States and pursue my bachelor’s degree at Colorado College, where I studied Physics and Mathematics. As I had before, I worked for 20 hours a week as a tutor and librarian, enabling me to provide financial support to my family back home. After completing my bachelor’s degree, I continued my education at the University of Colorado, Boulder by enrolling in a Ph.D. program where I first encountered programming and machine learning concepts. I found machine learning so fascinating that I turned to Coursera and other online resources to learn as much as a I could.

While I was a graduate student, I met my wife, Tsion, at a track and field event for blind athletes. We were both there to support a mutual friend participating in a 5k race. On that fateful day, we found we had much in common and started dating. A year latter, we were married.

In 2015, Galvanize, a data science bootcamp, was interviewing students for their first cohort in the Denver area. I wanted to participate in the bootcamp and started looking for weekend jobs to both support my wife and I while I continued to provide for my family back home.I found driving with Uber to be the perfect weekend job. I loved the flexible hours, which allowed me to attend the data science bootcamp Monday through Friday and earn a living during the weekend.

At the time, weekends were the best time for driving with Uber in the Denver area as the demand is higher during the weekend. By just driving during the weekend, I was able to make as much as I made as a graduate student research assistant while going through an immersive data science program. The program lasted three months and I drove with Uber for all the weekends during the program. Although at times difficult, I had learned to work hard and persevere from my father, who did exactly the same thing to allow me to get my education.

A week after completing the data science program, I got a job offer from a small ad tech company in the Denver area as a data scientist. My degree in mathematics and physics, coupled with my research experience and data science immersive program, made me a competitive candidate. Uber’s platform provided an opportunity for me to earn a living while I completed the data science immersion program.

Career at Uber

Fast forward three years, I now work at Uber as a software engineer. I joined Uber in late 2017. To be honest, I was apprehensive about joining Uber in the beginning but ultimately decided to take the plunge for several reasons. First, I personally benefited from the product when I drove on the platform, and I value the product. Second, I heard the news that Dara Khosrowshahi was taking over as CEO on the day I had my final interview at Uber. This gave me hope that the amazing product Uber has would benefit from great leadership. Finally, it is no secret that Uber has one of the best engineering teams in the world. I had been reading the Uber Eng Blog about the open source projects Uber Engineers produced as well as how they solved engineering challenges at Uber’s scale. I wanted to be a part of this dynamic team because I can learn a lot from my fellow engineers while engaging in intellectually fascinating problems.

At Uber, I get to build machine learning systems. Specifically, I work on our Marketplace Forecasting team where we produce holiday and events-aware forecasts for supply, demand, and other quantities, such as ETR (estimated time to next request) for drivers based on their location. ETR is one of the features in our new driver app and I am proud to have played a part in building it. Back when I was a driver on the platform, I had to rely on my experience or phone calls from fellow Uber drivers to know if I was driving in busy areas. With this new feature, drivers will know if they are at a busy area or not just by glancing at the driver app.

Similar to my family’s weaving business, ETR is a collaborative effort. Data scientists built a prototype machine learning model to accurately identify busy areas and in most cases to estimate how long a driver will wait before getting their next request. The engineers took the prototype and built the software system to train these models for all cities in the world and produce ETRs at scale, in real time. I had several roles in scaling ETR worldwide, including making the configurations needed for building the models, applying the models in sync, and automating several manual processes for a global, scalable launch.

When I am not working on ETR, I spend my time continuing to learn new machine learning techniques with my teammates. For example, I am part of Uber’s Machine Learning educational series, where we meet bi-weekly for one hour and discuss different machine learning topics or academic papers on AI, machine learning, and software engineering, deepening my machine learning knowledge and helping me grow as an engineer. Given the rapidly evolving nature of the field, we have to continually learn new technologies and programming languages to succeed in our jobs. For instance, while I learned Java during my freshman year of college, I had to refresh and expand on that knowledge to effectively contribute on my team.

A year after first joining, I can say that I love working at Uber for several reasons. I get to work on problems that are unique and interesting, so I am growing everyday. Being part of Uber also provides me a greater sense of purpose, since the product I am helping build is providing an opportunity to millions of drivers worldwide to earn a living, whether it is full-time or part-time. From my personal experience, I can tell first-hand that many drivers rely on Uber to support their family and earn a living while going to school. Now, as an Uber rider, when I get matched with a driver who is going to school, I make sure to share my story in the hopes that it may be a source of inspiration for them.

If working with Samuel on building solutions to better predict Uber’s marketplace using spatio-temporal forecasts appeals to you, apply for a role on Uber’s Marketplace Forecasting team!