I have considerable experience in software engineering (with a focus on the web) and I'm currently interested in building friendlier developer tools. I also love to mentor people and build happier, loveable, successful teams.
Through my career I've tech led multiple projects that got shipped to billions of people at Meta (e.g.: https://techcrunch.com/2016/02/18/facebook-video-metrics/), and millions of people at other companies (e.g.: https://www.wired.com/2009/10/opera-unite-puts-the-web-server-in-your-web-browser/). I was an Engineering Manager for around a year at Meta, and can still wear that hat when needed, but that's not the type of role I'm looking for right now.
Along with the creator of LLDB (Greg Clayton) I created the first and only native debugging team at Meta supporting the whole company's needs. I built the infrastructure required to continuously ship an evergreen version of the debugger, created new debugging tools for developers, and contributed to LLDB by improving its performance. I also "hired" Walter Erquinigo (that currently works at the team I'm applying for) from Oculus to join my team. It was amazing working with him, and I wish I'll have that chance again! (if this looks like a shameless plug, it's because it is!)
While working on developer tools I've created new mechanisms to preview app changes in real time (https://aadsm.github.io/blog/2014-05-10/live-edit-in-montage-studio.html), and also refactoring tools to promote good coding practices and maintainable code (e.g.: https://aadsm.github.io/refact/).
I have created my own libraries (with millions of downloads) from the ground up (e.g.: https://www.npmjs.com/package/jschardet) and I also contribute to open-source projects (e.g.: codesandbox/codesandbox-client#749).
I like to think of myself as a problem solver that uses tech as a tool to achieve my goals. You won't see me promoting the latest framework or refactors without a good explanation of the added value to the product. Attention to detail and a good user experience is very important to me even if that means sacrificing feature count. I prefer "feature-less but usable" than "feature-rich but unusable".
I'm not picky when it comes to programming languages and I have a good track record of picking up new ones pretty quickly when needed. In the past 5 years I've worked on projects using: js, html, css, python, bash, java, C++, arm64, buck/bazel, cmake, ninja and rust (nb: I don't claim to be an expert on any of these).
The most recurring type of feedback I get are about my direct communication skills, friendliness, and my ability to work anywhere on the tech stack (regardless of past experience).
Dated 2/13/2024