If You Don’t Know the Problem, You’re Just Guessing

If You Don’t Know the Problem, You’re Just Guessing

You can’t solve what you don’t understand.

I’ve been in software development for over a decade. I’ve taught computer science for more than six years. And before that? I was a software engineering student trying to figure out how to build anything that actually worked.

Across all of it—learning, teaching, building—the biggest mistake I see over and over again is this:

Developers solving problems they don’t actually understand.

Not because they’re lazy. Not because they’re bad at coding.
But because no one ever stops to ask two simple questions:
What’s the problem?
And why is it a problem?


💡 Start with the What and the Why—Before the How

Here’s a simple (but common) scenario:

A project manager says:

“Add a new image to the registration page.”

So the developer adds it. Mission accomplished, right?

Maybe. But also—maybe not.

Why do they want the new image?

“Because people aren’t registering.”

Ah, okay. That’s helpful.
But… is the image really the problem?

Could it be:

The form is too long?

The value of registering isn’t clear?

The page looks sketchy or confusing?

If you don’t understand the real problem, the solution might be solving nothing.


🤖 We’re Not Just Order-Takers

Yes, sometimes your job is to build what you’re told.
And yes, sometimes the client is paying and “the customer is always right.”

But let’s be real:
They’re not paying you just to push pixels.
They’re paying for your expertise.

If they just needed someone to do what they say without thinking, they’d hire cheaper labor or AI.
You're here because you can ask better questions.


🧭 Ask This Every Time

“What problem are we trying to solve by doing this?”

That one sentence can change a whole project.

It signals:

You care about impact

You’re thinking critically

You’re not just here to tick boxes

Most clients will respect you for it.
Most managers will appreciate it.
And your work will be better because of it.


🛠 TL;DR

Ask what the actual problem is

Ask why it’s a problem

Then figure out the best way to solve it

If you skip to the “how” too fast, you’re just throwing solutions at symptoms.

You don’t need to be a senior developer to write great code.
But you do need to understand why the code needs to exist in the first place.

mullins.io
Building smarter, not just faster.

Nicholas Mullins

Nicholas Mullins

I am a father, husband, software developer, tech leader, teacher, gamer, and nerd. I like to share my thoughts and opinions,
Michigan