Rhys Davis

Computer Science

I chose UNSW because I wanted to be amongst the best students and teachers for Engineering in Australia. I was really inspired by all the amazing projects students had gone on to create, and the businesses that had been started.

I loved my lectures, and they heavily inspired me to pursue side-projects of my own. One of those was co-founding the UNSW Game Developer Society with some peers who shared my passion for the art that is video games. It was exciting and rewarding to build a community of students from all different faculties at UNSW to come together and explore what game design takes.

I got involved in building Android apps in Java during my second year. After winning the O-Day app building competition, I gained a reputation as someone knew a thing or two about Android. I was approached by Student Services Australia to create an Android app to map universities, and later on I built apps for Revlon, Samsung and the NSW Government.

After graduation, I worked as an Android Engineer for about a year until I was recruited by Uber and moved to San Francisco. There, I was involved in scaling Uber’s Pool product around the globe. This meant getting creative with ways to make UberPool more efficient and easier for both riders and drivers. Each country and culture had different expectations for ridesharing, so it was a challenge to try and adapt the product to properly scale it out.

Because it was such a huge scale, the team was fast-paced and ideas were explored and tested extremely quickly. I learnt the importance of data backed decision-making at the product level to enable quick design and product iteration. It is satisfying to now see so many people using functions like “walk to the street corner to catch your UberPool” on a daily basis.

I’m currently a staff engineer at Discord, where I take on large and difficult problems with their mobile application. Most recently I led a year-long effort to migrate the app to React Native to better align with their iOS application and to make the engineering org more efficient. It is a challenging project as the problem domains are still relatively unexplored, so we’re facing many problems and roadblocks. Every day I’m challenged to explore more ways to make the Discord app into an industry-leading chat application.

Being a successful software engineer requires you to continue learning about the latest technologies and innovations in the field and working out ways to integrate those into your daily work. While almost all the technology that I work with today didn't exist when I was studying at UNSW, my degree gave me the foundations and skills to efficiently embrace new tech as it appears.

When I interview candidates for engineering roles, I look at how they learn and their knowledge of fundamentals rather than their experience with a specific language or framework, as engineers with the ability to adapt tend to ultimately be more successful in their role.

Digging past the surface of technology and getting into the bones of frameworks helps you understand how they work much faster than just practicing their use; something that was highly encouraged during my CSE courses.