| |
| ▲ | nujabe 6 hours ago | parent | next [-] | | > I work at a small startup How does a “small startup” end up with a multi million line “legacy” codebase? Something not mathing | | |
| ▲ | darkwater 6 hours ago | parent | next [-] | | > How does a “small startup” end up with a multi million line “legacy” codebase? Easy! The output of 6 months ago Opus! Which seemed so wonderful at the time. | | |
| ▲ | champagnepapi 5 hours ago | parent [-] | | This! I don't think folks understand how easy it is to go from greenfield to brownfield with these tools, esp if your organization is only valuing velocity. Meaning your doing full agentic development on large features, barely reviewing any code, and shipping without much refinement. It's insane, but this appears to be the status quo in SF startups. |
| |
| ▲ | extr 6 hours ago | parent | prev | next [-] | | Have you worked at many startups? | | |
| ▲ | Karrot_Kream 6 hours ago | parent | next [-] | | Something isn't clear about the size of your codebase here and the level of reliability your customers expect, as a reader of your comments. Clarity there will help. My observation has been: - Initial greenfield work by an LLM is fast and very effective with minimal or no human oversight. - Subsequent work ends up being over engineered and very verbose. Assumptions are made that aren't suited to the problem at hand (for example I find Fable is extremely regex happy where structured data would work much better from a readability perspective.) - Once code bloats beyond a certain point due to unguided LLM usage, complexity is high enough that only LLMs can operate on the codebase with any economical amount of time. - Rinse repeat and your code ends up unclear about any state that's not explicitly being tested and verified in QA loops For some of our products this has been fine, for others it's been problematic. An understanding of your size and reliability requirements will help make the conversation more productive. | | |
| ▲ | extr 6 hours ago | parent [-] | | > unguided LLM usage Why aren't you guiding your LLM usage? Is that what I said - to spam it and not guide anything? Or to have a careful workflow where you agree on design and maximize your human judgement/leverage? > any state that's not explicitly being tested and verified in QA loops As opposed to before, when engineers perfectly reasoned about code behavior from first principals and QA was unnecessary? | | |
| ▲ | Karrot_Kream 6 hours ago | parent | next [-] | | > Why aren't you guiding your LLM usage? Is that what I said - to spam it and not guide anything? Or to have a careful workflow where you agree on design and maximize your human judgement/leverage? You didn't say anything positively or negatively regarding this so I made an assumption that you were using the LLM relatively unguided (e.g. a bit of oversight, not the kind of thing that heavy code reviews used to involve pre-agents.) Feel free to add clarity on your actual usage loop. > As opposed to before, when engineers perfectly reasoned about code behavior from first principals and QA was unnecessary? In my experience, most engineers are quite good at reasoning about code behavior for non-QAed code paths. Obviously things fall through the cracks. But I've been in the ground floor of plenty of Big Techs in their early stages before agents and, yes, a lot of initial development had spotty test coverage and yet most of the engineers had good mental models of what was happening. It used to be a very valuable skill to wrap your head around a torrid piece of code with few or no tests but was nonetheless a core piece of your application. Conversely, agentic development can bring cognitive debt [1]. === This isn't a fight. We aren't sparring over what's right and wrong. I'm just curious how other people use agents in their work as someone who is also now in a startup that uses LLM agents heavily and has no limitations on spend. [1]: https://martinfowler.com/fragments/2026-02-09.html | | |
| ▲ | sbarre 5 hours ago | parent [-] | | > You didn't say anything positively or negatively regarding this so I made an assumption that you were using the LLM relatively unguided I feel like this statement betrays your lack of advanced experience coding with LLMs. OP's elaboration of the steps they are going through (planning, agreeing on plan, getting one LLM to draft execution plan, approving it, then executing with a separate LLM, then reviewing/testing) made it super obvious to me that they are guiding their LLMs quite considerably as part of their work. Anyone making blanket statements about LLMs producing garbage is just telling on themselves about not having proper SDLC practices in place. | | |
| ▲ | Karrot_Kream 4 hours ago | parent [-] | | Planning, agreeing on a plan, separating planning and implementation LLM, using separate review LLMs, these are all table stakes. This isn't "guidance" if you're getting paid to write software. If you think "unguided" means "I typed a prompt into claude code and waited yolo" I don't know what to say but, you have a very different idea of what professionals do than I do. I find for my own work that I need to read the diff the LLM produces then offer feedback on the diff in its own loop before I am satisfied, and this is after all the unattended QA steps through Codex Computer or Claude MCPs happen. Then auto reviewers come in and then reviewers come in. Of course, at our stage, we rarely have this luxury and it's only reserved for the very core of our codebase. This is still much less guidance than we used to do for code before agents became popular. Even at Series A companies, before agents, we used to socialize tech specs, get buy-in from multiple engineers, create test plans, etc etc. > Anyone making blanket statements about LLMs producing garbage is just telling on themselves about not having proper SDLC practices in place. > I feel like this statement betrays your lack of advanced experience coding with LLMs. Are we in school debate club? I don't know what's going on lol, I'm just curious how people are using LLMs! Is it just that irresistable to take a cheap shot at each other? | | |
| ▲ | sbarre 3 hours ago | parent | next [-] | | > Are we in school debate club? Not that I know of but that's the conclusion I drew from your statement. It's not a cheap shot unless you took it personally? I suppose I could have said "the fact that OP's explanation of how they work did not lead you to conclude they were in fact guiding their LLM usage quite a bit tells me that perhaps you have not been working with LLMs in any advanced capacity". For the SDLC comment I admit it was a broader statement (based on observing people generalizing that "LLMs produce bad outputs") and not specifically aimed at you, and I didn't make that clear, so my bad. | |
| ▲ | skinfaxi an hour ago | parent | prev | next [-] | | > If you think "unguided" means "I typed a prompt into claude code and waited yolo" I don't know what to say but, you have a very different idea of what professionals do than I do. What exactly does "unguided" mean to you, then? | |
| ▲ | extr 4 hours ago | parent | prev [-] | | > "unguided" means "I typed a prompt into claude code and waited yolo" Yes, this is literally what that means. |
|
|
| |
| ▲ | Foobar8568 5 hours ago | parent | prev [-] | | AI is an accelerate tool for any organizations, management thinks it'll solve their organization issue because it accelerates it. Most often, it accelerates toward a wall. Design is too expensive, we do agile.
QA too expensive, we fire all of them, and claim devops is the now, which allows us to fire the Ops team too, 100% ownership from deisng to ops on devs. One person with an agent can replace all these teams. Yeah mo profits. |
|
| |
| ▲ | nujabe 6 hours ago | parent | prev [-] | | No, but not relevant. What is the point of working at a startup if you’re dealing with millions of lines of legacy code ? Isn’t the whole point of startups to create & innovate with a clean slate and modern tools? | | |
| ▲ | extr 6 hours ago | parent | next [-] | | No, actually. The point is to build a profitable business. | | |
| ▲ | sarchertech 5 hours ago | parent | next [-] | | How long has your startup been around? I’ve worked at plenty of startups over the past 20 years. Including one that was still calling themselves a startup 10 years out. The org I work at now was a startup before my tech giant employer acquired them. We have a very bloated and very profitable 8 year old codebase that is barely 500k LOC. I’ve never seen a startup with a multi million line legacy codebase. | | |
| ▲ | dgellow 4 hours ago | parent [-] | | They may have forked something | | |
| ▲ | sarchertech 3 hours ago | parent [-] | | Definitely possible, but up thread they wrote: >”Have you worked at many startups?” In response to a question about a legacy codebase at a startup. That implies that they think whatever they are doing is common. And forking a multi million line codebase and heavily developing it isn’t common for startups. |
|
| |
| ▲ | fatata123 2 hours ago | parent | prev [-] | | [dead] |
| |
| ▲ | chris_money202 6 hours ago | parent | prev [-] | | I don't know if that's the whole point, but I agree with the sentiment, why would a startup be working in legacy code and where would that code come from if this is truly the start of something. OP might just be working at a small software company or for one that broke from a bigger one and is now "startup" like? |
|
| |
| ▲ | icedchai 4 hours ago | parent | prev [-] | | You'd be surprised. I met a guy last week who was proud to tell me he had vibe coded an almost 2 million line code base. The app did not sound that complicated, so I'm assuming it's full of copy-pasta flavored slop. |
| |
| ▲ | gamblor956 5 hours ago | parent | prev [-] | | "startup" and "legacy codebase" are diametrically opposed concepts. And if you're saying (based on your other comments) that a 6 month window is enough to create a legacy codebase...that indicates a serious lack of experience or understanding as to what a legacy codebase is, or why they exist. | | |
| ▲ | sbarre 5 hours ago | parent | next [-] | | Man, so many people in this thread just arguing pointless semantics, making weirdo absolutist (and incorrect) statements. Accept that other people may ascribe different meanings/interpretations to words than you, and that if your reading of their statement doesn't make sense to you, perhaps you are simply reading it wrong. Trying to hold someone else to your definition of words suits what purpose exactly? Are you just trying to "win" ? | | |
| ▲ | extr 3 hours ago | parent | next [-] | | Yes lol. Of all things people are getting on me for it's the number of LoC x Years In Business of this startup. I don't fucking know, I didn't start the company and I wasn't here for several of those industrious years. Looking now it looks like we have slightly fewer LoC than that, I was counting some of the generated stuff. But who cares? The point is any codebase over a few years old with lots of customers and a big surface area has lots of code, much of it "legacy" from the standpoint of a guy in 2026. | | | |
| ▲ | loose-cannon 4 hours ago | parent | prev | next [-] | | I agree with your larger point. Though I think it's pretty natural to wonder how the poster ended up with a multi million line codebase. | | |
| ▲ | sbarre 2 hours ago | parent [-] | | 2M lines of code is 15 people committing ~26k lines of code per year (~100 lines per working day) for 5 years. 15 people is a pretty small startup, what if this is a 50-person startup? Doesn't seem like that much to me, depending on what you're building and the size of your team. |
| |
| ▲ | rustystump 2 hours ago | parent | prev [-] | | This is an ultra cop out. There are standards in language that are not all “left means right for me so you cannot assume when i say right it is right and not left” This whole thread around loc is depressing. It speaks volumes of some peoples inexperience working on actual legacy code. Legacy code is not just age or size but that the technical foundation is dated in a fundamental way. A giant monolith running on a now defunk framework using a database only one guy in canada knows about. Case and point in my day job. The org that owns XMM development does not know how to recover a physical bench that is bricked because everyone who knew how has left. So now they just use simulators… Interestingly, AI figured out some of this pretty easily for me. But the org has the exact same AI as i do. At the same time another org is close to a year into a greenfield rewrite that has been developed via agentic swarms. Absolute trainwreck. AI doesnt make bad engineers good. Anyone who says they are doing 4 eng work likely would be without ai too. Those that claim otherwise, are the bad engineers. |
| |
| ▲ | nujabe 5 hours ago | parent | prev [-] | | exactly. Usually legacy code forms when people lose context and confidence in parts of the codebase due to staff turnover etc and ppl avoid touching or enhancing those parts for long periods. Six months is a short time to accrue that much tech debt, its enough time where most of the people who created that "legacy" are probably still around. As you said indicates bigger problems. | | |
|
|