Honestly, most of the "real engineer" rhetoric is exhausting. Here's the thing: the people most obsessed with software craftsmanship, pattern orthodoxy, and layered complexity often create some of the most brittle, hostile, constantly mutating systems imaginable. You may be able to build abstractions, but if you're shipping stuff that users have to re-learn every quarter because someone needed to justify a promotion via another UI revamp or tech stack rewrite, you're not designing well. You're just changing loudly.
Also, stop gatekeeping AI tooling like it’s cheating. We’re not in a craft guild. The software landscape is full of shovelware and half-baked “best practices” that change more often than a JavaScript framework’s logo. I'm not here to honor the tradition of suffering through YAML hell or memorizing the 400 ways to configure a build pipeline. I’m here to make something work well, fast, and that includes leveraging AI like the power tool it is.
So yeah, you can keep polishing the turd pile of over-engineered “real” systems. The rest of us will be using AI to build, test, and ship faster than your weekly stand-up even finishes.
There was a time when "engineer" was a respected term reserved for a profession. Engineers were highly paid because they're brought onto projects that are high-complexity and high-value. Companies are hoping not to pay for engineering work more than once.
Some countries still treat the title "Engineer" as a protected title. Though I often now see it prefixed with professional or accredited or something so that people know they aren't an "engineer" they're an "Engineer".
I think most people who write software who think of the work they're doing as "real engineering" are like the draftsmen who draw up floor plans for local government approvals in civil engineering offices. If you're doing it over and over again, it's probably not engineering, it's probably just regular skilled Labor.