At the time of writing (June 2025), the prevailing view in the software industry is that LLM-powered AI is either completely useless or will imminently destroy all software engineering jobs. As you might expect, the reality is somewhere in between. In this post, I’ll share my journey with LLM tooling, from reviewing an early, internal alpha of GitHub Copilot to my current daily usage of Cursor, ChatGPT, and the latest Copilot offerings. My perspective is that of a startup founder (of Workbr...| Mike McQuaid
In the last two years building Workbrew (a remote-first, enterprise Homebrew startup) I’ve hired 5 engineers (and a hybrid PM/EM). This has been my first time being a “hiring manager”. This post explains how I interview and why I do it how I do.| Mike McQuaid
I left GitHub after 10 years to cofound Raise.dev. After an early failed experiment building IoT developer tools, we pivoted and built Workbrew: an enterprise-friendly layer over Homebrew, a project I’ve maintained since 2009 and led since 2019. Two years in, we’ve raised VC funding, built a remote team, and have happy, paying customers. Here’s what I learned so far.| Mike McQuaid
This is a bit of a departure from my usual writing but it’s a topic that’s been on my mind for years. What finally pushed me over the edge was reading Michael Lewis’ “Going Infinite”; his telling of the rise and fall of FTX and CEO/founder, Sam Bankman-Fried (SBF). There seems to be a bit of drama around the book; many are accusing Lewis of being “duped” by SBF into considering SBF’s actions to be mistakes based on bumbling ignorance rather than nefarious intent.| Mike McQuaid
I have been in a fight with my abysmal lack of self-control since I started university with limitless computer access. Each time I uncover some new self-control technique, the advances in technology force me to wrestle harder.| Mike McQuaid
COVID-19 was many people’s first introduction to the working-from-home experience. I’ve been lucky enough to have been working from home exclusively since 2009 and at US-based companies (e.g. GitHub) since 2012. I’ve also been an EU-based open-source maintainer since 2007 and maintaining the globally-distributed Homebrew package manager since 2009. These experiences have helped me learn some tips on how to be more effective working remotely that I’d like to share with you:| Mike McQuaid
In 2020, due to the “fun” combination of COVID-19 and two young children at home, I wanted to see an (individual) therapist. At the time I was employed by GitHub, which had a program where I could get up to six sessions paid for by them. After five of these, I’d found some benefits but wanted to try a different approach with a therapist of my choice. Based on my experience finding a therapist, I’ve outlined how I (and several friends at this point) went about doing so.| Mike McQuaid
I’ve been a professional software engineer and maintaining open source software since 2007. My work on open source has been heavily informed by industry best practises and my work on proprietary software has been heavily informed by open source best practises. Without these books, I’d be a worse engineer on many dimensions. Some of them may feel antiquated but all are still full of relevant wisdom for every open source (and proprietary) software engineer today.| Mike McQuaid
I’m sporadically asked for financial advice related to personal finances, self-employment, and small business, so I wrote them down. I hope you find some of it useful. I would be surprised if you disagree with none of it. I’m based in Scotland, so these assume the UK financial/tax/employment system. Each list is in order of descending importance.| Mike McQuaid
This project was the best. Everything the company had done like this before ended up being a mess, full of stupid decisions, built by idiots. We weren’t going to make the same mistakes again; we knew better. We avoided the terrible legacy systems and built things better from scratch. We did things right the first time, avoiding the failures of previous, similar projects. We had a well-staffed team with a well-planned backlog. We would deliver something big and exciting that we know our cust...| Mike McQuaid
I’ve developed a bit of a reputation inside and outside work as being pretty good with “saying no” and setting boundaries. In this post, I will help you do so, too.| Mike McQuaid
I’m currently working on an internal GitHub project where, for a change, my estimations have been wildly off. Before this project, I’d had a good multi-year streak of never overshooting my estimates and consistently hitting deadlines. This overshoot, combined with some recent reading, has made me think about hidden complexities of software estimation and what I didn’t consider when making my estimates. These are in a rough order from “most obvious” to “least obvious”.| Mike McQuaid
A conversation I’ve had (too) many times in our industry: You: “I’m looking to hire a senior engineer. Know anyone good?” Me: “Oh great, I know some good people! How about $A?” You: “They won’t do. We need someone with at least $X years in $TECHNOLOGY. Me: “Why?” You: “They need to be able to get up to speed quickly.” Me: ☹️| Mike McQuaid
“Open Source Economics” and the “Open Source Economy” are regularly discussed in the context of how to improve open source software’s sustainability, contributor diversity and ecosystem quality. Too often, though, the use of the word “economics” brings incorrect assumptions about the problems to be solved.| Mike McQuaid
In 2020, GitHub promoted me from Senior to Staff Engineer. This title and role seems commonplace and well understood at some technology companies but unknown and unused at many others.| Mike McQuaid
I’ve been very lucky to have some great mentors and mentees in my time at GitHub. Through weekly 1:1s with @seejohnrun explaining to me what a staff engineer should (and should not) be doing I was able to get the role and (hopefully!) do a reasonable job at it. Currently, I’m lucky to have regular mentorship from @eileencodes who guides me on how to think about the most important work I could be doing and avoid pitfalls that I would not otherwise have seen.| Mike McQuaid
The first thing you need to accept is: your memory sucks. If you have tasks you want or need to do in life (for yourself or for others) chances are you can’t remember them all. That’s why organised people don’t rely on their own memory and instead have a system to track their commitments. In this post I’ll explain my system and why it is the way it is.| Mike McQuaid
Homebrew was the first open source project I’ve maintained where I’ve had to review and merge contributions from other users. Homebrew is also one of the most active community projects on GitHub with a consistently small team of maintainers (always under thirty in total, always under ten doing work every week). As a result I’ve had to figure out over the last twelve years how best to manage large numbers of contributions from users in pleasantly and efficiently for both maintainers and ...| Mike McQuaid
There’s a lot of discussion currently (I wonder why) about “remote working”. As someone who has been doing it for 11+ years at this point I’ve noticed that people mean pretty radically different things when they talk about “remote jobs”.| Mike McQuaid
I’ve been encouraged by a mentor to think about what my core (engineering) values are (in the context of being recently promoted to be a “staff engineer” and having my eyes on being a “principal engineer” one day). This felt like something that could be of wider interest so here we go:| Mike McQuaid
Many software projects that operate at scale want ways to be able to expose some features or test some releases of their software on a subset of their users before they are released to the majority. In Homebrew we have two ways of doing this: developer segmentation and feature flags (that I stole from GitHub).| Mike McQuaid
I have not been working as an engineer long enough to feel like an industry expert but I have noticed patterns in new engineers that seem to result in them being more or less successful. I’ve had some requests to share these in a post so I hope they are useful.| Mike McQuaid
More and more open source projects are seeking to get financial support from their users. In this post I’m going to talk about the approaches we’ve taken in Homebrew and their pros and cons.| Mike McQuaid
I became a father for the first time in 2017, took 3 months paternity leave alone with my eldest in 2018 (thanks to GitHub for 5 months paid paternity leave). I had another child two weeks ago so I’m on paternity leave (again) right now and expect to take more in 2020. This has given me time to reflect on how becoming a father has changed the way I do my paid (currently a “Senior Engineer” at GitHub) and unpaid (open source, currently primarily as the “Homebrew Project Leader”) work...| Mike McQuaid
I was recently interviewed as part of a research study into the work of maintaining open-source software. I asked if I could make the (lightly edited) transcript public and they agreed. This will be an interesting read for anyone interested in some of the deeper questions about maintaining a project like Homebrew for 10 years.| Mike McQuaid
I’ve worked on a few Ruby apps in my career at varying scales (Homebrew, AllTrails, GitHub, Workbrew) and there’s been a consistent theme: Ruby is great for moving fast (and breaking things).| Mike McQuaid
If you’re an open source maintainer lucky enough to have a significant number of contributors you need to learn to mentor efficiently. First timer issues are not the right good way to get people involved in your project nor mentoring individual first-time contributors. Instead, do things that help all of them.| Mike McQuaid
There have been discussions in the aftermath of the log4j vulnerability about whether or not open source is broken or sustainable, what we can do to improve the sustainability of the open source ecosystem moving forwards, and the entitlement of users and companies in expecting maintainers to fix their problems.| Mike McQuaid