Iteration looks like circles until the system clicks.

One thing I keep relearning as a founder:

- Architecture is not something you finish.

I find myself going in circles.

Each loop is better than the last, yes.

But every circle triggers a new layer that has implications.

I guess I’m discovering what 'vibe architecting' really means.

A lot of decisions have been intuition-driven until now.

That’s the reality of being mostly a solo founder, at least for the initial phases.

And that’s exactly why guardrails matter, not later, now.

Lately, I’ve been struggling to make the system truly asynchronous.

Lambdas, queues, callbacks, long-running jobs, clean on a diagram.

Then last week I added a load balancer for security.

And suddenly, the timeouts became impossible to ignore.

The architecture didn’t break.

It just stopped lying.

That’s when another reality hit me:

- Some of the older queues now feel obsolete.

Why did I create them in the first place?

Because at the time, they were the right abstraction for the problems I had then.

You build for where you are and the problems you have, plus a few months ahead, not for a totally change-proof future.

But when you gain velocity, that future comes faster.

And when you think about enterprise pilots, things need to get more solid.

Previous implementations solved real constraints.

They unblocked forward motion.

But the system has evolved.

The assumptions have changed.

And now those queues are more friction than help.

This is the part people don’t talk about enough:

- Past architecture choices aren’t mistakes.

They’re timestamps.

They mark what you knew, what you needed, and what you were optimizing for at that moment.

So now I’m pruning.

Simplifying flows.

Collapsing layers.

Defining clear async standards so I don’t keep reopening the same circles.

I can’t keep carrying structures that no longer help the system move forward.

This is the real MVP for my customers: 'the experience'.

Not the diagram.

Not the code.

There’s no shortcut here.

No clever workaround.

There’s only one direction.

Forward.

"What Broke This Week: Adding security exposed architectural lies I could no longer ignore."

3 Lessons:

  • Architecture isn’t something you complete: It’s something you continuously expose to reality. Security layers, scale, and real usage don’t break systems; they reveal where assumptions were hiding.

  • Early abstractions aren’t wrong: They expire. What once unlocked velocity can later become friction, and pruning is a sign of progress, not reversal.

  • Guardrails matter most when decisions are intuitive: Solo, fast-moving systems need standards early so you don’t keep rediscovering the same problems in new forms.

Follow me on LinkedIn: Robert Figueras