Joshua Phillips

Building AI infrastructure by hand is becoming untenable. So we built a better way.

by

I've been writing software for a while. I'm comfortable at every layer of the stack. When AI started becoming something you could actually ship into production applications, I did what most engineers do: I built it myself.

First project, not bad. Pick a model, call the API, handle the response. Clean enough. I understood exactly what was happening at every step.

Then the requirements got more complex. I needed multiple models in the same workflow. I needed a document parsing layer upstream of the LLM. I needed the output to land in a database instead of just getting returned to the client. Suddenly I was writing a lot of code that had nothing to do with the problem I was actually trying to solve. Glue code. Wiring. Infrastructure that existed purely to move data between components that were never designed to talk to each other.

I accepted that as the cost of doing business. This is just what building AI features looks like, I told myself.

Then the model landscape exploded.

Now I wasn't just wiring together components. I was making architecture decisions that could age badly in three months. Is this the right model for this use case? What happens when a better one ships? Do I abstract the model calls or couple them to the implementation? If I abstract them, how much overhead does that add? These questions were eating hours I didn't have.

And then agents entered the picture. Coordinating multiple AI capabilities in a single workflow, managing state, handling failures gracefully. I was spending more time on the orchestration layer than on the application logic. The infrastructure was becoming the product, which was exactly backwards.

I started looking for a better way to handle this.

What I wanted was simple in theory: a way to define AI workflows as structured, inspectable objects. Something where the model was a config value, not a hardcoded dependency. Something that lived inside my existing development environment instead of requiring me to context-switch into another tool. Something I could actually audit when things went wrong.

That's what inspired my team and me to build RocketRide.

We were facing this exact problem ourselves. Not hypothetically, in real projects, with real deadlines. The infrastructure overhead was becoming unsustainable and we couldn't find a tool that solved it the right way, so we built one.

RocketRide is an open source AI pipeline platform where pipelines are plain JSON files. Each stage of the workflow is a node: an LLM call, a document parser, an agent, a database write, a webhook. You connect them, configure them, and the runtime handles execution. When a better model ships, I update a config value. When requirements change, I swap a node. I don't touch the rest of the pipeline.

I now use it as the AI layer across everything I build, both projects I was already maintaining and anything new that involves AI. The difference in how much time I spend on infrastructure versus application logic is significant, and that gap is exactly what we designed it to close.

If you're still hand-rolling your AI integrations, I'm not here to tell you that's wrong. For simple use cases it still makes sense. But if your workflows are getting more complex and the infrastructure is starting to feel heavier than the product itself, it's worth taking a look at how you're structuring that layer.

Happy to talk through the architecture or how I've integrated it into existing projects if anyone's curious.

21 views

Add a comment

Replies

Be the first to comment