While catching up with some friends in 2021, they nerd sniped me by talking about all the interesting scaling problems they were having at Clubhouse. I quickly found myself in a meeting with the Rohan, Clubhouse’s cofounder, discussing all the other novel challenges that such an ambitious product has. Before I knew it, I was on the infra team at Clubhouse.
I joined Clubhouse in June 2021 and have decided to leave in September 2022. This is a quick post about my work there.While at Clubhouse I mostly worked on:
- Improving scalability by building caches where needed, improving DB queries, and evaluating technologies to improve performance.
- Improving reliability by adding metrics and alerts, migrating tables from Postgres to DynamoDB. This was a massively successful project where I learnt a ton about data store performance.
- Adding static typing to the codebase with MyPy annotations. By getting to 100% we were able to quickly find and fix many potential issues. I also wrote a small script that used MyPy types to find places in the codebase where postgres queries where executed.
- Improving CI by speeding up and expanding tests. This was done (in part) by migrating from CodeBuild to Github actions.
- Rearchitecting and refactoring notifications code to help make experimentation easier. The notification code was very scalable, developed in the furnace of exponential growth. But, it was a bit difficult to change an improve. Adding tests and refactoring made it much easier run experiments that resulted in fewer but more impactful notifications.
All these projects were team efforts. Mostly I was learning on the job how to solve these problems, so I heavily relied on the mentorship of colleagues. Being able to jump on a call with an expert and chat to them about a problem is a massive perk I will miss.I am leaving Clubhouse at the beginning of September 2022.
2022 has been the worst year. My 2yo son was diagnosed with Type 1 Diabetes (T1D); My wife’s home country, Ukraine, was invaded by foreign military; COVID-19 finally made its presence endemic in New Zealand.
I am in a privileged position where I get to choose what I want to do. These events have altered my priorities significantly. So, I am going to spend more time with my family, more time managing and learning about T1D, and more time building and using skills to contribute to open source T1D projects like Nightscout, xDrip, and AndroidAPS (I have already started learning Android development). I am looking forward to see if I can contribute to the community we recently/reluctantly joined.Throughout my time at Clubhouse, everyone has been amazing and supportive. I want to especially thank the infra team, Luke and Jordan; my manager Mircea; my colleagues Moh, Michelle, RK and Bin; and the founders Paul and Rohan.
I wholeheartedly recommend working with these people if you can. You will be on a team of experts that are also wonderful people.