Tag Archives: remote-working

How do you create successful software development teams? (Part 2: Outsourcing)

By David Bicknell

I recently reported on a roundtable organised by the Dutch software specialist Software Improvement Group (SIG) which set out to determine what makes successful teams in software development.

The roundtable featured two specialists in creating specialist teams: Andrew de la Haye, chief operating officer, at RIPE Network Co-ordination Centre (RIPE NCC), one of five Regional Internet Registries (RIRs) providing Internet resource allocations, registration services and coordination activities that support the operation of the Internet globally; and author and management expert Kevan Hall, chief executive of Global Integration.

In Part One of the discussion, which focused on creating excellent teams in software development, we examined teamwork, Agile empowerment, a commitment to quality, remote working and getting the right level of teamwork.

In this part of the discussion, we focused on managing multi-disciplinary teams, structure, reducing waste, and outsourcing.

Managing multi-disciplinary teams

Kevan Hall pointed out that when you’re working in a multi-disciplinary environment – for example, if you’re building a very complex piece of kit with tens of thousands of bits – there is a point at which you need to have some co-ordination.

But he added, “There is also a big part of the work where I’m an engineer off doing actual work or I’m somewhere writing code. And that’s not teamwork.  If we have this mentality that everything we do is a team, then we can’t make a decision until the next meeting. I distinguish between a team, which is kind of truly interdependent i.e. if you’ve got multi-disciplinary skills, R&D etc,  you really need to work collaboratively, tightly, and you can’t do it on your own, you need teamwork. But most work isn’t like that: most work is me doing my stuff.

“And therefore a simple hub and spoke group of organisations might be much simpler to do that. When you’re working globally, or virtually, that’s much, much easier because in a hub and spoke structure, if I want to talk to you, I just pick up the phone.  If I’m in a team, I have to go into all your Outlook diaries and hope that in the next month, you’ve got some time where we can at least all get on the phone.

“So hub and spoke is much simpler for virtual teams and for remoteness and those kind of things. So when we are  working collaboratively that’s when we really need to focus because it’s really expensive and quite hard to do.”

Waste reduction and communication

Andrew de la Haye from RIPE explained the need for what he describes as ‘waste reduction.’

“One of the things we do as standard culture in our software teams is every three to four months we do waste reduction sessions. So in the old methodology, you do retrospectives. You start a sprint – a sprint is two weeks – you deliver to the business, and after that, the team sits together and then they discuss what went well and what should be improved in the next sprint. And as a larger group in the whole department, we get them together once every four months for an hour or two at the most and we say, ‘OK. Where is waste? Where do we see waste?”

“And most of the time it is not coding or the real work they do, most of the time it is in the communications area.  And we try to get rid of it. So we changed the team from 2 x 6 to 3 x 4 people. It’s just part of our being to look at the waste we created after the last period and where can we improve. And they became  much more efficient and effective.”

According to Kevan Hall, one of the things you often see with teams is the ‘community decay curve’.

“When you have a team, virtual or not, you have a kick off and everyone’s very enthusiastic. And then you start doing the work, and it’s quite hard. And then you come to the end of something and you’ve succeeded and you have a celebration. Successful virtual teams create a rhythm. For our teams, it’s a year. You have a long old slog and there is a ‘periodicity’ of communication. A software team is perfect because you have a closure, a learning opportunity, a celebration and then you go and do it again. If it’s longer than that, then you have to think about other things that are going to have an impact, like a conference call or a coaching call.

“Even worse, if you’re managing a remote organisation or a remote supplier, the risk is that you only call them when you need something or you’ve got a problem. So they don’t really look forward to your next call. ‘Oh, no. Look who’s on the phone.’ You demotivate people just by your number coming up. It’s about keeping that rhythm. It’s a bit like an ECG. You’ve got to create those peaks to keep motivation high.

“Social media has a very powerful role to play in virtual teams, because it’s much easier to share the other things that I’m doing rather than just project updates. I also like Instant Messenger because if you have people in Asia you can see that they’re ‘on’ and to me it’s just like passing someone in the corridor. It’s the virtual coffee machine. Occasionally, people will see say, ‘If you’re there, can we have a quick call?’ And it’s another part of the rhythm for me – like keeping the heartbeat going.”

Outsourcing

“I used to sell a lot of outsourcing,” said Andrew de la Haye. “But I haven’t seen it really working (teamwise). One of the issues with outsourcing is the commitment bit, which is very important in my teams. My people are committed to me because they know me, and they know what the company stands for. If you outsource to somebody, who are they committed to? You hope that they are committed to the organisation they’re working for, but they’re certainly not committed to you. And they are probably more committed to themselves, especially in India because people move around like crazy.

“So one of the issues with outsourcing is the lack of commitment, I think. I don’t see a solution to that. There are two ways of outsourcing: outsourcing commodity items, where there is a new version of SAP and people need to upgrade. That kind of stuff. That’s good enough – it will work fine. But if you truly need to build applications and you need to work together with a company to create business value, and that’s what a lot of outsourcing is about as well, I haven’t seen it working.

“I tried it again last year, and I gave a company a chance. I had a really good relationship with this consulting firm and they told me that they had an excellent team in India, and ‘Let’s try this project just for a three-month trial.’ And it was more or less the only project in the last five years that went belly-up.”

As Kevan Hall pointed out, when you’re managing across distance, culture, time zones, working through technology, and commercial considerations, outsourcing is so much more complex.

“One of the things we see a lot with clients who have outsourced is what I call the balance of trust and control. Because I don’t know you and I don’t trust you, I tend to control you. And so we go out to India and we have these incredibly heavy processes which we beat you up to make sure you follow without any sense of initiative or change, and then you start complaining that the Indians don’t have any initiative and don’t innovate.

“Well, you’ve told them not to and they’ve very smart people, albeit with higher turnover, and then you’re finding that problem of ‘how do we build trust?’ So many organisations outsource processes and spend an enormous amount of time on process, but they don’t have the travel budget to even go and meet the people who are doing a service for them.

“So how are you ever going to build a relationship? You wouldn’t do it in your own business. So doing it in an even more complex environment…how’s that going to work?”

“You have to look at the type of activity being outsourced,” said Dr Joost Visser, SIG’s Head of Research . “There is a lot of success in outsourcing in all sort of activities. In software application development where you are trying to create business value and where people are being creative, like in the automotive industry, thinking of the next engine or concept car, I think that by basically taking the team you need and pulling it out over locations and over time zones, you’re creating a challenge for the teamwork you need for that activity.”

There is another factor: the customer, suggested Kevan Hall.

“If you decided that you’re going to bring your development team into one place and therefore take away one barrier to complexity, which is distance, which makes a lot of sense, then aren’t you just exporting that level of complexity to the customer? Because they still have to manage with the fact that they still have stakeholders spread around the world in different time zones and different cultures. And they’ve got complex needs. It’s OK for you now. But is that the right thing to do for the customer?

“Human Resources has done that. They’ve gone to specialist centres and business partners. And all that’s done is that the business partner has to manage all the complexity rather than the organisation.”

How do you create successful software development teams? (Part 1)