Is it CRUD all the way down? How to break out of it?

Posted by onefutui2e@reddit | ExperiencedDevs | View on Reddit | 128 comments

Hey all,

About 17 years total experience, started off as a self-taught goofball writing scripts to make my job easier to working at big tech and startups, picking up my masters along the way.

What really got me into tech/software was that I could solve a lot of business problems writing code and gain efficiencies. My love for it increased as I went back to school and worked with C and all its thorniness. I remember writing my own (shitty) web server for a class and load tested it on a potato computer, watching it serve tens of thousands of requests per second without fail. Or writing and managing my own (shitty) message broker.

Then over time, a lot of things changed. You no longer write and host your own web servers; you have AWS for that. Okay, fine, I thought. There's still a lot of value in managing your provisioned resources, trying to figure out what your tech stack looks like, etc.

A few years later, everything now is either server-less or otherwise managed. Why spin up your own Kafka running on ECS when you can just use MSK? Do you really want to manage your own message broker while AWS offers ManagedMQ now? Any time I need some sort of service to set up, my infrastructure guys would just be like, "Yeah, let's just use this managed service instead."

(On one hand, I get it. If managing a service ourselves takes up 10% of an engineer's time, then it might make sense to go with a managed service as your startup scales. On the other, it's a lot less fun and I have fewer opportunities to bolster my CV.)

At that point, my life was basically coming up with the architecture to manage distributed systems, but a lot of my day-to-day was relegated to writing CRUD APIs. And that was fine, too. You want me to pay me how much money to just write code that essentially delivers your request to a database and returns you some data? Sure!

But now with AI around, even writing CRUD is being supplanted (as much as people on this sub think otherwise, I've personally used it and it gets 80% there most of the time). And I'd be remiss if I didn't say that this has increased my anxiety and existential crisis. So my question to you all is, what now?

I was thinking maybe moving into technical product management or maybe looking into the various "forward deployed engineer" roles where I can leverage my technical skills while doing work that is unlikely to be replaced by AI. But I think back to what made me so interested in software engineering in the first place and I want to see what else is out there. So far, I've played around with running my own LLMs, writing my own agents, etc. But even that essentially is CRUD with a wrapper around it. Not to mention that space moves so quickly that with a job and a child, it's very difficult to keep up.

Curious to hear thoughts and ideas. Thanks in advance!