On Leaving MemSQL/SingleStore After 8 Years
When I joined MemSQL (now called SingleStore) as an intern back in July 2016, I never thought I'd end up working there for almost 8 years. It's been a truly wild ride, with lots of amazing stories along the way. As I come out of my last week at SingleStore, I have been wanting to reflect a bit on what I've learned and achieved along the way.
Yes, there's a section called "Wait, why am I leaving and what comes next?" at the end. π
Focusing on depth in the beginning of my career paid off
I had a lot of opportunities to change what I was working on (even inside MemSQL/SingleStore), but I was persuaded by my fantastic manager+mentor Carl to focus on depth first. This led to me spending the first 5-6 years of my career doing mostly full-stack web development, with roughly the same tech stack over time. A lot of times I had second thoughts and wondered if I should venture out and work on different things, but it definitely paid off to be focused on a vertical area of software engineering for so long.
The reason for this is that being focused allowed me to more easily hone in on the core skills of software engineering:
- Communication and Process
- Debugging
- Iteration
- Shipping Often
- Actually writing code and becoming productive on my IDEs, terminal and other software
Then, once I felt truly comfortable with one tech stack, it became much easier to broaden my horizons and work on different things (infrastructure, low-level systems, etc.).
Optimize for shipping fast and learning quickly
At every step of the way, one should optimize for delivering value quickly and trying things out, even if there's a large chance of failure. This is how we learn and grow quickly, not just as engineers but also as humans. I somewhat realized the importance of this when I started out, but seeing others apply this philosophy so successfully at SingleStore has motivated me to do the same. I will never forget this.
Working on cloud services is extremely enriching
I've previously written about working on self-managed software vs. working on cloud software, and also on the cool challenges faced by cloud database companies. Having had the opportunity to build a lot of different products, there's something special about working on a cloud managed service that's powering the databases of hundreds of companies across all three major cloud providers. And it gets especially interesting when you're making deployments and updates to the service multiple times a day, while growing the engineering team behind the service from 3 to 75+ people. Again, what a ride!
It's people all the way down
One of the most joyful things I had the opportunity of doing at SingleStore was bootstraping our presence in Portugal and helping grow the hub here to 40+ people. Of course, this allowed me to have a lot of impact to the business. But, what I'll always cherish the most are the people I've met along the way. Thirty years from now, I won't really remember what features we shipped together and which live incidents we debugged, but I'll absolutely be extremely fond of many of the folks I've met along the way. You all know who you are (in and out of Portugal), and I'm super thankful π«‘
I definitely did not realize nearly early enough how important networking is. In a way, the word networking itself was tainted for me from all the negative vibes I associated with it (I basically associated it with people dressed in suits not getting anything done). This was a huge mistake and I've been making sure to rectify it. People are everything and everything is people.
Wait, why am I leaving and what comes next?
Let's face it. I've basically spent my entire career at a single company. And this has corresponded to almost 1/3rd of my entire life:
After a lot of reflection and preparation, I have realized that I need a break to relax, as well as a change of pace in my career. I'll keep you posted on what's coming, don't worry βΊοΈ