Discover more from Product Blocks
🥃#5 - Event Storming, CTO’s framework to manage your priorities and energy, How to start Continuous Discovery and more!
Welcome to this week's edition of 🥃 Whisky on the Blocks, highlighting the latest updates to Product Cards and the best findings for the week.
👋 Hey! My name is Piotr, and welcome to my newsletter on building blocks for successful tech product companies. Subscribe for free step-by-step guides on best practices used by the best companies!
💬 In this week's issue:
Using Event Storming to explore complex domains
Lessons learned from an engineer applying to Datadog, Spotify, and Shopify
Average Manager vs. Great Manager in 10 illustrations
CTO’s framework to manage your priorities and energy
How to start Continous Discovery
The difference between Product Owner and Product Manager Explained
… and more!
♣️Product Card Spotlight: Event Storming
Event storming is a powerful technique for collaborative modeling and domain-driven design. It helps teams understand complex business problems, identify gaps and inconsistencies, and design solutions aligned with the domain experts' vision.
But what is event storming exactly? How does it work? And why should you use it?
Event storming is a workshop format involving stakeholders (usually developers, domain experts, and product managers) who use sticky notes to map out the events, commands, aggregates, policies, and external systems involved in a business process. The goal is to create a shared understanding of the domain, discover the core concepts and behaviors, and identify the pain points and opportunities for improvement.
Some of the benefits of event storming are:
It is fast and fun. You can cover much ground quickly and generate energy and enthusiasm among the participants.
It is visual and tangible. You can see the big picture of the system, as well as the details and interactions. You can also quickly move, modify, or remove sticky notes as you go along.
It is inclusive and collaborative. You can involve people from different backgrounds and perspectives and leverage their collective knowledge and creativity. You can also foster a common language and vision among the team.
To run a successful event storming session, you need to:
Prepare the space and materials. You need a large wall or board, plenty of sticky notes in different colors and sizes, markers, and some dot stickers for voting or prioritizing.
Define the scope and goal. You need to decide what business process or scenario you want to explore and what outcome you want to achieve (e.g., a high-level model, a user story map, a backlog, etc.).
Invite the right people. You need diverse roles and expertise, including domain experts who can provide the business context and validate the assumptions.
Facilitate the session. You need to guide the participants through the steps of event storming, such as:
Start with the events. Ask the participants to write down the events that happen in the business process, using the past tense and a noun-verb structure (e.g., "Order placed," "Payment received," etc.). Then stick them on the wall in chronological order.
Add the commands. Ask the participants to write down the commands that trigger the events using the imperative mood and a verb-noun structure (e.g., "Place order," "Receive payment," etc.). Then stick them above the corresponding events.
Add the aggregates. Ask the participants to write down the aggregates that are responsible for executing the commands and emitting the events using a singular noun (e.g., "Order," "Payment," etc.). Then stick them below the corresponding events.
Add the policies. Ask the participants to write down the policies that define the business rules or logic that govern the system's behavior, using an if-then structure (e.g., "If an order is placed, then send confirmation email"). Then stick them between the events and commands that they relate to.
Add the external systems. Ask the participants to write down the external systems that interact with or influence the system, using a proper name or acronym (e.g., "CRM," "ERP," etc.). Then stick them on the edges of the board.
Review and refine. Ask the participants to review the model for completeness, accuracy, consistency, and clarity. Encourage them to ask questions, challenge assumptions, make suggestions, and resolve conflicts. Use dot stickers to mark hot spots, issues, or priorities.
Wrap up and follow up. Summarize the main findings and insights from the session. Take photos of the board and document the model. Decide on the next steps and actions to take.
Event storming is a great way to kick-start your product development process. It can help you to discover your domain, design your system, define your requirements, and deliver value to your customers.
To learn more, watch this video from Alberto Brandolini.
This practice is part of Product Cards - 100+ cards to learn and improve all things product, engineering, agile, and design.
📕 Interesting reads
by • 9 mins
Alex shares his experience of failing three job applications and the lessons he learned while applying to Datadog, Spotify, and Shopify. He provides key takeaways for those in the job market, including not wasting time on specialist positions if you have a generalist skill profile, not applying to companies you don't resonate with, and practicing interviewing skills - must-have for people thinking about finding a new gig in tech.
by • 2 mins
Julie Zhuo, the author of The Making of a Manager, illustrates the difference between average and great managers in 10 sketches. She shows how great managers focus on outcomes, feedback, collaboration, and vision, while average managers focus on tasks, news, control, and plans.
by Will Larson • 11 mins
Will Larson, the CTO of Calm and a former engineering leader at Uber and Stripe, discusses how to manage your priorities and energy as a leader. He introduces a framework for decision-making that balances the needs of the company, the team, and yourself. He also shares some tips on how to avoid burnout and stay motivated.
by • 7 mins
Paweł Huryn, a product coach and author, offers some practical advice on surviving and thriving in an imperfect product organization. He covers topics such as dealing with politics, managing stakeholders, prioritizing work, and building trust.
by • 8 mins
David explains the difference between a product owner and a product manager. A good comparison of roles’ the skills, responsibilities, and challenges of each role.
by • 17 mins
Teresa discusses the concept of continuous discovery and how it can be implemented in any organization. She breaks down the framework into 11 habits and suggests identifying hidden assumptions. In the article, you’ll also find addressing different scenarios, such as organizations that operate like a feature factory, organizations in the messy middle, and organizations that revert to old habits. Pure gold for companies who want to start product discovery.
by Jo Rabin • 8 mins
Jo explores the concept of technical debt and how to manage it effectively. He argues that technical debt is not always bad and that it can be used strategically to achieve business goals. He also gives some guidelines on how to measure, prioritize, and communicate technical debt.
by Tim Metz • 5 mins
A comparison of different methods for assessing and improving team health and performance.
💡 Food for thought
🙂 Weekly smile
Good luck, have fun, and see you in a bit!