Growing up, Janani Narayanan aspired to be a neurosurgeon, but when she realized she couldn’t stand the sight of blood, that dream quickly faded away. Soon after, it was replaced by a passion for coding, which ultimately inspired her to become a software engineer.
“When I was in undergrad I took on coding challenges in ACM MIPT and SPOJ as a hobby and never looked back,” she says. “The practical applications of data structures and algorithms are part of a fascinating world to discover. “
After working for Amazon DynamoDB for four years, during which time he went from around 30 engineers to 200, Narayanan wanted to trade his job at one of the biggest tech companies in the world for another somewhere a bit more. small. That’s what brought her to Uber, where she is currently a senior software engineer.
“I was looking to become a relatively small B2C company in order to get more responsibility,” she says. “Also, I was spoiled by the tooling and infrastructure available at a behemoth and wanted to understand and try out open source technology in a company that didn’t have the same kind of resources as Amazon. Uber delivered on both fronts.
Here, Narayanan explains how she finds work-life balance as a new mom, what an engineering candidate at Uber can do to stand out, and the importance of finding mentors.
Besides wanting to work for a small business, what inspired you to interview at Uber?
In my mind, Uber was associated with black cars at that time and a friend of mine booked me an Uber to get me out of this mental block. I used the app for a month and realized that the transportation possibilities are endless.
What are you responsible for in your role?
I work in the area of fares and passenger pricing, a team responsible for pricing a trip in real time based on weather, traffic conditions, and events that may affect the length of the trip. The role involves working closely with ML engineers, helping them produce the models, measuring the impact of new models, and creating a platform to launch global pricing strategies on an ongoing basis. , without any disruption to the user experience. Our team had to adapt to COVID and find methodologies to keep prices affordable even when under-supplied.
What kinds of learning and development opportunities does Uber offer engineers?
Uber offers unlimited access to the O’Reilly learning platform, which offers courses and books ranging from programming languages to management to finance. I have personally benefited from a beginner’s understanding of machine learning from the vast collection of books available to use at our own pace. In addition to this, there are partnerships with Harvard Business School on developing soft skills and employees can enroll quarterly and complete defined assignments. Engineers are also strongly encouraged to attend conferences relevant to their field, and people generally share the lessons learned from the conferences with their respective teams, which is a win-win situation.
What do you love most about the engineering culture at Uber?
Uber practices bottom-up planning, where engineers at all levels can consistently come up with a new opportunity or a significant change in the way we do things. If there is a data-driven rationale for why we should invest in this effort, it is prioritized.
I formed two teams during my time at Uber and there is usually a lot of support around that from the leaders. Uber is very rambling in a good way. For example, we launched Tips in the app within a few months. There are usually calls to form teams of tigers to work on a problem, and engineers can jump on the opportunity regardless of their team and work on it for a few months to throw.
What’s the most exciting project you’ve worked on at Uber?
I had the opportunity to lead and work on an interesting Applied Machine Learning (ML) problem. My team specializes in building ML models that evaluate real-time travel. We have millions of predictions by market based on ML models that need to be deployed to production every week across the world, and our pipeline had a bunch of manual interventions to operationalize this end to end. The overall process took three days for each market in a successful iteration and required intensive on-call hours to debug issues with more stringent service level agreements (SLAs).
I reorganized the architecture to reduce the number of dependencies, standardize health management across regions and pricing strategies, automated management of repeatable outages, reported errors to stakeholders proactively and programmatically clear SLAs. This represents 60% of our global gross bookings and now adapts seamlessly to new markets and cuts production time to hours.
What can an engineer applying for a job at Uber do to stand out?
For each technological area developed and used by Uber (data, AI, ML platform, architecture redesign), we can find a multitude of information on our public blog. It would be very informative to read them and form an opinion on what could be done differently or better. When I interviewed at Uber, one thing that struck me was Uber’s inclination to use internal infrastructure. This led to an interesting discussion in the talks around the compromises being considered at that time.
What challenges did you encounter as a woman engineer and how did you overcome them?
There are times I found myself speaking in meetings. I usually take the person aside and show them what just happened. Most of the time, it was unconscious. Sometimes I have had allies who are in the same meeting help me break the interruption.
How has Uber helped you find a work-life balance as a new mom?
Uber has a phenomenal and fair 18-week parental leave policy for both parents. During the pandemic, Uber offered many flexible work policies, including mental wellness days and a modified work hours policy. Our nanny contracted COVID and for two weeks I was able to work flexible hours that my manager and I agreed to. These conversations are not frowned upon, but rather encouraged. It is a very supportive environment for parents to have a work-life balance and not feel constrained by fixed schedules or even places.
What skills and qualities have helped you be successful in your career?
Owning my career and having a plan has generally helped me. Every time I join a company, I make sure I have a plan of the skills I want to develop and exit criteria, whether it’s networking with entrepreneurial people, working in an early stage team where the majority of problems still need to be resolved, or building the muscles to start and build a new team from scratch.
When working with a team, it’s important to find ways to be helpful. In one of my teams, I was always on call, in the sense that whenever there was a high severity alert, I would jump on the call, listen to how the on-call engineer was solving the problem, and was helpful to him by doing any small task at hand. It helped me cut the scale-up time to six months and was a really easy way to become a subject matter expert.
Co-workers and relationships are more important than work, which means that if you’ve been useful to your team, the next best opportunity will come from your coworkers rather than from the current job. Almost 80% of new job opportunity emails I receive are from former colleagues.
What advice would you give to women wishing to pursue a career in engineering?
I cannot stress enough the importance of finding mentors inside and outside of your current job. Ultimately, mentoring is always a guidance and you need to take the initiative to act on the guidance if it resonates with you. For every dissenting voice, there are 10 more supporting voices and it’s a question of which we give the most attention and energy to.
Until the pandemic, I used to meet someone I don’t work with every month for lunch. These relationships have helped me expand my knowledge and identify new opportunities.