Skip to main content

Command Palette

Search for a command to run...

Stop Building, Start Solving

Updated
3 min read
Stop Building, Start Solving

In a startup, your most finite resource isn't money, it's time. And nothing wastes it faster than spending days building something that was never going to solve the actual problem.

There's a trap that almost every startup engineer falls into at some point. A problem surfaces. You look at it, recognize a pattern, and think: "Oh, I know what to do here." So you start building. You move fast, you feel productive and three days later, you ship something that technically works, but doesn't actually fix anything.

The assumption was wrong from the start. You just didn't stop long enough to check it.

A story that still stings.

We had a recurring issue: certain features were failing in production, semi-randomly, often enough to erode user trust. The obvious answer seemed clear. We didn't have enough test coverage. So we invested time setting up an E2E test suite. It wasn't trivial. We wrote scenarios, wired up the pipeline, and got it running.

The failures kept happening.

After digging deeper, I finally found the real issue. It wasn't a lack of tests. It was that the underlying code structure made it easy for humans to make mistakes. The architecture had implicit assumptions baked in, no guardrails, and places where a small misstep would silently propagate into a bug. People weren't being careless. The structure was setting them up to fail.

Once we restructured that part of the system, adding explicit contracts, removing ambiguous states, making the wrong path harder to take than the right one. The failures stopped. Not because we caught more bugs, but because the bugs stopped being introduced in the first place.

The E2E tests were a reasonable guess. But they were solving for a symptom, not the cause. We lost real time before we stopped and asked the harder question: what is actually broken here?

The real skill is finding what actually works

Before committing time to a solution, the question isn't "does this make sense?", it's "have I confirmed this actually solves the problem?" Those are very different questions.

In practice, this means:

  • Define the problem precisely before touching code. Vague problems produce misdirected solutions.

  • Validate your assumption cheaply first. A 30-minute spike or a quick test can save 3 days of wasted implementation.

  • Ask "will this actually fix it?" — not "does this look right?" Intuition is a starting point, not a verdict.

Startups don't fail because people weren't working hard enough. They often fail because people were working hard on the wrong things, convinced they were on the right track.

Problem-solving isn't about finding an answer that sounds good. It's about finding one that works and proving it before you bet your sprint on it.