Ask HN: Coding is a solved problem. What is left for experienced engineers?

I have come to the conclusion that coding is a solved problem. Most normal software building is now a closed-loop problem. Codex and similar agents can already take a clear task, write the code, test it, see what failed, fix it, and iterate.

A person who does not know how software works will still struggle. They may not know what to ask, what is wrong, or how to tell whether the result is good.

But for a decent engineer who has already built real systems, I think the situation is very different. They can move across domains, ask the right questions, inspect what the agent is doing, and keep pushing until the system works.

They may take more steps than a senior engineer who already knows that domain well, but I do not think that gap is very large anymore. The important part seems to be knowing what to ask, what to check, and what you are actually trying to build.

I have been an engineer for years. At this point, I do not see much value in sitting alone and building more projects just to prove that I can build software.

That has also changed how I look at the past eight months. I spent that time building, learning, and trying to get better. Looking back now, much of it feels like time spent getting better at a problem that has already been solved.

And so I have come to a harsher conclusion: I wasted a lot of that time. What I have done feels bad, and I do not see what is left for me to do in this direction.

Maybe I am completely wrong. If I am, please feel free to roast this argument. I would genuinely like to know where the reasoning breaks.

5 points | by gokuljs 4 hours ago

18 comments

  • raegis 31 minutes ago
    Storage and memory prices are so outrageous that I'm "discovering" multiple old hard drives in my basement that I will be using for backups soon. I'm lucky that my son asked for a "gaming" machine for Christmas in 2024, so now we have a spare desktop with a 9800X3D and 64GB of ECC RAM which I'm hoping will last forever.

    And this is a problem which we all share. Because prices are so outrageous, we have to do heavy computations with limited memory and storage while maintaining privacy. So there's a lot to do here with software, including creating easy to use and verify privacy-enforcing computing environments for specific purposes, and writing computational software which is more efficient so that we are not beholden to "cloud providers". Talk to folks in offices unrelated to tech. There is a lot of stuff you can be doing for them.

  • adrianwaj 2 hours ago
    "I have been an engineer for years. At this point, I do not see much value in sitting alone and building more projects just to prove that I can build software."

    There is one massive thing positive about being independent: your code stays unique to you. If any AI is training off you (especially by stealth,) then it is making your solutions commodities, right?

    I am building an RSS reader that I like a lot. But anyone that builds one after me, and especially if they use the AIs that I used, I presume will get there so much more quickly. If I have shared freely with the LLM, then from there it's open to anyone indirectly whether it is OSS or not. Also, the reader is an HTML page - as soon as it is public, anyone can get it.

    So the playing field is being leveled for software, it's worthwhile thinking about new uses for software. For example, ways to tip writers and solving the ever present "micropayments" conundrum. Things can atrophy sure unless you look for new problems, new frictions and ways to improve life. Local-first Fediverse is a huge opportunity and enabling safe whistle-blowing while minimizing noise. Enable bravery, but not too much.

  • scorpioxy 1 hour ago
    "Coding" has been a solved problem for a couple of decades now, in my opinion. If what you're after is producing a large amount of code while paying very little, that was always an option. The results were, as businesses who went down this route discovered, not satisfactory. Now LLMs can do this even cheaper and faster. But was this the problem? Is this the magic that was missing to move us forward?

    I don't know the future and can't say if you're wrong or right. But I do wonder what "more code, faster" is meant to address exactly.

    In my point of view, it depends how you describe your role. If you're a "coder" then yes, you can't compete with machines. I do have to tell you that we're in a bubble and probably in the shrinking phase of an economic cycle so it's all difficult now but you can't predict the future from this temporary phase.

  • flamboyant_ride 27 minutes ago
    Honestly, I don't know.

    But my belief is that experienced engineers would be needed for their judgement and ability to steer and verify the LLM output. This would be more valuable than the implementation specifics which LLMs are better at (in well bounded problems).

    Paradoxically, I don't think one develops these skills without deliberate practice (putting in the reps). So I don't think the time you spent learning is totally wasted.

  • zahlman 4 hours ago
    > I spent that time building, learning, and trying to get better. Looking back now, much of it feels like time spent getting better at a problem that has already been solved.

    > And so I have come to a harsher conclusion: I wasted a lot of that time. What I have done feels bad, and I do not see what is left for me to do in this direction.

    Unless you didn't actually build, learn and improve, how could it have been a waste?

    Do you really not value becoming a more capable person, in and of itself?

    • gokuljs 4 hours ago
      If you can do system design well, prompt effectively, and ask the right questions, I don’t see much point in going extremely deep into all of this anymore. I’ve learned a lot of new things, but now it often feels like I can just prompt the model and get the implementation in one shot.

      For problems with a closed feedback loop, I don’t think you need to spend nearly as much time learning every implementation detail. A person who never invested that time can often produce the same result with the right tools. That’s the part I’m struggling with.

      • zahlman 3 hours ago
        The interesting problems don't have a closed feedback loop. You don't know what the requirements are until you try something yourself and decide that isn't it.
        • gokuljs 3 hours ago
          Tell me at least one interesting problem that you have encountered. That is related to coding and software engineering
      • taurath 2 hours ago
        Idk in my experience that’s the mark of someone whos not worked on complex or critical systems, or is wowwed by a bunch of PoCs.
        • gokuljs 2 hours ago
          Tell me about this critical system you're talking about. I want to know.
          • gokuljs 53 minutes ago
            When a deeper question is asked, you dont have a proper answer
  • taf2 55 minutes ago
    Fun fact you can even ask codex what questions should I ask about this code because I seeing the following x,y,z (image 1), etc…
  • herbst 3 hours ago
    This sentiment is why more and more apps/websites and tools start looking the same, acting the same and being broken in the same corners.

    From what I can tell we ain't actually there yet. We will be sure, but at this point in time my human perspective and input is everything that keeps my stuff from going generic.

    • gokuljs 3 hours ago
      I feel that for a senior engineer, it’s already there. If you have enough scars, you’ll figure it out, get it done, and fix whatever breaks.
      • herbst 58 minutes ago
        Maintaining yes, but creating I yet need to see an example that doesn't shout "made with AI" on the first glance.

        And also for maintaining you'd still need a skilled engineer to avoid the AI taking stupid decisions.

        I know it's only a question of time tho

  • Oras 4 hours ago
    > The important part seems to be knowing what to ask, what to check, and what you are actually trying to build.

    1. Understanding user requirements/pain points is very important and many get it wrong.

    2. Doing the architecture of the system within the org env/cloud/infra is often wrong by LLMs (for now).

    3. Debugging when things go wrong. What to log, how to log it, and how to ensure not logging much or logging sensitive data.

    4. Guide junior engineers, so they are not just accepting what LLMs are spiting.

    • gokuljs 3 hours ago
      On point 1, it depends, and I think it is a UX issue. There might be a little bit of friction in nailing things down, but the coding part is 100% solved.

      On point 2, yes, again, there is a bit of friction. I would divide this into two cases based on what I have seen. Let’s say you don’t know coding and you are building a product for a decent number of users. Most people who don’t know coding get things wrong. I have seen that. But I have also observed that if they had asked better questions, much better questions, they would have gotten most things right.

      The other case is when you are dealing with a large enterprise. That is a different game altogether, but not everyone faces that kind of problem.

      Point 3 is completely solved. Most companies have integrated agents into the development cycle itself. If something goes wrong, you review it and merge it. The only bottleneck is when it is connected to external factors.

      Point 4: an environment with proper `SKILLS.md` and `AGENTS.md` files writes better code than most senior engineers . Trust me, I am not even lying here.

      • Oras 2 hours ago
        Skills and agents md files have better guidance than most senior engineers? Oh well, good for you then, especially with the “trust me” phrase
        • gokuljs 2 hours ago
          Prove me wrong. I’d be happy if you do. The only engineers I’ve seen who are extremely good tend to have 15 to 20 years of experience. The difference they bring is not really in the code. It’s in how aggressively they cut unnecessary complexity and how much more effective they are at system design.
  • defrost 3 hours ago
    Reducing fossil fuel usage, extracting CO2 from atmosphere, improving and expanding stored energy options (battery chemistry, geological hydrogen storage, thermal mass, etc).

    All decent goals for good engineers.

    On the data and interface side, build out better free teenage friendly accurate planetary dashboards showing mineral and energy resources, usage, trade, etc.

    • gokuljs 3 hours ago
      Prompt engineering is more than enough to build this. Not a hard problem
      • defrost 2 hours ago
        Cool - so, lunchtime tomorrow then?
  • platinumrad 4 hours ago
    Counterpoint: no it's not.
    • gokuljs 4 hours ago
      It is dude, I am not joking here.
  • evil-olive 3 hours ago
    > At this point, I do not see much value in sitting alone and building more projects just to prove that I can build software.

    did you see value in doing this, before LLMs? if so, why?

  • rl3 2 hours ago
    I agree with your reasoning that coding is a solved problem, or that it very soon will be.

    While that has profound implications for the profession, I don't think it kills it outright—rather, it radically shifts the nature of the job.

    Some have said that shift is analogous to leadership, creative direction.

    Eventually we'll see models that excel at architecture, owing to extensive training on human prompts—harvesting both judgement and creativity.

    Meanwhile with the underlying software infrastructure supporting it all, duplication of work is inevitable. On top of that, the feeling everything's cheap slop, nothing has meaning anymore.

    It certainly doesn't paint a rosy picture. Is the whole thing a race to the bottom? Maybe.

    So, here's my counterpoint:

    For most, craftsmanship will no longer live in code going forward. Instead, it will live somewhere else. Where? I'm not entirely sure, but I strongly suspect it will still be part of the profession.

  • cheevly 4 hours ago
    It’s profoundly more solved than most anyone realizes, including yourself. It will be very clear within the next 3 months.
    • gokuljs 4 hours ago
      Yeah, even three months is already too late. Back at 4.8, it was already a solved problem.
    • operatingthetan 3 hours ago
      There probably will be a step beyond "LLM writes code" though.
  • krishnas2020 3 hours ago
    you need to build a product mindset muscle ! coding IS a solved problem ! building a winning product and architecting it is NOT !! think deeply on above !!!
    • gokuljs 2 hours ago
      necessary not good enough
  • gokuljs 4 hours ago
    Finally, I have reached 2026
  • samoit 3 hours ago
    I think it is a mistake to code with AI. You are moving your brain to an external company (paid one) generating a enormous dependency.Now, you are an useless professional who depends on chatx,claudex, etc. Programming is much more that just generating code, takes years to be proficient. What is going to happen when a new generation of software engineers do not know real programming...?
    • gokuljs 3 hours ago
      Hard disagree on the “useless professional” part. I can still write code without ChatGPT or Codex. That’s not even an issue. Becoming proficient used to take years if you did it the right way; with AI, you can get into pretty good shape much faster.

      But define “proficient” here. What does that really mean in this context? A junior engineer, sure, you can tell they’re fucked for now, but for how long does that matter if the models keep getting better?

  • renezander030 35 minutes ago
    [dead]
  • renezander030 36 minutes ago
    [dead]