Beyond Agile (8/52): The Socratic Method for Engineers, TPMs, PMs
or how to ask great questions and invoke critical thinking in tough situations.
The Greatest Of All the Technical Program Managers, Engineering Leaders, Architects, and Product Managers I worked with had two particular traits in common:
1️⃣ They were all masters at critical thinking.
2️⃣ Their super power was asking great questions.
Now, great is arguable a relative term.
The questions weren’t great because of the language used or manner in which it was delivered. It was the outcome that they achieved that made them great.
They applied the art of the SOCRATIC METHOD to achieve great outcomes.
The Socratic method (also known as method of Elenchus, elenctic method, or Socratic debate) is a form of cooperative argumentative dialogue between individuals, based on asking and answering questions to stimulate critical thinking and to draw out ideas and underlying presuppositions.1
Many assume the socratic method is just questioning things until the other side concedes to your point. This isn’t wrong but neither is it right.
The goal of the questioning is not to win an argument but to lead the other to a place of “doubt” around their original thesis thus giving them an opportunity for revising it with fresh perspective.
Applied Socratic method in academia takes a specific shape; I have over time observed a socratic model born of the software engineering world having worked on complex cross functional programs with some of the brightest minds in the tech industry.
Your questioning should fall under the following pillars:
Clarify the scope - Do we understand the problem at hand? Do we understand what we are trying to do? What is within scope and out of scope?
Find the Box - What are the constraints that either shape the ideas or solution under discussion or within which we are operating?
Identify the assumptions - what is implicit and explicit.
Challenge the assumptions - do they hold muster.
Opportunity Cost - trade offs and lost opportunities if this approach is taken.
Ship & Revert Flexibilities - how quickly can we pull back if a mistake is made.
Alternatives (viewpoints and options) - did others have a say and did we explore other options.
Test if this is a solution or idea for one off or can it scale to encompass many systems.
Beware of the following pitfalls that can derail the Socratic approach:
🙅🏽♂️ Do not approach with a patronizing tone. You are having a collaborative inquisitive drive dialogue. Not winning a school argument.
🧠 No one can read your mind. Articulate you experiences as much as you can. We have not walked in the shoes you have, fixed the issues and bugs you have, or experienced wrong technical decisions that you may have.
🙇🏻♂️ Never interrupt a person while they are speaking. Allow them the respect to finish their thought as you wold expect another to allow you to finish yours.
⏱ If you need time to think about the answer, take the time and regroup, do not get into an argument. You have not been bested or defeated but given a gift or opportunity to strengthen your idea with something you didn’t think about. Be appreciative and thankful.
Like all good things, do not overuse the Socratic method. Here are great places to apply this approach:
When designing a new feature or product.
When dealing with a solution to a critical bug or issue.
When you want to grasp a better understanding of a concept, idea, or solution.
When teams cannot agree upon an approach from multiple possibilities.
Ultimately - the goal is to generate critical thinking about the decisions and choices we make by inquisitive questioning rather pontificating a position. This an important skill that all TPMs, PMs and Engineering Leaders must know and develop.
Until next time 👋!
-Aadil
Further Reading
Intel Teach Program | Designing Effective Projects: Questioning The Socratic Questioning Technique - This was an interesting find and a great read.
Feedback on this week’s newsletter:
https://en.wikipedia.org/wiki/Socratic_method