My friends at the Business Agility Institute are running a survey on business agility.
I encourage all of you to take five minutes and respond: Global Business Agility Survey Results.
“We need a product that does X because our competitors have a product that does X”
“Our product needs feature Y because our competitors product has feature Y.”
It makes me want to cry.
Let me clear: building something because your competitors have it IS NOT A STRATEGY.
Neither is it a particularly good tactic.
Stop obsessing about your competitors and think about your customers.
I don’t doubt that your people are being told that customers are buying the competitor product because it has X or Y and I don’t doubt that some of your people feel that if you only matched the competitors feature for feature you would win but I just can’t see it myself.
For a start, is feature Y really the only thing loosing the sale? Are the products so well balanced that this one small thing is it? And is there really nothing that your product does better?
Try this simple experiment: tell the customer that feature Y will be delivered next month and see if they decide to buy yours there and then or find something else that makes the competition better.
Now lets suppose you decide to build Y. Before you make any plans ask yourself:
While you are building feature Y what are your competitors going to be doing?
Will they stand still or will they be adding feature Z?
And once they have feature Z will you need to play catch up?
Chances are that tomorrow you get to where you want to be (where your competitors are today) only to find your competitors have something else you don’t have either.
I’ll agree this is a good strategy if you have deliberately chosen to be a Fast Follower – you can play Android to your competitors iOS. Just make sure you know why your customers will choose your Android over the competitor iOS.
Will you be cheaper?
Or will you bundle some other goodies with it?
Before you run to where your competitors are today ask yourself: where will your competitors be tomorrow?
If you still insist on building this feature you need to
A better approach is to find out what your customers actually need. Stop looking at the features, go back to first principles: what is the problem your customers face? what is the job they are attempting to make progress with?
How can you help your customers with this job?
How can you make them faster?
How can you help them achieve their work more cheaply? Or at better quality? – in fact, what do “better” and “quality” look like to them.
Someone – I honestly forget who – told me earlier this year that they wanted to catch-up with their competitor and overtake them.
One small flaw there: if you build features to match your competitors you can never overtake them because you won’t know what to build once you reach parity.
Put it another way, you add all the features they have today, and all the features they add while you are catching up. What do you build next? Until they build their next version (and recapture the lead) you don’t know what to build. And if you build something different you just lost feature parity.
So, go back and examine what your customers are using your tool for. Look at the job to be done, look at how your customers are doing their job and using your tool and work out for yourself how you can help customers do a better job.
Celebrate the difference, explain why you are better.
And please forget about matching the competition.
I’m old enough to remember the days when WordStar was fighting WordPerfect, AmiPro was fighting them both, and all were better than Microsoft Word. Adverts and magazine reviews would compare them feature to feature. Someone somewhere thought people bought word processors based on the number of features.
Then Microsoft launched Windows and everybody went over to Microsoft Word for Windows almost overnight.
Don’t focus on your competitors. Focus on your customers. Unfortunately that requires more work and some original thinking.
With some final words I’d like to draw this mini-series on the Product Owner to a close and open a new chapter with a new book. I’ve written six blog posts in the last two months and I have drafts for more but there are other things I want to blog about.
I have drafts for more posts and ideas for even more. So its time to make this into another book: Product Ownership. This is on the LeanPub site now and you can buy it. So far it just contains a new prologue story but I’ll add these posts soon as the first chapters.
Ever since I wrote Little Book of User Stories I’ve thought there should be a companion volume: “Little Book of Product Ownership”. The intention is for the first part of the new book to discuss the product owner role – and whether it should even exist – and then quickly get into the tools of Product Ownership.
Now some closing words…
While I’ve suggest a lot of things that a Product Owner should do, and a few that they should not do, there are really no hard and fast rules about what a Product Owner should or should not do.
In the language of business schools: there is no contingent way of being a product owner, every product owner and organization is different and they need to find their own path. I cannot give you a flow chart for what a product owner does or should do, nor can I give you a set of rules to say “When the customer says Foo the Product Owner should do Bar.”
Every Product Owner has to work out what is right for them because every organization is different. And every organization will – rightly or wrongly – expect different things from the people it christens Product Owner.
Additionally every team is different and contains different skills and experience. As a result every team will differ in what it needs from the Product Owner(s) and how the team members can support the Product Owner and share the work.
And every Product Owner is themselves different and brings different skills, experience and insights to the role.
Job #1 for a newly appointed Product Owner is to sit down and decide what type of Product Owner they are expected to be and what type of Product Owner they want to be:
But a Product Owner is not some other things:
Every Product Owner and everyone working with Product Owners needs to read and reflect on the role. Hopefully some of the words in my recent posts – and the new book – will help with that – and hopefully some of you might like to hire me for advice or a training course – just call 🙂
Finally, I sincerely believe there are better Product Owners and not-so-good Product Owners, and that some organizations (teams, companies, enterprises) which offer a better environment for Product Ownership and equally there are those which are downright hostile to product ownership.
Want to receive these posts by e-mail? – join the newsletter today and receive a free eBook: Xanpan: Team Centric Agile Software Development
For years I have been using this picture to describe the Product Owner role. For years I have been saying:
“The title Product Owner is really an alias. Nobody should have Product Owner on their business cards. Product Owner is a Scrum defined role which is usually filled by a Product Manager or Business Analyst, sometimes it is filled by a Domain Expert (also known as a Subject Matter Expert, SME) and sometimes by someone else.”
In telling us about the Product Owner Scrum tells us what one of these people will be doing within the Scrum setting. Scrum doesn’t tell us how the Product Owner knows what they need to know to make those decisions – that comes by virtue of the fact that underneath they are really a Product Manager, BA or expert in the field.
In the early descriptions of Scrum there was a tangible feel that the Product Owner really had the authority to make decisions – they were the OWNER. I still hope that is true but more often than not these days the person playing Product Owner is more likely to be a proxy for one or more real customers.
I go on to say:
“In a software company, like Microsoft or Adobe, Product Managers normally fill the role of Product Owner. The defining feature of the Product Manager role is that their customers are not in the building. The first task facing a new Product Manager is to work out who their customers are – or should be – and then get out to meet them. By definition customers are external.”
“Conversely in a corporate setting, like HSBC, Lufthansa, Proctor and Gamble, a Product Owner is probably a Business Analyst. There job is to analyse some aspect of the business and make it better. By definition their customers are in the building.”
With me so far?
Next I point out that having set up this nice model these roles are increasingly confused because software product companies increasingly sell their software as a service. And corporate customer interact with their customers online, which means customer contact is now through the computer.
Consider the airline industry: twenty years ago the only people who interacted with airline systems from United, BA, Lufthansa, etc. were airline employees. If you wanted to book a flight you went to a travel agent and a nice lady used a green screen to tell you what was available.
Today, whether you book with Lufthansa, SouthWest or Norwegian may well come down to which has the best online booking system.
Business Analyst need to be able to think like Product Managers and Product Managers need to be able to think like Business Analysts.
I regularly see online posts proclaiming “Product Managers are not Product Owners” or “Business Analysts are not Product Owners.” I’ve joined in with this, my alias argument says “they might be but there is so much more to those roles.”
It makes me sad to see the Product Manager role reduced to a Product Owner: the Product Owner role as defined by Scrum is a mere shadow of what a good Product Manager should be.
But the world has moved on, things have changed.
The world has decided that Product Owner is the role, the person who deals with the demand side, the person decides what is needed and what is to be built.
I think its time to change my model. The collision between the world of Business Analysts and Product Managers is now complete. The result is an even bigger mess and a new role has appeared: “Digital Business Analyst” – the illegitimate love child of Business Analysis and Product Management.
The Product Owner is now a superset of Product Manager and Business Analyst.
Product Owners today may well need the skills of business analysis. They are even more likely to need the skills of Product Management. And they are frequently expected to know about the domain.
Today’s Product Owner may well have a Subject Matter Expert background, in which case they quickly need to learn about Product Ownership, Product Management and Business Analysis.
Or they may have a Business Analysis background and need to absorb Product Management skills. Conversely, Product Owners may come from a Product Management background and may quickly need to learn some Business Analysis. In either case they will learn about the domain but they may want to bring in a Subject Matter Expert too.
To make things harder, exactly which skills they need, and which skills are most important is going to vary from team to team and role to role.
Want to receive these posts by e-mail? – join the newsletter today and receive a free eBook: Xanpan: Team Centric Agile Software Development
Last time I set out some of the things a Product Owner should be doing – or at least considering doing. Even a quick look at that list will tell you the Product Owner is going to be a busy person.
So in this post I’d like to suggest some thinigs Product Owners should NOT be doing.
Product Owners Cutting code should NOT be cutting code
Having a former coder in the Product Owner role can be a great boom. Not only do they know how to talk with the technical team and (hopefully) can command their respect but they can also see how technology can apply.
But to be an effective Product Owner they need to step away from the keyboard and stop writing code.
Product Owners add value by ensuring that the code which is written addresses the most valuable opportunities with the smallest, most elegant, delightful way possible.
Every minute spent coding is a minute not doing that.
Second: Product Owners need to empathise with the customer, with the business users, they need to eat-sleep-and-breath customers.
Being a good coder – let alone someone called an architect – is to empathise with code, the system, the mechanics of how a system works.
Importantly both requirements and code need to be able to come together and discuss what they see and find a way to bring the two – sometimes opposing – views together. It is a lot easier to have that discussion if the two sides are represented by different people.
Asking one person to divide their brain in two and discuss opposing views with themselves is unlikely to bring about the best result and is probably a recipe for confusion and stress.
Thats not to say both sides shouldn’t appreciate the other. I said before, former coders have a great advantage in being a Product Owner. And I want the technical team to meet customers. But I want discussions to be between two (or more) people.
(I might allow an exception here for Minimally Viable Teams but once the team moves beyond the MVT stage the PO should stop coding.)
Product Owners should NOT be line managers
OK, senior Product Owners should might line manage junior product owners but they certainly should not be line managing anyone else. Most certainly they should not be line managing the technical team.
Product Owner authority comes not from a line on an organization chart, or the ability to award (or deny) a pay rise or bonus. Product Owner authority stems from their specialist knowledge of what customers want from a product and what the organization considers valuable.
If the Product Owner cannot demonstrate their specialist knowledge in this way then either they should learn fast or they should consider if they are in the right role.
Product Owners need to trust the technical team and the technical team need to trust the Product Owner. Authority complicates this relationship because one side is allowed to issue orders when trust is absent and the other side has to obey.
And again, Product Owner simply don’t have the time to line manage anyone.
Being a good line manager requires empathy with employees and time to spend observing and talking to employees, helping them develop themselves, helping them with problems and so on.
Product Owners should not Make Promises for Other People to keep
Specifically that means they should not issue “Roadmaps” which list features with delivery dates based on effort estimates. The whole issue of estimation is a minefield, very few teams are in a position to estimate accurately and most humans are atrocious at time estimation anyway. So any plans based on effort estimation are a fantasy anyway. But even putting that to one side…
Issuing such plans commits other people to keep promises. That is just unfair.
Product Owners can create and share scenario plans about how the product – and world – might unfold in the future.
Product Owners can co-create and share capacity plans which should how an organization intends (strategically) to allocate resources. And Product Owners can work with teams in executing against those capacity plans in order to deliver functionality the Product Owner thinks should be delivered by a date the Product Owner thinks is necessary.
In other words: provided a Product Owner is making the promise that they intend to keep themselves (i.e. they have skin in the game) then they might issue some kind of forward plan.
Product Owners should dump outbound marketing at the first opportunity
Outbound marketing, e.g. advertising, press releases, public relations and product evangelism, often ends up on the Product Owner plate – particularly when the Product Owner is a Product Manager. And in a small company (think early stage start-up) this just needs to be accepted.
However, in a larger organization, or a growing start-up, Product Owners should seek to pass this work to a dedicated Product Marketing specialist as soon as possible. Both roles deserve enough time to do the job properly.
The Marketing Specialist and Product Owner will work closely together – they are after all two sides of the same coin, the Marketing coin. The Marketing Specialist handles outbound marketing (telling people about the product) and the Product Owner handles inbound marketing (what do people want from the product?). (Again, in organizations with established Product Management this is usually easier to see.)
Product Owners should dump pre-sales at the first opportunity
As with outbound marketing Product Owners often get dragged in as pre-sales support to account managers. And again this is more common in small companies and early stage start-ups.
There are some advantages to playing second fiddle to a sales person. The Product Owner might get actual customer contact (sales people too often block Product people from meeting customers.) And Product Owners should be exposed to some of the commercial pressures that sales people – and customers – encounter.
But doing pre-sales is very time consuming. And being wheeled in to help deliver a sales will distort the Product Owner’s view of the market – just ‘cos this customer wants the product in Orange doesn’t mean other customers want Orange.
And again, pre-sales is more effectively done by specialist staff as soon as the company can afford them.
Want to receive these posts by e-mail? – join the newsletter today and receive a free eBook: Xanpan: Team Centric Agile Software Development
If you hadn’t noticed I’m building a blog mini-series on the Product Owner role. Its a role I’ve long felt didn’t get the attention it should have. Frankly, in a Scrum setting, I think the Scrum Master gets too much attention and the Product Owner not enough.
One aspect in particular of the Product Owner role really annoys me: they have so much work to do.
Or rather, a Product Owners who is doing their job properly – as opposed to simply administering the backlog – has so many things they should potentially be doing.
So a few days ago I started to make a list…
Backlog administration: writing stories, reviewing and discussing suggested stories, splitting stories, weeding the backlog (throwing stories away), improving stories, putting value on stories, writing acceptance criteria
Working with the team: talking to the stories, reviewing work in progress, reviewing “completed” work, potentially signing-off or formally accepting stories, participating in 3-Amigos meetings with testers and developers, helping to improve the development processes
UXD: working even more closely with an UXD specialists because the two roles overlap, and possibly substituting for UXD specialists where they are absent.
Meetings: prioritisation pre-planning meeting, planning meeting themselves, stand-up meetings, retrospectives, show & tell demonstrations (potentially delivering them the show & tell themselves)
Interfacing to the wider organization: reporting and listening to internal stakeholders in authority, attending Governance and/or Portfolio review meetings, aligning product strategy and plans with company strategy and plans, plus feeding back to company strategy about their own product strategy and plans.
Planning: participating in Sprint planning with the team, planning for upcoming iterations (the rolling quarter plan as I like to call it), longer term planning which might take the form of a roadmap, a capacity plan, a scenario plan or all three
Customers 1: identifying customers and potential customer, segmenting the customer base, creating customer profiles and personas.
Customers 2: visiting customers, observing customers, talking to customers about stories and potential future work, reflecting on customer comments and feeding back to the team and other stakeholders.
Customers 3: similar activities to #2 for people and organizations who are not currently customer but who are potential customers (because potential customers who have unmet needs represent growth.)
I’m sure some of you are saying: “But we don’t have external customers, we have internal (captive) users”. And your right, if you have such “customers” then you have a subset of these activities. But then again, shouldn’t you be thinking about how our product is used by internal users to service the needs of external customers? And how you could improve that experience (for the customers) and improve the process (for the users?)
Marketing: inbound marketing the items just mentioned under customers plus market scanning (checking out the competitors) and potentially outbound marketing (advertising, PR, trade shows, etc.)
Sharing expert knowledge: providing knowledge about the domain and subject of development to the development team, supporting sales calls, demonstrating the product at shows. (And when the company is small helping the training and support teams.)
The offering: using the information gained in all these activities to refine the product/service offering to satisfy customers or improve business processes; Is it the right offering? Are you targeting the right customer segment? Should you be offering something else?
Close the loop: evaluating the effect on customers and/or process: Are the features bing used? Are non-feature improvements making a difference? What shouldn’t have been done? What arises form the changes that have been made? More software changes? Process changes?
Money: is all this making money? if the continued existence of the team positive to ROI?
Coincidentally, while I was preparing this blog Marty Cagan published a blog entitled “CEO of the Product Revisited” in which he discussed offered a list of all the discussions a Product Manager can expect to be involved with. That is no short list either. And as anyone who follows my writing already knows I see the Product Owner role as a kind-of Product Manager – more on that in a future blog.
This is not to say that all Product Owners should be doing all of these things. Asking one person to take all this on is probably setting them up to fail. Every product owner should recognise every item on this list. If they aren’t doing any of these items themselves then I expect they can either cross it off (doesn’t need doing where they work), or name the person who is doing it.
And I also expect every product owner can add some things to this list which I have overlooked.
In future blog posts I intend to discuss (again) the Product Owner as a Product Manager and how Product Owners can reduce their work load.
In the official guides all Product Owners are equal. One size fits all.
In the world I live in some Product Owners are more equal than others and one size does not fit all.
The key variable here is the amount of Authority a Product Owner has. In my last post I said that Authority is one of the four things every product owner needs – the others being legitimacy, skills and time. However there is a class of Product Owner who largely lack authority and who I have taken to calling Backlog Administrators.
About the only thing a Backlog Administrator owns is their Jira login. They are at the beck and call of one or more people who tell them what should be in the backlog. Prioritisation is little more than an exercise in decibel management – he who shouts loudest gets what they want.
A Backlog Administrator rarely throws anything out of the backlog, they don’t feel they have the authority to do so. As a result their backlogs are constipated – lots of stories, many of little value. Fortunately Jira knows no limits, it is a bottomless pit – just don’t draw a CfD or Burn-Up chart!
If the team are lucky the Backlog Administrator can operate as a Tester, they can review work which is in progress or possibly “done.” They may be able to add acceptance criteria. If the team are unlucky the Backlog Administrator doesn’t know enough about the domain to do testing.
I would be the first to say that the Product Owner role can be vary a great deal: different individuals working with different teams in different domains for different types of company mean there that apart from backlog administration there is inherently a lot of variability in the role.
The Product Owner role should be capable of deciding what to build and/or change.
So Product Owners need to know what the most valuable thing to do is. Part of the job means finding out what is valuable. While Backlog Administration is part of the job the question one should ask is:
How does the Product Owner know what they need to know to do that?
Backlog Administrators are little more than gophers for more senior people.
True Product Owners take after full Product Managers and Senior Business Analysts – or a special version of Business Analysts sometimes called Business Partners.
Product Owners should be out meeting customers and observing users. They should be talking about technology options with the technical team and interface design options with UXD.
Product Owners should understand commercial pressures, how the product makes (or saves) money for the company. Product Owners are responsible for Product Strategy so they should both understand company strategy and input into company strategy. Product Strategy both supports company strategy and feeds into company strategy.
Product Owners may need to observe the competitor landscape and keep an eye on competitors and understand relevant technology trends. That probably means attending trade shows and even supporting sales people if asked.
Frequently Product Owners will require knowledge of the domain, i.e. the field in which your product is used. Sometimes – like in telecoms or surveying that may require actual hands on experience.
And apart from backlog administration there is a lot of work to do to deliver the things they want delivered: they need to work with the technical team to explain stories, to have the conversations behind the story, write acceptance criteria, attend planning meetings, perhaps help with interviewing new staff and sharing all the things they learn from meeting customers, analysing competitors, debating strategy, attending shows, etc. etc.
I sure there are many who would rush to call the Backlog Administrator an “anti-pattern” but since I don’t believe in anti-patterns I don’t. I just think Product Owners should be more than a Backlog Administrator.
To be an effective Product Owner – and that includes product managers and business analysts who are nominating work for teams to do – you need at least four things. You may well need more than these four but these are common across all teams and domains.
There is more to being a Product Owner than simply writing user stories and prioritising a backlog. Yes, you need to know how to work with a development team and how to work in an Agile-style process. Yes you need to be able to write user stories and acceptance criteria, perhaps BDD style cucumbers too; yes you need to be able to manage a backlog and prioritises and partake in planning meetings.
But how do you know what should be a priority?
How do you know what will deliver value? And please customers? Satisfy stakeholders?
Importantly Product Owners need to be able to do the work behind the backlog.
Product Owners need to meet people, have the conversations, do the analysis and thinking behind those things. Any idiot can pick random items form a backlog but it takes skills and experience to maximise value.
Product Owners need to be able to identify users, segment customers, interview people, understand their needs and jobs to be done. They need to know when to run experiments and when to turn to research journals and market studies. And that might mean they need data analysis skills too.
If the product is going to sell as a commercial product you will need wider product management skills. While if your product is for internal use you need more business analysis skills. And product managers will benefit from knowing about business analysts and business analysts will benefit from knowing about product management.
You may also need specialist domain knowledge – you might need to be a subject matter expert in your own right, or you might become an SME in given time.
Some understanding of business strategy, finance, marketing, process analysis and design, user experience design and more.
Don’t underestimate the skills and experience you need to be an effective Product Owner.
At the very least a Product Owner needs the authority to nominate the work the team are going to do for the next two weeks. They need the authority to choose items form a backlog and ask the team to do them. They need the authority not to have their decisions overridden on a regular basis. (OK, it happens occasionally.)
As a general rule the more authority the Product Owner has the more effective they are going to be in their role.
The organization may confer that authority but the team need to recognise and accept it too.
I’ve seen many Product Owners who while they have the authority to nominate work for a team don’t have the authority to throw things out of the backlog. When the only way for a story to leave the backlog is for it to be developed it is very expensive. This leads to constipated backlogs that are stuffed full of worthless rubbish and where one can’t see the wood for the trees.
If the Product Owner doesn’t have sufficient authority then either they need to borrow some or there is going to be trouble.
Legitimacy is different from authority. Legitimacy is about being seen as the right person, the bonafide person to exercise authority and do the background work to find out what they need to find out in order to make those decisions.
Legitimacy means the Product Owner can go and meet customers if they want. And it means that they will get their expenses paid.
Legitimacy means that nobody else is trying to fill the Product Owner role or undermine them. In particular it means the team respect the Product Owner and trust them to make the right calls. Most of all they accept that once in a while – hopefully not too often – the Product Owner will have to say “I accept technologically X is the right thing but commercially it must be Y; full ahead and damn the torpedoes.”
It can be hard for a Product Owner to fill their role if the team believe a senior developer – or anyone else – should be managing the backlog and prioritising work to do.
Finally, and probably the most difficult… Product Owners need time to do their work.
They need time to meet customers and reflect on those encounters.
They need time to work-the-backlog, value stories, weed out expired or valueless stories, think about the product vision, talk to stakeholders and more senior people, and then ponder what happens next.
Time to evaluate what has been delivered and see if it is delivering the expected value. Time to understand whether that which has been delivered is generating more or less value than expected. Time to feedback those findings into future work: to recalibrate expected values and priorities, generate more work or invalidate other work.
Product Owners need time to look at competitor products and consider alternatives – if only to steal ideas!
They need time to work with the technical team: have conversations about stories, expand on acceptance criteria, review work in progress, perhaps test completed features and socialise with the team.
They also need time to enhance their own skills and learn more about the domain.
And if they don’t have the time to do this?
Without time they will rush into planning meetings and say “I’ve been so busy, I haven’t looked at the backlog this week, just bear with me while I choose some stories…”
More often than not they will wing-it, they substitute opinion and guesswork instead of solid analysis, facts and data. They overlook competition and fail to listen to the team and other managers.
And O yes, they need time for their own lives and family.
I sometimes think that only Super Human’s need apply for a Product Owner role, or perhaps many Product Owners are set up to fail from day-1. Yet the role is so important.
I plan to explore this topic some more in the next few posts.
Si: Welcome Peter, thank you for taking the time to attend this annual performance review
Peter: As long as you know I don’t want to be here, performance reviews are pointless, I told that to my manager Roger. I should be at my desk coding.
Si: Yes, I understand your position, in fact many of us sympathise with it, including Roger and myself
Peter: Well, good, does he also agree that management is a waste of time? If we were really following Agile the way we should then Roger wouldn’t be getting in the way all the time and I could write more code.
Si: Yes, well, we’ve had that feedback from other people and the company is committed to change. In fact, one of the things I wanted to speak to you about today was to tell you Roger is stepping aside.
Si: Yes, Roger is undertaking retraining and will become a Product Specialist, he himself rejected the title Product Manager because he doesn’t see the need for Managers and even refused the title Product Owner because he doesn’t feel he can “own” something that is a community effort and is ultimately owned by the company shareholders.
Peter: Wow… he has been listening to me?
Si: Yes, in my long conversations with him he has spoken many times of the points you have been making. Of course as part of the management team it wouldn’t have been right for him to speak about his changing views too publicly lest people wonder what was happening.
One of the things I wanted to discuss with you today was how we go about distributing Roger’s other responsibilities. As one the longest serving employees Roger suggested you would have the best insights.
Peter: Right, erh, so what responsibilities are these? – apart from asking me “how long will it take?”
Si: Well some relate to the product. As Product Specialist he will continue to support sales staff making customer visits, he will continue administer the backlog, prioritise work in the planning meeting and draw-up the product roadmap – although he wants to involve more people and change the concept of a roadmap. He plans to increase the number of customer visits, competitor analysis and market scanning activities he has been doing already.
Peter: Good, we need a proper product owner, he was doing the role anyway but didn’t have enough time.
Si: Well yes, in fact he has also requested that you and the other engineers accompany him on customer visits in future.
Peter: What? – but our customers are everywhere but here!!! Saudi Arabia, Finland, Argentina, USA… it takes days to get to those places, I’m needed here, I need to be coding!
Si: Well I’ll let the two of you come to a decision on that. Right now we need to redistribute Roger’s work.
There are the administration matters, signing off holiday, arranging sabbaticals, maternity/paternity leave; the new monthly check-points replacing annual performance reviews need to be staffed. There is a lot of work around contractors, time-sheets, extensions and terminations, to be honest there are constant political battles over the number of contractors and whether we should be using them at all. Personally, I believe these changes will abolish office politics but some people think I’m being naive.
Anyway, a lot of this work could be for someone like myself in HR…
Peter: But that will slow everything down! HR is never responsive and most of them – unlike yourself – don’t know one end of a code stack from another
Si: Yes, quite right, HR is atrociously understaffed so we take forever to do anything, and many of my colleagues just aren’t close enough to the teams – frankly they don’t understand technology.
For those reasons the company is also closing the HR department. The work will be distributed to the teams. So my colleagues and I are all being made redundant. Some larger teams, such as yours, will be allowed to hire “Talent specialists” to help with recruitment matters and I hope to secure a such a job myself. But that also means members of your team will need to interview and select their own Talent Specialist. I expect you’ll be on the interview panel, I hope you will see the depth of my experience.
Peter: O, but we are all so busy coding, that will slow us down! And we don’t know anything about recruiting HR people. Can’t Roger arrange that before he leaves?
Si: Roger’s re-assignment is immediate, he insisted on it. I suggest you and your colleagues get started on selecting your Talent Specialist as quickly as possible.
Still, many of the things I just listed will not fall under the Talent Specialists remit. A self-managing team really should manage a lot of those things itself. The Talent Specialist will be there for staffing issues, CV filtering, negotiating with recruitment agents, diversity monitoring, visa applications, university recruitment fairs, exit interviews, legal issues, and so on.
Peter: Right, well I’m sure out team can dispense with a lot of the administration, we can trust one another to take holiday responsibly.
Si: Quite so, I’m sure you can organise away a lot of the admin work but there will be a rump.
Peter: Could we bring back the Scrum Masters?
Si: Well the Scrum Masters we had were always at pains to point out they were not managers or administrators – I know they are in some other places. Plus, they said they “did themselves out of a job” in the end and recommended their own removal.
Peter: Arh… I remember, I guess we will share the administration around the team. We can work out a process for that – the same as we do in planning meetings.
Si: Remember as you do that some of your team may need management training
Si: Management, even administration, has its own on standards, rules, jargon, if members of your team are going to do administration and management work, let alone talk to others doing it then they need to know their CapEx from their OpEx, their 4 Ps from their 5 Forces, front-of-house from back-of-house, what you can and can’t say in an exit interview, a SWOT analysis from a …
Peter: Yes, yes I get it, a lot of mumbo jumbo if you ask me…
Si: All the same, is it fair to throw people in at the deep-end? Shouldn’t we help them learn if they want to?
Moving on next we come to Roger’s role in the hierarchy. Sharing company information down to the team and team information up the chain. Plus annual strategy meetings, quarterly reviews, product portfolio boards, key customer engagement.
Peter: We have Slack and Wiki’s so I’m sure we can manage the information alright.
Si: Arh… well, when we rolled this program out in Norway some of the teams tried just that. In a couple of months most of the team members were complaining about information overload. I believe the quote was “How can you expect me to do any coding when Slack keeps interrupting me?”
Si: And the Norwegian executives felt they never got a consistent message from the teams because different people would turn up to quarterly reviews each time while strategy sessions started to resemble a Stackover flow argument. Some customers complained that they no longer had a point of contact or got conflicting messages. And lets not even talk about the auditors.
Peter: Well the thing is, none of us have been trained in Strategy or, what did you call it? Portfolio review?
Si: Good thinking, I guess one of Roger’s strengths was the time he spent studying that on his American MBA. Do you want to arrange a coupe of days training in strategy and portfolio review for your team?
Peter: Erh, I’m not sure I know enough to book a training course, and isn’t that going to take people away from coding?
I mean the whole team, all 10 of us, out for 2 days training? And the people going to attend meetings with other departments and teams?
Si: Yes of course it is, but you will be self-managing. The team won’t have anyone else.
And mentioning the team, there is also another issue you’ve raised yourself in the past. Here we are, two very similar males discussing this. In fact your whole team is quite like the two of us. The team are going to have to challenge themselves to improve their diversity.
Look, we’ve been here half-an-hour and haven’t started even reviewing my performance, will this take much longer? I’ve got code to write.
Si: Well, there is quite a bit more of Roger’s work to discuss, plus his boss, Jane, is also stepping aside so we need to reconvene with people from the other teams to allocate her remaining work.
Peter: If we are self-managing, could we decide to employ a specialist to pick up a lot of this work?
Si: I expect you could, you’d need to put some costings together.
Peter: Right, I’ll talk it through with the team and see if we can hire a secretary.
Si: Good idea, although the secretary is going to need more than just typing skills.
Peter: Sure, secretary might be the wrong job title. We need someone with skills who we can trust to make these decisions, someone with experience.
Si: Although, you know, such a person may become a bit of a gate-keeper to the team
Peter: Certainly, thats what we need, we don’t want interruptions!
Si: Well, the problem with a gate keeper is that they decide what goes through the gate and what does not. That gives them a degree of power.
And if someone is picking up all the left over work, making decisions for the team, and controlling access to the team, and information flows into and out of the team…
Peter: Yes, is there a problem? That all sounds good to me, this gate keeper will have the power to defend the team
Si: Well… what I was about to say is such a person might be seen by some as having authority… and how will the team members feel about someone else deciding what is told to others?
Peter: Well, we could review their decisions and tell them what to do
Si: Yes… well, that might be seen as a lacking trust or even micro-manegement…
So you think you want to contract out some development work? – yes, you know this area is full of banana skins to slip on, and you know others have problems but you still want to do it.
And you want to contract it out to an “Agile” development shop?
There are no laws against opening a development shop – a digital agency, an outsourcer, a consultancy, call it what you like. That is the beauty of capitalism, it allows pluralism. The hard part is choosing one that is competent, some outsourcers are pretty awful.
Everyone who can spell “Agile” can claim to be Agile, and most hire a copywriter to give them an online spin so they all end up making the same claims.
Those who are half good can coach their staff in what to say. And in truth, most of them genuinely want to do the best possible job for you – and be agile too. But how can you really tell?
Well… when I’m being cynical I think you can’t. The only way to really tell is to give them some work and see what happens. Of course once you’ve engaged someone you need to be both legally and mentally prepared to walk away.
So to help you here are some warning signs that you have stepped on a banana skin and your supplier isn’t as good as you – and they – want to be. You might even say these are warning signs that they aren’t really Agile.
1) Customer involvement
They don’t want customer involvement. They don’t want your people on site. They claim that your people get in the way. They want to be left alone to do things.
Obviously I’m thinking primarily of actual Customers, Users, Product Owners, Business Analysts and so on. These people should be working closely with the suppliers people. They should have direct contact, they should be discussing stories.
If your supplier isn’t embracing your people and treating them as their own team members something is probably wrong.
The supplier should be challenging your people – after all the suppliers are the experts, if they are simply accepting everything you ask for then something is wrong.
The same is true of other people you might want involved: a consultant or Agile coach should be welcome too. And if you decide to ask a third party to inspect their development then they should be open to this too.
Naturally they should also be open about the code too. After all the code will be yours one day.
2) Regular demonstrations
The supplier should be providing regular demonstrations – “show and tell” – as a very minimum. Every couple of weeks I expect the supplier to show the latest work. You – and your people – should be able to see working software offering more than the previous demo.
If the supplier is NOT providing regular demonstrations then you should be worried. Likewise, if the demonstrations don’t show progress get worried. Most of all, if the supplier doesn’t want to talk about why demonstrations aren’t happening, or how they can show progress then something is wrong.
3) Release, release, release
Show and tell demonstrations are good but the real test is to release to live. Releasing all the way to your live system. You might hide it on an obscure URL that nobody knows, or call it a beta release or something, I don’t care, the closer they can get to real live the better.
You supplier should be releasing to a live environment – or an exact copy – very very regularly.
The longer the supplier goes without an actual release the more nervous you should be. Sure, once in a while things go wrong and nobody is perfect. They may go two weeks with nothing to show for it. I don’t like it – and neither should you – but an occasional gap is OK.
Going four weeks without a release… I suppose it might happen in the early stages of the work. But it is in the early stages that you most need reassurance that they can deliver something – anything!
Six weeks with no release… well here we are into “3 Strikes and you are out.” Sure they will be able to give technical reasons why things messed up three times in a row. But take it from me, something is wrong.
The longer they go without an actual release to more concerned you should be and the more you should offer to work with them to address the issue.
Eight weeks? – eject, eject, eject.
4) Show me the tests
Maybe this should be warning sign #1 but for this you need someone technical, someone who knows what a test looks like. In the show-and-tells your supplier should be able to show you automated tests executing. Not very exciting perhaps and certainly not meaningful to the business but if they can’t show you then how do you know they even exist?
And if your supplier doesn’t have an automated test suite then it is certainly time to get out.
Ultimately the system they are building is yours. Your people will need to maintain it, or you will need to pay someone else to maintain it. Without automated tests that is going to be hard. Skipping tests now might make it look like you are saving money but you are not, even in the short term the lack of tests will bite you hard, it will push up costs and destroy schedules.
5) “Feature complete”
The phrase alone should be a warning sign. Equally the words “75% feature complete” (or any other percentage) is a big red flag.
If the supplier doesn’t have a test suite, if they can’t show working (preferably releasable) code then its probable they are feature stuffing. They will say they are making progress because “60% of features are done”. They may even start to claim they are feature complete but remember: a feature without a test isn’t done.
A feature without a test is pure risk. At any time a defect can put a hand up and say “Fix me!”
An automated test isn’t a guarantee of bug free code but without automated tests then I guarantee you have defects waiting to appear.
If you are in a relationship exhibiting any of these five sign then it is certainly time to talk. It may be time to end. But how do you avoid getting into that position?
Let me be as clear as I can: both you and your supplier should prioritise working, usable, functionality over more functionality. As the old saying goes “A bird in the hand is worth two in the bush”, working, deliverable (even better released) features are the priority, there should be less work in progress, fewer incomplete features, fewer “almost done” and as few as possible defects.
While cynical me thinks you might not be able to avoid it that doesn’t mean you shouldn’t try, so here are four warning signs that you are about to step on a banana skin:
1) “Agile is not that different”
Don’t let them tell you Agile isn’t different. In many ways it isn’t but if a supplier is trying to persuade you that you don’t need to change the way you work then it is a sign that either a) they don’t appreciate the magnitude of the change or b) they will tell you anything to get the contract signed.
Since you want a supplier who will challenge you it might not be a good idea to hire one who doesn’t like challenging you or doesn’t prepare you for difficulties.
2) “We are certified”
An extension of warning sign #1 is that the supplier is proud of how certified they are: ISO-9001, PMI, PRINCE-2, CMMI – some in the Agile world would regard these certifications as warning signs in their own right.
Scrum Master Certified, Agile Project Manager Certified, Scrum Product Owner Certified: these are slightly better but anyone who can’t tell you the flaws in all these certifications has myopia.
Question any organization that offers up badges rather than working products.
(Disclosure: for better or worse I hold a couple of Kanban certifications, while I think Lean Kanban University have done a better job than many in making their certifications meaningful I don’t think they are a panacea either. Anyway, Kanban certifications aren’t as recognised as those I just mentioned.)
3) Fixed or long term contract
IT suppliers have a long history of locking clients into “fixed contracts” – fixed scope, cost and time. These contracts are utterly flawed. Anyone claiming they can fix everything is a charlatan. Give them a copy of “Dear Customer: The Truth about IT” (the Xanpan prologue) and say goodbye.
Similarly locking yourself into a long term contract with a supplier before you have done some work with them is a bad sign. Do a small piece of work, for a small fee, with your potential supplier and see if they are as good as they say.
In my experience the best – most “agile” – digital suppliers can pick and choose their customers. If your supplier needs you more than you need them then it is a bad sign.
Read more? Subscribe to my newsletter – free updates on blog post, insights, events and offers.