<rant>

y'know, I am sincerely trying, in good faith, to let my teams guide me in how best to intentionally leverage GenAI. I'm trying to use it in good faith myself. I really do reserve the right to be wrong about it.

It's just... the problem was never the ability of GenAI to produce code that works on a superficial level. The problem was always that GenAI would push engineering teams at companies yet further away from what they were building. Generations of compilers, interpreters, frameworks and ORMs have kept pushing engineering teams out there. Cloud infrastructure has pushed engineering teams out there. Giant data analytics platforms have pushed engineering teams out there.

Engineering teams need people who love learning about how things work, but those people often have a rough time in the industry. People who are passionate about software and systems engineering, who love learning how systems work, who love diving deep into niches of reality... those people have been getting hit in the head since they entered the work force.

They're essential, and they've had decades of this crap to learn from. History has taught them (us) that businesses are really, really good at opting in to bloated, obtuse, unmaintainable solutions if some sales monkey can convince leadership that they no longer need to hire smart people who speak a language they don't understand. And they (we) are used to dealing with the consequences. Every single experiences engineer has their war stories about it.

Speaking personally:

I had a partner who worked at a startup in Seattle. They were a novice programmer. I saw what happened when their employer tried to build a Ruby on Rails stack with only junior engineers out of college. It ended horribly.

I worked as a first hire on a clean-sweep purge of a .NET team that had forgotten how to program. The company was bloated and nobody was accountable for anything for years. Then one day they get a mandate to actually build a thing for a big new online initiative. Nobody knew what they're doing. Wrappers around wrappers around wrappers of copy-pasted stackoverflow code. The company hired a hard-ass director to reboot things because nothing was getting done. He mandated a total shift to Golang/Kubernetes over .Net/some managed Microsoft stack, and said "you'll prove you can do it or you're out". I was hired because I could. I was substantially younger than everybody, but asked to write architecture docs and establish design patterns and sit on hiring panels for all the new devs. Because I don't know, I was a nerd who learned how things work and gave a shit and had somehow picked this knowledge up. They fired 8/11 of the devs on that team, as well as the project managers and the dev manager. We grew a new team behind it that was 1/3 the size and moved immeasurably faster. I hate everything about how that whole story played out. I'm not proud of that chapter of my life. I resent in particular the leadership who allowed engineering fundamentals to erode over time because it wasn't their problem.

I've worked at companies that fled to the cloud from local infrastructure. They did it with this almost insane desire to stop paying people to solve complex infrastructure problems. Balls-out, fuck these nerds who actually know how hardware works, they're weird and we're sick of them, we're going to pay Amazon a billion dollars to never have to hire them again. And then they hired some (often quite competent!) devops folks to migrate everytrhing... those people did... things got wildly expensive... meanwhile businesses locked in to stupid technologies like DynamoDB and Lambda because some insufferable sales idiot connected with a CTO in a sweat-yurt... and et voila, here we are writing the proposals to unfuck our cloud migration and return to local infrastructure. Yay CapEx. Boo OpEx. Venture Capitol batteries possibly included. Just gross incompetence by a generation of LinkedIn leadership buffoons who don't know the first fucking thing about how computers work.

I've been there. You've been there. LLMs are one more way of being there. We feel it in our bones. We have noses and we can smell. Trust was lost long ago. This shit is old. And we're really tired of it.

And this time it's especially annoying because it's big and tied in with an economic bubble and companies laying people off and general major disgruntlement. It's a really bad vibe right now for a technology leader, and if you're running a company I hope you get it, at least a little bit.

I really give a shit about being a good leader in technology and I'm really, really frustrated right now because there an almost un-navigable divide between what I believe to be true (from my experience) and the narrative I'm expected to sell. That's a hard position to be in. But I (and my peers) try our best to occupy it with grace.

</rant>