Husband. Father. Software engineer. Ubuntu Linux user.
I'm a husband, I'm a father, and I'm Catholic. I'm an Ubuntu Linux user, and I'm a staff software engineer at Strava. I've been at Strava more than five years and I continue to love working on an app I'm passionate about while solving interesting problems along the way!
Over the course of my career, I've worked for a variety of tech companies (Pariveda, SpotX, and Zen Planner), and I even taught high school math for a couple years as part of the Denver Teacher Residency. I have experience working on performance, scalability, feature development, systems architecture, and developer experience in a wide range of technologies including Linux, Ruby, PHP, Scala, Java, SQL, Redis, Kafka, Javascript, and Android. I enjoy solving diverse technical challenges, from fine-tuning database queries to improving user experience or architecting new systems that can handle our growing user base.
In my free time, I enjoy working on DIY tech projects, from 3D printing and electronics to home networking and Linux laptops. I write about these projects here on my blog, along with software development tutorials and technology reviews, to share what I learn along the way in hopes that others find it interesting and useful too!
I got pretty excited when Bolt.new announced the World’s Largest Hackathon. I saw not only an opportunity to build something cool, but also – and perhaps more importantly – an opportunity to gain experience building something with AI tools. A hackathon’s the perfect place to explore the capabilities of AI tools because it let me lean in to vibe coding experience. I used the AI for many more kinds of tasks that I normally would, and I let it take control of things much more than I normally would. As a result, I think I was able to discover and push the limits of AI in my own workflow much faster than I otherwise would have, so it was an excellent learning experience!
I’ve been noticing for a while that on my personal laptop, new terminal tabs/windows were very slow to start (more than a second). It bugged me a lot since I knew something seemed wrong, but I’d been putting off digging into the problem for a long time. A few days ago, I finally took some time to investigate! I’m glad I did, because I found some low hanging fruit that ended up saving more than two seconds on zsh (Oh-My-Zsh) init!