Ray's essay documents how he rebuilt his career not through resumes or recruiters — which were all closed to him because of his felony record — but through sustained OSS contributions, technical blog posts, and non-trivial PRs that maintainers noticed directly. His three-year climb from release to a staff-level offer rested entirely on public, timestamped work product rather than institutional credentials.
The editorial frames engineering as the inverse of most labor markets: commit history, bug reports, blog posts, and conference talks are all public, dated, and attributable. For candidates who can't pass a background check, this means the work itself can substitute for the institutional signals (degrees, references, clean records) that gatekeep nearly every other field.
Dozens of commenters described the same pattern: closed recruiter pipelines and silent ATS rejections, but offers materializing weeks after a maintainer noticed a substantive PR. Several hiring managers added that they had unknowingly hired people with records and remained unbothered once they saw the work, suggesting the formal funnel filters on signals largely uncorrelated with engineering ability.
On June 7, 2026, Gavin Ray published an essay titled "Building from Zero After Addiction, Prison, and a Felony" on his personal blog. By the next morning it sat at #1 on Hacker News with 620 points and a comment thread several hundred replies deep. The piece is autobiographical: years of opioid addiction, time served, a felony record that survives every background check, and the long climb back into working software engineering through open-source contributions, public technical writing, and PRs to projects whose maintainers had no idea about the rest.
The essay itself is not technical. What's technical is the conversation underneath it. The HN thread isn't a sympathy reel — it's a forensic accounting of how the modern engineering hiring funnel actually evaluates candidates when the standard signals are unavailable. Dozens of commenters surface the same pattern: recruiter pipelines closed, application-tracking systems silently filtering, but a maintainer DM-ing about a non-trivial PR — and an offer six weeks later. Several disclose their own records. Others describe hiring people they later learned had served time and being unbothered because they had already evaluated the work.
The specific path Ray describes is the one the comments validate: a personal blog with technical writeups, sustained contributions to a handful of OSS projects, and a public history of explaining what he was building and why. Three years from release to staff-level offer. No bootcamp. No referral from a previous employer (there wasn't one to refer him).
Software is the most receipts-friendly labor market in existence. Almost every other field demands you trust the resume — the credentials are issued by institutions and the work product is private. Engineering is the inverse: commit history is timestamped, attributable, and public; bug reports are forensic; blog posts are dated; conference talks are recorded. For a candidate who can't pass a background check, public work is the only credential that bypasses HR entirely and lands directly in the inbox of someone who can read it.
This cuts harder than the obvious "second chances are good" reading. The HN thread is full of senior engineers — staff, principal, hiring managers — describing pipelines that *systematically* underweight public-work signal even for candidates with no record at all. Background checks are nominally about trust, but they're really about variance reduction: the candidate with a clean form and a generic resume is easier to defend if something goes wrong than the candidate with a felony and a brilliant GitHub. The filter optimizes for legibility to HR, not for engineering signal.
A few specific patterns recur in the comments:
The recruiter wall. Application-tracking systems and external recruiters almost universally reject anyone who self-discloses a record at the screener stage. Multiple commenters describe getting hired only after the maintainer of a project they contributed to brought them in through a back channel, completely circumventing the recruiting pipeline.
The contractor on-ramp. Several engineers describe starting as paid contractors — where the bar for background checks is lower or nonexistent — and converting to FTE after 6–18 months of proven output. The contractor-to-FTE conversion is functioning as a parallel hiring system for everyone the primary system can't process.
The geography arbitrage. Remote-first companies, particularly EU-based ones with stricter limits on what employers can ask about criminal history, show up disproportionately as employers in these stories. "Ban the box" laws have second-order effects the HR industry hasn't fully metabolized yet.
The maintainer reference. A non-trivial PR to a respected project is, in practice, a stronger reference than three years at a no-name company. The maintainer has actually read the code. The previous employer almost certainly hasn't.
What's striking is how little of this is specific to people with records. The same channels that work for ex-felons work for career-changers, self-taught engineers without degrees, and anyone whose paper trail doesn't match what an ATS expects to see. Ray's essay is a load-bearing example of a more general principle: the receipts route around the gatekeepers.
If you're an IC, the actionable read is simple and well-worn: build in public. The compounding value isn't only the learning. It's optionality. A maintained blog and a handful of legible OSS contributions is a portable resume that doesn't care about your last manager's reference, your degree, your visa status, or what your last seven years looked like. The marginal hour spent writing up what you debugged this week is buying insurance against every kind of pipeline failure, not just the one Ray describes.
If you're a hiring manager, the question isn't whether your company should "hire felons" — it's whether your pipeline can read public-work signal at all. Most can't. Most ATSes have no field for "link to GitHub," let alone the ability to weight recent commit quality. Most recruiter screens optimize for resume keyword density. The candidates who write extensively in public, who maintain projects, who file detailed bug reports — they're harder to evaluate from a resume, so they get screened out alongside the candidates with actual problems. If your hiring system is rejecting Ray, it's rejecting a wider class of candidates whose only sin is being illegible to HR.
If you maintain an OSS project, you are — whether you intended to or not — running an audition stage for hiring pipelines you don't control. The reviews you do, the contributors you encourage, the PRs you take time to merge: these are entering the labor market as references. That's an unpaid responsibility worth being intentional about.
The trend lines all point toward public work mattering more, not less. Ban-the-box laws are expanding. The EU AI Act's restrictions on automated hiring decisions will force more human review of edge-case candidates. GitHub's resume-style profile pages, the rise of public technical writing as a hiring signal, and the proliferation of "show me the work" interview formats are all making the resume-and-background-check funnel less load-bearing. The institutional hiring infrastructure is slowly catching up to where the actual signal has been living for fifteen years. Ray's essay isn't a story about an exception. It's an early data point on the model that's replacing the old one.
Had similarly unorthodox path to tech, albeit without the drug addiction or prison.90s early internet/BBS punk rocker/computer nerd. Hated school angry.Dropped out to work as a bike messenger for 5 years before packing a bag and moving west randomly. Couldn't sit still. Rode freight t
My son Nicolas also followed a similar path. Sadly, he didn’t survive one of these ‘holes’ at 22. We shared a deep connection and had open, challenging conversations right up until he passed away, but it wasn’t enough... Can I be incredibly selfish and asked you something he might say to me had he b
Thank you for sharing your story! I wish you continued success and I also hope that one day someone will share with you about how YOUR story helped them do something similar, just like the article did for you.Also, Preston Thorpe (who Gavin mentions as inspiration) has an interesting story as well:
“ No part of the prose was machine-generated. You will not find machine-written prose on this blog. I consider it deeply disrespectful.”<3
Top 10 dev stories every morning at 8am UTC. AI-curated. Retro terminal HTML email.
> Working at Techtonic was the best possible early-career experience I think anyone could have had. They did contract development, a lot of which was greenfield Saas MVP launches, across various tech stacks. There was not a lot of time for mentorship so it a very "trial-by-fire" experie