Coordinating between teams can be enormously complicated, very straightforward or somewhere in the middle. The best performing teams are the ones that are able to communicate the most clearly with one another and can respond most quickly to changing business conditions or new information. What this means for a product manager (PM) is the ever enjoyable challenge of building flexible, adaptive plans that incorporate all the possible information on an ongoing basis while still staying directionally consistent.
If a PM needs a team to build a car, it can be entirely described and planned out but delaying decisions on whether or not you include certain features to the last moment, how the product is tested in prototypes with customer input and the ability for the makers (developers or mechanics) to stop the product line in the event of a product defect are the elements that define a development process as agile. As a PM, your role in getting an agile process up and running is to articulating the business need for this change, supporting or leading the change management process and managing your part of the agile process.
Recognizing the Need for Agile
In Payfirma, I joined a post-Series A funded environment and there was a lot of chaos. New hires were being integrated into the team in a rapid fashion and the total number of employees roughly doubled from 30 to 60 people. The development environment was informal and the product management team had been coordinating with developers using a waterfall process that was more personality than process driven. There were a couple of warning signs that made it clear that a new approach to business-development coordination needed to be implemented.
Signs we needed to revisit our process
- The only major product release in the past calendar year was a front-end refactor
- The product management team was facing intense internal pressure to deliver
- We were responsible for increasing the growth rate of the company (more on this in another post)
The developers had a wide authority to build what they wanted to, rather than what the management of the company saw as crucial elements of their plans and strategies. In a B2C business, a loose product management process can be successful because the developers who are making the product have a good understanding of the business fundamentals and customers needs. However, in the B2B context of Payfirma, the elements were a bit more abstract and foreign to developers who had never run a small business. It required a lot of product management work to breakdown the business and customer needs into features and plans.
When your business needs to establish a competitive advantage with clear product leadership, is having trouble scaling growth, cannot maintain a stable product or updated versions are never shipped on time, moving to an agile product development process can solve a lot of problems. To do this, the change leader is going to need advocates on the developer side and the support of management so be sure to build your relationships carefully as you move forward.
Different types of competitive advantage
Companies looking to establish clear leadership in the market in terms of market share, revenue growth, customer growth or share price, will trend in one of these three different directions. This is not to say that companies cannot be good in more than one category, but that deciding to be excellent in one will inherently force tradeoffs in another category. For instance, being a product leader will likely require high-quality, high-cost materials or inputs that will increase overall product price, also affecting customer intimacy. Again, this is not to say that companies cannot be good in more than one category, but the leading companies often focus on being excellent in just one.
Areas of competitive advantage
- Customer intimacy – for whatever else you might say about Amazon, with their competitive pricing and impressive delivery times, they have established a competitive edge in online retailing by correctly identifying the crucial elements of customer satisfaction and delivering on it at affordable prices
- Product leadership – Apple has effectively redefined markets on a number of occasions and maintains a clear market premium for the perceived additional value associated with their brand and products
- Operational excellence – nothing says operational efficiency like the 60 seconds that McDonald’s needs to prepare a double cheeseburger and while customers would be hard pressed to say they don’t like the burger, they are equally hard-pressed to say a gourmet burger would not taste better
Whatever the focus of your company, you have to know what your standing is in the different areas of competitive advantage so that you can maximize the anticipated success of your efforts and not go against the culture of the company you’re working in. If your company is moving forward with product leadership, you need to clearly understand how your company will grow from this decision and what is the context you are operating from.
Implementing an Agile Process
As a PM, you need to be concerned with an agile as a means to an end and not as an end in itself. What I mean to say, is that you have a part in the process and need the results of the development cycle to match with the business plan you have in place but there are many aspects of the process that you will not be able to manage yourself. If you’ve take the decision with your team you’re essentially building a new team dynamic where team members interact with each other in different roles, and as tempting as it might be to be fully involved in all aspects of the process, you will have to remove yourself from some key aspects of the process so that it can become a sustainable change.
Generating buy in
If you’ve taken the decision that agile is necessary for you to generate a competitive advantage in your business, you need to make sure that this is not a decision you are taking alone. The management team representatives in charge of product and development need to be the ones to decide to implement this change. To help broadcast the benefits of the change to the wider company, it can be wildly helpful to come up with key metrics that define the problems being faced today (e.g. missed deadlines in days delayed, product bugs in customers affected, unmet strategic objectives in lost revenues, etc.) so that the business leader, development teams and wider company can get on board. You need to be the one generating the information, communicating the benefits and truly understanding why this change is important, after all what is the point of making a change that has no clear benefit to it and if you do not have the answer, who does?
Define your different roles
No one person is a process. Other people need to participate and take on the responsibilities specific to their roles in the agile process. Your challenge as a leader of this change is two-fold: you need to consistently live up to the responsibilities of your role while being an advocate for change within your company. The first role, you will continue doing indefinitely while the second is a shorter term commitment that will last only as long as it takes for the team to take ownership of the process.
How to lead the change
Change management is a whole school of thought separate from agile processes and it is definitely worth diving into for valuable learning. To summarize the best approach for an agile process, you need to first generate buy-in by clearly articulating the benefits and need for the change with the support of the key stakeholders behind a new process. With this in place, you then need to build and communicate a final vision for what the end result of the process looks like. It it best if this definition is made with clear measurable success criteria so that an objective measure of done can be understood by everyone. After the vision, comes the plan. The has to be around a somewhat clear timeframe and with very clear activities that allow for a regular cadence of wins throughout the implementation of the change. Clear documentation and institutionalization of the agile process developed during the implementation so that the process can stand on its own legs when you are done.
Identify your role within the agile process
Agile is a team dynamic for how you build and release products so that you can achieve business and customer focused objectives. Each company has to apply this process differently as different markets, team dynamics, company structures and technologies will require different skill-sets so concentrations of competencies will always vary. The core roles of the process described below will always, however, be consistent. For agile to work well, you need to have a difference in responsibilities so that specializations and the unique dynamics required between these specialized roles can emerge.
Implementing agile will take time and will require a well-mapped out transition process as well as a clearly identified reason to do it. Any agent of change needs to have a clear vision of what the future will look like and be able to articulate it everyone involved so that they can understand their part in the process. Doing adequate upfront planning and socialization of the implementation plan will save you months of work down the line and help you and your team to be successful. The implementation at Payfirma was successful in achieving all of our stated goals: we were able to decrease bugs in release to a max of 1-2 per version, improve developer coordinating and efficiency to make incremental tech stack improvements that did not interfere with business or customer needs, and action all business strategies to double our monthly customer revenue growth rate.
Maybe the most important takeaway that I hope you get from this piece is that you have to understand why you need to implement an agile process so that you can generate buy-in and how to measure success so that you know when you’ve completed your implementation of a sustainable agile process. We’ll get more into managing your side of the agile process in another post.