Basecamp Research & Fidelity Programmer
This is the application letter I'm sending to Basecamp, speaking directly to the Research & Fidelity Programmer position.
Hi! 👋
Thanks for the challenge of being in this process. There are many reasons not to try this longshot, but I read somewhere that "everything is impossible before someone does it"; and you certainly have a lot of people working from various parts of the world... so here we go.
About me
My name is Darío Macchi, I’m 38 years old, from Uruguay. I have been married for 7 years and am the proud father of two little girls (6 yo and 3 yo). Beside my job in the software development industry, I’ve been a Software Engineer Professor at the same university where, at the age of 11, I decided that I wanted to study and get my degree. I will not repeat what is in my standard resume; instead, I will tell you some of my personal attributes and my way of thinking.
I don't believe in traditional resumes, so I prefer alternative ways of introducing myself. I think that showing everyone what I'm doing is a better way to make myself known and also, leads to quick (and sometimes deadly) honest feedback! So, this application is not the exception.
I don't like to follow trends or develop software aligned to fashion principles; I don't overuse great ideas/concepts/tools (e.g. operator overloading, factories, lambdas for everything, React.js where is not needed, Scrum as the new black and a very long etc.) to be fancy. Software is about people. Most of the time we are doing abstractions and modeling real processes that people actually follow everyday. So at the end of the day, we are serving people. I've been doing that for my teams, students and end users forever, and I believe in being trustable. To do that, you have to know what you're talking about, being capable of justify decisions beyond the "it's fancy... this is new tech... oh no, that's old school... everybody is using this".
I know Basecamp, your history (from the times of 37signals), I've worked with Turbolinks and Trix and in a moment I will jump to what I have to offer to your team.
What I do
I define myself as a curious, fast-learning guy. Just think about how my technology stack has changed/growed over my 20 years in the industry. I'm always on side projects: now with a requirements inspection tool for a low-code platform; before, porting my personal website from RoR to a portable, technology agnostic content manager in Node.js (this website and my standard resume generator); a note taking PoC with Trix to automatically link related content using a trie data structure; Clojure, Lisp, you name it. I know what this may look: “this guy didn't have the time to go deep in almost any of these technologies and only scratch the surface of them” and in a certain way that’s true. But also is true that HTML, vanilla Javascript and CSS were always there, and that is why I love, respect and prefer that triad over anything else.
When I was the architect (and lead developer) of a high traffic microservices solution (VIX), I chose that triad to be the core of it, following an architecture mostly like your “HTML over the wire”. Indeed, I had a PoC working with turbolinks for almost a month that was finally discarded toward a self-made smaller and simpler solution to fit our specific needs. We used intersection observers for image loading, embeds (lot of them) and infinite scrolling, Handlebars for server (and a bit of client) side rendering and a custom client-side router. From that project we built 2 frameworks/tools (Enhanced Article-JSON Parser and Traceability Logger) plus the current solution, that is extensible (as a framework) by design. We had a rollout of almost a year where we slowly replaced the existing solution.
Also, I'm a manager of one. If you don't believe me, see what's a regular work day for me:
- I put play on my personal time management tool on my cell phone. I like to work in chunks of 25 mins with 5-10 of rest between them (the old pomodoro).
- I use bullet journal for managing my everyday tasks (yes, with a pen, in a notebook). So, in the first pomodoro run I starts moving missing/unfinished tasks from the day before. Then add today's tasks and prioritize.
- As the day goes on, I mark finished tasks, add new ones or take side notes and sketch ideas. This journal let me keep track of my work, plan and reflect about them. Also, I'm always trying to follow my manifesto.
Why do I want this position?
In 2019 I decided not to commute anymore but I couldn't make it, so I want to try it now. Why? Well, I love my house. It has all I ever wanted and it was so hard to get, that now, I don't want to be 8 hours (plus 2 of commuting) away from it.
I consider this opportunity to be unique, mostly because your offering touches very important topics for me. Being completely honest with you, the most important is that I'll be working with web development stars in a high-profile company, from my home for a salary that let me ensure my family wellness.
Also (and not less important)... when reading about the position I felt that we have known each other for a long time, and that the description was written after talking together about how ideal companies should behave. I felt in my gut, confidence, happiness and a complete sense of tranquility.
What do I have to offer?
I can offer a well-proven structured way of dealing with problems, organizing them and working carefully in small steps towards solutions. I search for evidence before making assertions or taking important decisions (due to that thing of being trustable).
Visibility. I know you guys don't need more of that, but I'm always being active in social networks, trying to be accepted as a speaker in conferences (like my Scrum Zombies & Orcs teams speak) and letting others know about what I'm learning in my awesome everyday work life. I can even start to imagine how working at Basecamp would affect my life in this regard.
Good technical skills. I'm not the best, but I'm good enough to know that my missing skills are complemented by my deep love for this profession. But I'm unbeatable when my team needs me and I have to be at their height quickly (e.g. I learned 11 frontend new technologies -between frameworks, libraries and tools- in the last 6 months to help in a project that was on-fire).
Final thoughts
First of all, thanks for taking the time to read through this. I know you should have many letters to review, most of them saying the same things. So I will do a closing saying something that any of them can: I'm from Uruguay, the Silicon Valley of South America; the best version of me is in the morning, when I work drinking mate; I love my kids and my wife and they would be very happy finding me working at home back from school. Words always fail to describe beautiful things, so if this letter doesn't convince you, perhaps my promise to eat the best asado will 😉.
Regards.