logoalt Hacker News

simonw • today at 4:27 PM • 2 replies • view on HN

If you don't understand how your system works, your ability to make good decisions about future work on that system quickly degrades.

I don't think you need to review every line of code, but you absolutely do need to be able to describe how the system works and its high level structure.

As is so often the case with coding agents, having experience as a tech lead or engineering manager really helps here. You are responsible for a large system that has been worked on by multiple different collaborator (both human and agentic). You need to be able to make smart, informed decisions about that system, and talk with credibility to other stakeholders about what it can and cannot do and sensible next steps for the project.


Replies

curt15 • today at 4:32 PM

What will the path to a tech lead look like when it's no longer paved by thousands of hours of experience internalizing code? How do future tech leads avoid becoming like people who never got comfortable with fractions because they offloaded all arithmetic to calculators from an early age?

➕ show 2 replies
jplusequalt • today at 4:41 PM

>I don't think you need to review every line of code, but you absolutely do need to be able to describe how the system works and its high level structure.

I just don't see how you can truly reason about a system without delving into code. Tests aren't enough, running the software isn't enough, high level system architecture isn't enough.

>As is so often the case with coding agents, having experience as a tech lead or engineering manager really helps here ... You need to be able to make smart, informed decisions about that system

In my experience, engineering managers are too detached from the system to accurately reason about the system. Tech leads on the other hand usually can given enough time, but they tend to defer judgement to senior ICs on the team who are more familiar with the code.

Point is: there's no way to have your cake and eat it to. You either read the fucking code and keep a mental model of how the system works in your head, or you have an overstated confidence in your ability to reason about the system (and this has been a problem well before LLMs).

➕ show 1 reply