Tim Reynolds

Software & Startups

Reading

A curated list of articles, tools, and references I regularly revisit and consider worth reading. Loosely organised for easy navigation (though better categorisation is still a work in progress). Shared here for anyone who might find these resources valuable.

Engineering

Building a web search engine from scratch in two months with 3 billion neural embeddings

This is a fascinating writeup of a project I'd love to do myself sometime, creating a search engine. I'm deeply impressed at the depth that Wilson Lin achieved in a two-month window and the insights he provides in the write-up.

The concept that we've progressed in how semantic context can be recognized, yet we've not evolved the modern search engine to utilize it, probably for commercial reasons, is an interesting observation too, and the use of neural embeddings to address this gap makes a lot of sense.

I took a lot away from this article and I'm sure I will end up reading it several times.

Building with GenAI

Building AI Products—Part I: Back-end Architecture (Phil Calçado)

Phil Calçado shares the technical journey of developing an AI-powered Chief of Staff tool that scaled to 10,000 users, ultimately leading to the creation of Outropy, a developer platform for building AI products. As expected, Phil brings solid engineering experience, principles, and patterns to the design of an agentic system. He outlines some of the paths and trade-offs taken in designing Outropy.

Malleable software in the age of LLMs (Geoffrey Litt)

Geoffrey Litt argues that AI won't just be chatbots—we'll use LLMs to instantly create custom tools we need. Instead of slow chat interfaces, we'll directly manipulate software while AI helps modify it on-demand. This "malleable software" future means everyday users can shape their digital tools without coding, moving beyond ChatGPT to something far more powerful.

On the same topic, Michael Dubakov outlines a timeline for how he sees malleable software replacing rigid vertical SaaS over the next 10 years. I share similar opinions on the topic but am more optimistic about the timelines. SaaS of the future will be highly customizable abstract software that allows users to configure increasingly tailored workflows.

What makes Claude Code so damn good (and how to recreate that magic in your agent)!?

If you're experimenting with agents or using LLMs in your product, take 10 minutes to read this analysis of Claude Code, you'll find one or two ideas to try in your own product. For those too impatient to open the link I've dropped the summary table of observations;

  • Control Loop
    • Keep one main loop (with max one branch) and one message history
    • Use a smaller model for all sorts of things. All. The. Frickin. Time.
  • Prompts
    • Use claude.md pattern to collaborate on and remember user preferences
    • Use special XML Tags, Markdown, and lots of examples
  • Tools
    • LLM search >>> RAG based search
    • How to design good tools? (High vs Low level tools)
    • Let your agent manage its own todo list
  • Steerability
    • Tone and style
    • "PLEASE THIS IS IMPORTANT" is unfortunately still state of the art
    • Write the algorithm, with heuristics and examples

Culture

My AI Skeptic Friends Are All Nuts

I always enjoy a highly quotable, pithy take, so it's no shock I return to this piece about the importance of LLMs and LLM-assisted workflows for engineers. Times are changing, and you shouldn't get left behind.

Software engineering with LLMs in 2025: reality check

A well-balanced take on how LLM-aided development is changing the industry as of mid-2025. It highlights the disconnect between CEO hype and day-to-day developer experience, which reportedly saves the average developer only 4 hours a week—around 10% of their work week.

The linked Martin Fowler article is also worth a quick read to see his take on the scale of change he's expecting.

If you want a more in-the-trenches perspective, I'd suggest Coding with LLMs in the summer of 2025 (an update), where Salvatore Sanfilippo outlines how he's all-in on LLMs for code review, exploratory prototyping, pair-design, and writing "part of the code under your clear specifications." For those pushing the "vibe coding" narrative, however, his experience aligns with my own:

In this historical moment, LLMs are good amplifiers and bad one-man-band workers.

But he amplifies the belief that working without an LLM no longer makes sense:

Tomorrow all this may change, but right now after daily experience writing code with LLMs I strongly believe the maximum quality of work is reached using the human+LLM equation.

I'm sure by the end of 2025 I'll be replacing this with an updated version showing a far larger number of hours saved—we're still riding the tip of the wave of engineering with LLMs.

React

I spent time this year catching up on React's evolution since 2015. The framework has changed significantly with Fiber, React Server Components, the React Compiler, and other features that reshape how we build UIs. While I've been using most of these for a while, I'd stopped considering how they actually work.

The best place to start is Build Your Own React by Rodrigo Pombo. It's a great tutorial that teaches you the fundamentals and how they're implemented in modern React.

To quickly understand how React works, A Cartoon Intro to Fiber by Lin Clark provides an excellent visual explanation.

I also got distracted by React Server Components in Parcel by Devon Govett, which led me to a number of posts worth reading by Dan on overreacted.io.

If you want to understand the compiler, no one has dissected the implementation in detail yet (it's on my longer list), but React Compiler Deep Dive by Jack Herrington will help you understand the impact it has on your application code.

Below are articles that should round out most people's understanding of how React works:

Management

Guided Autonomy: Empowering Teams To Act

My management philosophy has always been one of empowerment through autonomy but it's a balancing act between ensuring it's aligned to the strategy and not creating a toxic environment among peers. I find the framing of "Guided Autonomy" provided by Jim Kalbach a nice way to articulate the concept and much better than my "I'm here to ensure you don't throw yourself off a cliff" framing I've occasionally used.

The Management Skill Nobody Talks About (Matheus Lima)

There are numerous ways to mess up as an engineer, and the more senior you become, the bigger the blast radius. Once you're managing people, both the radius and the ways to mess up become truly notable.

I learned the importance of repair long before becoming a manager. As a staff+ engineer, the rules were the same: be accountable for your actions, learn how to correct your approach, and ensure stakeholders remain in your corner.

I remind myself of this regularly with the saying "trust is earned in drops and lost in buckets," which was one of the first things my new VP at Tractable said to the team.

While this was the first article from Matheus I found, I'd recommend new managers explore his management collection—or at least read The 6 Mistakes You're Going to Make as a New Manager.

Managing a team, especially for the first time, is challenging. I definitely made mistakes, but there's no truer test than these two questions:

  1. Is my team shipping?
  2. Are they happy?

If the answer is "yes" to both, don't worry—you're crushing it. 🎉

Product

Zero to One: Notes on Startups, or How to Build the Future

The notorious book by Peter Thiel and Blake Masters. A quick read that I find provides interesting framing for thinking about startups and products. Also good as an audiobook while travelling.