January 10, 2022 in Personal
My career path has been anything but linear. I’ve tried a little bit of everything - in fact, the last few years of my career were aimed at accomplishing just that. It’s all been consistently technical, but this manifested in a wide range of different roles, ranging from operations to product. But now it’s time for a new challenge, and a more deliberate focus on becoming a better engineer.
I’ve been working as a full-time developer for most of my career, but most of this work has involved fairly high-level abstractions, and didn’t have a heavy emphasis on scale or performance. This often made me feel like I wasn’t in an ideal position to learn and reinforce some of the lower-level software concepts in which I’ve wanted to gain experience. In the absence of an explicit focus on such subjects in the day job, I sought out a few extracurricular activities to help fill these gaps:
However, to really become proficient at something, one often must invest more time than what’s possible through a casual side project. Nearing the end of 2021, I knew it was time to look for a change to align my day job with this new focus. Last week I started a new role as a Software Engineer on Cloudflare’s Traffic team.
The work I’m doing at Cloudflare is best summed up in one of our team’s job postings:
The Traffic team’s mission is to build software systems that improve the performance and reliability of our customers’ traffic: from each end user to their destination. The remit of the team is broad and we measure success by three key indicators: how successful end users are at reaching our network; how successful our network is in reaching their destinations; and finally, how well we accelerate traffic between the two in order to provide the best experience.
I work on internal services that make this possible, as well as the Argo Smart Routing product. The work that’s done by my team has a profound impact on both reliability and performance for customer traffic, like an average 35% decrease in latency, a 27% decrease in connection errors, and a 60% decrease in cache misses for traffic like HTTP/HTTPS but also an average 10% latency improvement for all generic IP traffic. Even just in the past two months, I’ve already seen a handful of customers post about these kinds of benefits.
The Cloudflare blog contains much more detail than I’m able to capture here, but in short this is possible due to a combination of Cloudflare’s scale (we have data centers in 250 cities around the world) and some smart software which together create a “virtual backbone” over the internet. This results in the ability to make real-time forwarding decisions based on performance and other important factors.
There are a bunch of reasons that I felt this opportunity was a good fit, but here a few that I feel are particularly worth sharing:
I don’t usually write too much about the day job, but this represents a significant and positive shift in focus for me, and I think this is important context to share for the posts to come. I’m sure that I’ll continue to write about the same concepts I’ve been exploring for the past few years, but now it will be driven by some of the lessons I’ll be learning in this new role.