Back in 2013, I was working on a coding problem and got stuck on it for a day.

I had been staring at the code for hours, trying different things, getting nowhere, and getting more attached to the snippet.

Finally, I sent it to a colleague and asked for help.

I expected him to look at the code and tell me what was wrong with it.

Instead, he asked me one question.

What are you trying to solve?

That question changed my thinking in a big way.

Because suddenly, the code itself stopped being the center of the conversation.

The real issue was not whether that particular snippet was correct. The real issue was whether I was even solving the right problem in the right way, with the right context in mind.

That, to me, is the beginning of Enterprise Thinking.


So what is Enterprise Thinking?

Enterprise Thinking is the habit of stepping back from the immediate task, request, or solution and looking at the larger picture.

What problem are we really trying to solve? Who does it affect? What constraints matter? What tradeoffs are we making? What happens downstream because of this decision?

It is a way of connecting local decisions to enterprise-level impact.

Without that, it is very easy to become excellent at solving the wrong problem.

That is the trap. The closer you are to the task, the easier it is to confuse activity with progress.

You can optimize the code, improve the process, speed up the delivery, and still miss the bigger point entirely.


A simple framework I like

A practical way to explain Enterprise Thinking is through four connected dimensions.


1. Strategizing

This is where the thinking starts.

What are we actually trying to achieve? What matters most? What problem is worth solving? What are the business outcomes, priorities, and constraints we are optimizing for?

Strategizing is important because execution can become very expensive very quickly.

If the target is fuzzy, the work beneath it usually becomes noisy.

This is where Enterprise Thinking forces a better question before a faster answer.

I ran into this building Moments for Moleculist. The first idea was simple — a note, a photo, a mood. But before writing any code I stopped and asked: what are we actually trying to solve? The answer was not "add a journal." It was — how do memories connect to everything else already in the app? That one question changed what Moments needed to be entirely.


2. Performing

Once we understand the intent, we still have to make something happen.

What capabilities do we need? Which teams are involved? What processes, systems, data, and execution choices will actually move this from idea into reality?

This is the part people often treat as the whole thing.

It matters. Just not on its own. performing without strategizing is motion without direction.

Enterprise Thinking keeps execution grounded in purpose instead of just urgency.

With Moments, once the target was clear, execution mapped into nine phases. Phase 1 was just the data model — no UI, just entities and relationships synced to CloudKit. Each later phase built on that foundation. Every execution choice — photo storage pattern, three-photo limit, freeform location instead of GPS — came from what we were actually building, not what was technically possible.


3. Forecasting

This is the part where we ask: if we do this, what happens next?

What dependencies show up? What second-order effects do we create? What risks are we introducing? What future scenarios should we think through before we commit?

A lot of enterprise decisions go sideways not because the immediate action was wrong, but because nobody thought carefully enough about what it would set in motion afterwards.

Forecasting is not about predicting everything. It is about refusing to think only one step ahead.

Enterprise Thinking builds that question in before the work starts, not after the decision is already in motion.

With Moments, the best forecasting decision cost almost nothing. In Phase 1, I added inverse relationships to all eight existing molecules — even though none of that UI would exist until Phase 4. One note in the planning doc: costs nothing to leave empty, avoids future migrations. The flip side: "On This Day" was a natural fit but touched the shared notification budget across the whole app. It got deferred until that strategy was clearer.


4. Learning

Then comes the part many teams talk about but do not really practice.

What did we learn from the execution? What did adoption tell us? What failed? What surprised us? What worked better than expected?

And more importantly: how does that change what we do next?

If learning does not feed back into future decisions, every initiative starts from scratch and every mistake gets a second life.

Enterprise Thinking treats learning as part of the system, not as an afterthought.

The original Moments idea — a note, a photo, a mood — would have shipped. But it would have sat next to everything else in Moleculist without connecting to it. The planning process itself was the learning. Asking what we were actually solving revealed that Moments was the connective tissue between everything in the app. "Movie night with Mia" linked to Spirited Away and Mia in People. That version only became possible because the question changed before the building started.


Not sequential. Iterative.

Strategizing Performing Forecasting Learning

This framework is not meant to be applied in a straight line. It is not strategizing first, then performing, then forecasting, then learning, and done. Real work does not behave that way.

Performing often reveals things that reshape the strategy. Forecasting exposes risks that change execution. Learning changes how we frame the problem in the first place. Each part informs the others, and the enterprise perspective forms through that back-and-forth — not by walking through it once like a checklist.


What stayed with me

That question from 2013 still comes back to me often.

What are you trying to solve?

Simple question. But it pulls you back just far enough to see what you are actually dealing with.

That is probably the heart of Enterprise Thinking for me.

Not sounding strategic. Not using enterprise words. Not making things more abstract than they need to be.

Just stepping back enough to make sure the work, the decision, and the direction actually belong together.