Systematic Problem Solving and Problem Framing
The first step to solve a problem is to identify their is one
In the previous article The Engineering Mindset in 2025 I have introduced what an engineering mindset is and why it’s crucial in 2025’s AI driver world. Now we will dive into one of the foundation pillars of engineering thinking. Systematic Problem Solving and the art of Problem Framing.
Learning about this very common skill will sharpen your thinking and put you on the path of becoming an engineer.
Why Systematic Problem Solving Matters?
Engineering isn’t about rushing to quick fixes or writing code as a knee-jerk reaction. Instead, it’s a structured, thoughtful approach to tackling challenges.
When faced with any issues, whether designing a more efficient heating system, building a software feature, or even organizing your daily schedule. The ability to break down the problem, understand its nuances, and plan a logical pathway to the solution separates engineers from everyone else.
Look at it like this
Without a plan, you might jump in, fix one symptom but miss the root cause.
With systematic problem solving, you map out what is going wrong, why it matters, and explore multiple path forward before taking action.
This reduces wasted effort and leads to more robust, sustainable solutions.
It has been more than 18 years in technology for me and most of those years I spent in breaking problems and I still do it. Keeping a note of only what is needed is not sufficient, we also have to look a little closer or sometime broader (people also called the bird eye view) to get the full picture.
What is Problem Framing?
The term Problem Framing is the thoughtful process of defining and understanding a problem clearly before trying to solve it. It is like drawing a detailed map before setting out on a journey or making to list before going to the market.
Here are some key aspect to problem framing
Contextualizing the problem - What are the circumstances? Who or what is affected?
Identifying constraints - What are the limitations or boundaries—time, budget, technology, regulations?
Understanding stakeholders’ needs - What do users or customers truly want?
Distinguishing symptoms from root causes - What is the real issue beneath the surface?
Setting success criteria - How will you know when the problem is solved?
By spending time here, you avoid chasing illusions and can direct efforts where they matter the most.
The Process
Bases on my vast experience in problem solving and breaking them down into multiple pieces, form and point of view. Here is a simple framework I have created to tackle problem methodically
Define the problem clearly
As I said earlier, the first step to solving a problem is to identify there is one, and here are some methods and key aspect you can keep in mind when defining a problem
White down the problem statement clearly
Avoid vague descriptions, be specific
For example if I give you a task which just has a title “Add JWT token Support in the Auth Flow“. This may seems a legit task and I am sure you can find it in your current or past project somewhere, and it also seems very clear but it does not provide any context.
For people very familiar with the system that may not be an issue but for a new person that missing context will become a nightmare while implementation. As it does not answer the basic questions, which library to use?, what would be the expiry time?, would there be a refresh token?, would there be a force logout scenario etc etc.
Gather information and Analyze Constraints
After you define the problem clearly the next step to gather as much information as could so that you can analyze all the possible constraints or edge cases. Here how it should be done
Collect data, research relevant factors.
Identify the limitations of your solution.
Pay attention to the possible edge cases.
Generate Multiple Possible Solutions
One you list down all the possible data and relevant factors with limitations and edge cases, the next step to find more alternatives
Brainstorm without judgement. Quantity matter here.
Consider unconventional (out of the box) ideas.
Evaluate Tradeoffs and Choose and Approach
If you have multiple ideas to the solution, the most part of problem solving is already done. Now you have to rule out the ones are not aligned with the constraints. Here are some common constraints to look for
Cost, whether you have sufficient budget allocated for your solution
Time, do you have enough time to implement it
Impact, how big of a value or impact it can generate in long and short term
Risk, what are the common risks to fail
Feasibility, whether it is feasible to implement
Implement the Solution
After your evaluation, you should have one final approach which should be implemented. For the implementation a different set of steps are needed
List down all the details of your solution
Develop a plan to implement
Test, Evaluate and Iterate
Once implemented, you should considering testing and gathering feedback on it
Measure results against success criteria
Refine the approach as per feedback
This simple yet effective process ensures problems are approached thoughtfully and solutions are well grounded.
The exercise
To practice the above problem, here is a quick exercise for you.
Pick a simple recent problem you have encountered, a work hiccup, an inefficiency at home or a minor issue within your community. Now
Clearly write what the problem is.
List out all the constraints you had (time, money, resources, access etc)
Identify who is affected and what a success would look like.
Try to break the down the problem beyond the obvious symptoms. See if you can spot deeper root causes or factors.
Why this Mindset is Essential in 2025?
With AI automating routine coding and data processing, your ability to frame the right problem becomes your superpower. AI can’t decide what problems to solve for right now, this requires human insight, context and critical thinking.
The more you refine and perfect the systematic problem solving, the more valuable you become as an engineer who can
Translate ambiguous needs into clear, actionable problems.
Develop solutions AI cannot conceive alone.
Lead projects with confidence through complexity.
Make this a habit
This should not just be done on demand, it should be in your habit to do every time you encounter a problem. To for this niche habit, here what you can do
Start a habit of framing one problem each week. It could be professional or personal. Record your problem statement, constraints, stakeholders, and possible solution in a journal or note app. Reflect on how this changes your perspective and decisions.
Conclusion
Systematic problem-solving and effective problem framing are foundational steps in cultivating the engineering mindset. By approaching challenges with clarity, structure, and thoughtful analysis, you not only find better solutions but also develop critical thinking skills that set you apart as an engineer, especially in a world where AI handles routine tasks.
Making problem framing a habit empowers you to tackle complexity confidently and lays the groundwork for innovation and continuous learning.
This post is just the start of your engineering mindset journey! There is much more to explore, embracing resilience, balancing tradeoffs, ethical thinking, and leveraging AI as your partner.
In the next post, we’ll explore embracing iteration and resilience, how engineers learn from failure and relentlessly improve solutions over time. Stay tuned, this is where the engineering mindset truly shines!
Remember, being systematic and clear about problems is the first giant leap toward thinking like an engineer. Keep practicing, stay curious, and watch how your mindset transforms with each challenge you analyze.
If you’d like, I can help you with templates or worksheets to guide your problem framing practice. Just ask!