Dear folks at Basecamp,
I’m incredibly excited to apply for this position, Basecamp is one of the few companies I would consider for a career change, so I would like to tell you a bit about myself along these lines and explain why this is an extraordinaire opportunity for me and why I can be a great fit with your team.
My name is Fernando, I come originally from Madrid, Spain, and am currently living in Valencia. I studied a master’s degree in Computer Science and have 9 years of professional experience, where I specialized in Systems Engineering and all things infrastructure. I’ve spent some time in the past developing open source software, which helped me to give some talks around Europe. I’m currently studying an online master’s in Cities and Urbanism, mostly because I love the subject of urban planning and how cities are the most interesting systems that humans have ever created, but also because sometimes I get tired of tech and like to invest time on learning something different.
I hope my resume can speak well about my professional career and technical background, where you can find the path that led me to where I am these days. As a quick summary, I’m currently working as Infrastructure Lead at BeBanjo, a remote-only company that shares many similar values with Basecamp — in fact, it was featured in Signal v. Noise back in 2013, although many things have changed ever since! I’ve been working for almost 5 years here, and since 3 years ago my role has been primarily to lead the Infrastructure team, manage the systems and resources where our applications and data are hosted and running on, and plan the work based on the goals we want to achieve in the short, mid and long-term, reporting directly to the CEO.
To give you an idea of the stack I’m working on every day, and thus, where my expertise is mostly established lately, we’re AWS-based, deploying a big Rails monolith plus a few smaller components via good ol’ Capistrano to EC2 instances that are provisioned with Chef, spawning background asynchronous work with Sidekiq using ElastiCache Redis backends. Our data is stored in a Primary MySQL database running on RDS, and we have a couple of Replica used for ETL purposes. Our searches are based on a self-managed Elasticsearch cluster running on EC2, with in-house tooling on top for backup and restore operations. I work with Elasticsearch a lot, also as part of a ELK setup where we index all of our logs and visualize them with Kibana. I extensively use other AWS services for client integrations like SNS, SQS, or DynamoDB.
As an example of some of my recent work, there’s this big project I’ve been working on in the last year and a half about migrating all of our infrastructure to a VPC network, having automated the provisioning of all resources with Terraform, and upgrading gradually all EC2, RDS and ElastiCache resources to newer types, in order to leverage performance improvements with lower costs.
I’ve been carefully reading your job description, plus other things I’ve learned about your Ops team lately, and I am surprised by the many common points we share, such as the tech stack we use or the regular work we do on our day-to-day. However, I can see how you reached a more advanced state, with the introduction of application deployment through Kubernetes in EKS or the sharding and clustering of MySQL with Vitess. These are some of my greatest motivations to join your team: I feel familiar with your tech environment and think that I can contribute with my experience and knowledge, and be helpful from day one, but I also see many challenges and the possibility to grow as a professional.
The team I manage is small and humble, there’s only 2 of us doing permanent infrastructure work, and it’s hard to get many things done. I have all the autonomy and power of choice about the things I want to work on, plus big responsibility and all the trust. I appreciate this situation immensely, although I miss working in a bigger team, with nice and experienced folks around, where I can learn and find the ambition to get better, and while having fun at work. This is something I would expect if I’m joining Basecamp, even if that makes me the less experienced member of the team.
A bit more stuff about myself, you can expect me to do OK working remotely from the first day, as that’s my natural state since a couple of years ago. I will be nice to you via chat, call or however we speak, as I understand the importance of empathy and being kind to each other — and now more than ever! I like to take a proactive role in the company, so you might find me volunteering for helping on a hiring process, organizing an online event and whatnot. Last but not least, I’m a music freak and have a dog.
And now let me add one important note about diversity. I’m not sure how you’d see me in the US, but definitely in my country I’m a straight white guy and the tech industry is so full of us everywhere. I personally took part in many hiring processes as an interviewer in the past and understand the difficulty of improving diversity in tech, especially when you’re looking for Senior profiles. Since you’re hiring 3 people for the Ops team, I would be delighted to know that my profile was declined so people from underrepresented minorities could have this chance. Saying this is important to me, because I want to make clear that I’m interested in this position, but I still acknowledge the seriousness of the issue and the potential positive impact that a company like Basecamp can have in this subject.
Thanks for taking your time on reading this. I’d be very happy to read back from you and answer questions if you will, and if that’s not happening, I wish you the best of luck with this process. If you want to keep in touch, you can find me in fernando@hey.com, Twitter, or Github.
Best,
Fernando
Fernando Álvarez
November 18, 2021