When we design or adopt a new product development process, project management framework or methodology we often rush to establish certain rules and definitions, such as sprints, story points, velocity. We rarely focus on philosophy and values on top of which we build our processes. Below are some of my views on this topic.
Purpose of the process
The main purpose of a product development process is to streamline all available resources to make highly impactful changes towards the company objectives. At the same time as we progress towards our goals we must continuously learn and grow as an organisation. It is important to celebrate the learning as well as the delivery of successful changes.
A holistic process
It is important for the process to cover not only the execution phase but also the entire cycle of ideation, solutionising and implementation. In this sense it is not an Engineering or Product team process. It is a company wide process with stakeholders from all departments actively involved.
The process must not be focused exclusively on “how” to deliver changes. But also on “what” the change should be in order to solve a problem. And “why” solving this specific problem matters.
The values
A good process must be built around a few core values:
- Alignment - everyone must be aligned and move towards the same goals. By design of the process there should not be any conflicts of interests. Among many other things this means alignment of incentives, careful handovers and certain cultural changes. Namely, “The Business vs The Engineering” stand-off should not exist in the conversations.
- Transparency - at any given moment of time everyone in the company should be able to know what’s currently being worked on. Transparency is about sharing information on the most appropriate granularity level. Oversharing is as bad for transparency as undersharing. Having a shared situational awareness has a major systemic impact on overall performance of the company.
- Sustainability - to achieve continuous growth everything we do must work sustainably. Energy management matters even more than time management. Going over and beyond to deliver a project within a tight deadline usually leads to completely missing the deadline for the next couple projects. And it is rarely worth it. We should not over-optimise our process for speed and efficiency. This makes the entire system fragile.
- Engagement - we should aim to engage everyone in the company in the process of making impactful changes. We should invite everyone to participate beyond their main roles. This means engineers’ interest in the problem space, as well as a good product understanding across the company.
Communication matters
A good process must focus on communication a lot. Have high-level communication guidelines for various situations that emerge from following the process.. For example, when to use chat and when to use email. What’s the purpose of documentation and how is it generated? etc.
Rhythm
Same as humans, organisations develop habits around cyclic events. A good process must cultivate good habits and establish a certain rhythm of work. When a team delivers changes continuously every quarter or every month positive feedback loops help get them better and better with each iteration. This creates a momentum for high-impact work.
Ever changing process
No process can be perfect from scratch. Any rules need continuous adjustments and changes as the organisation and environment changes. As it follows from the “principles over process” rule - it is important to stick to core principles when making process changes. However, principles by themselves cannot replace a process. At any given moment of time it is important to have a specific process. Any changes to the process must be made explicitly even if it still follows the same principles.