Agile Zone is brought to you in partnership with:

Tom discovered Agile Development in 2003 and spent the next 8 years, together with his team at www.biomni.com, improving their process and blogging about his discoveries. He has a particular interest in the psychology of keeping Agile agile and not letting it slip back into the evil old ways! He believes a Scrummaster should also be a developer and codes ASP.NET and C# most of the time. Tom is a DZone MVB and is not an employee of DZone and has posted 44 posts at DZone. You can read more from them at their website. View Full User Profile

The Day I Met a Customer

03.10.2014
| 8345 views |
  • submit to reddit

Like many developers, I’ve been protected from apparently difficult customers by my managers and left to get on with the important job of “writing code”. But this week I left our office and headed out to a technology park to work directly with one of our customers, and after a couple of days of understanding each others needs I’ve rarely felt so excited about “writing code”, because I know it will be valued.

XP & Scrum talk about a customer on the team but I’ve never seen it happen, well not a “real” customer. Proxies aren’t the same, particularly when they are neither dev or customer. With little understanding of either side, they’re stuck on the fence, helplessly documenting and relaying demands with seemingly unquestionable priorities to an increasingly demoralised team. It’s a world away from the customer and developers really understanding each other, so why can’t we do better than this?

Fear gets in the way

The developer fears the customer. I’ve spent years assuming developers would love to talk to customers given the chance, but when it came down to it, I’m seeing fear come between us. I feared being asked to do dumb things and not knowing how to say no. I feared having to explain failure and the difficult conversations that follow. Without letting myself be vulnerable I grew conservative, inward looking and start making assumptions based on what works best for me rather than what’s really needed.

The customer fears the developer. She fears being taken for a ride by these alien geeks and looking stupid when they try to dazzle her with their technical prowess. Who can blame them, I see defensive developers making an art out of making people looking stupid rather than be open and share what they don’t know.

The manager fears relationships. It sounds like a terrible thing to say, but it looks to me like many managers want people ‘under’ them to have exclusive relationships with them rather than each other. Holding tightly to our relationships lets us stay in control, but interesting things only happen when loosen our grip and let people collaborate freely.

Enlightenment

This is hard, but there is some enlightenment available to those willing to step into the unknown. When we open ourselves up to sharing and learning from each other, we can start to collaborate. Once we begin to understand and attend to each others needs we can start to create something that’s a bit special.

Time to build relationships

Can I propose that when it’s not possible to have a real customer on the team, that developers spends at least a couple of days a month with a customer and users? To help build the desperately needed relationships and mutual understanding, Scrummasters and Managers can help facilitate this relationship building. I think this collaboration is perhaps the most important thing we can do if we want to build something that has real value.

Published at DZone with permission of Tom Howlett, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Lund Wolfe replied on Sun, 2014/03/16 - 4:18am

The few times I've met the customer/client/user they have been excited to talk about what they want, what they want fixed, and what the priorities are.  The customer will try to get direct access to developers, too.  Management wants to keep the developer and customer separated with middlemen here and middlemen there.  I suspect it's mostly out of fear.  Some developers have a tendency toward complete honesty which scares the daylights out of managers.  Software development is supposed to be a very complex, mysterious, and expensive business.

I think the companies' intentions in having the developers meet the customer were more of a public relations stunt but direct communication between the user and developer can change the progress curve from flat to steep.  If communication/cooperation between a team of developers is good for progress, imagine its effect between the user/customer and developer.  Communication may also improve over time with the same improvement in results.

The problem with removing all the barriers is that change happens at the speed of light and predictability/certainty is no more.

Johnny Geek replied on Tue, 2014/03/18 - 12:38am

Absolutely right! It is always hard to build relationships especially if the is a kind of business between people. Yes, we have to work on it to do our stuff better.  Anyway it's better to have a professional person, manager who will manage the difficult situations. Many of developers just are not able to do that well.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.