A well-functioning team will have you reaching for the moon

 
 
 

If speed is your goal, traveling alone may be the way to go, but for a journey that takes you further, it’s best to have friends by your side. “A well-functioning team allows you to always be yourself and give the work everything you’ve got,” says Anni Kälkäinen, head of 02’s development team.

 

Teamwork isn’t always easy. It wasn’t easy at school either, unless your group work team was led by Goody Two-Shoes, who did all the work so that the others didn’t have to and you were free to plan for the weekend’s epic party.

Good old Goody wasn’t a leader, though. They just wanted to finish the assignment quickly in a way that they preferred. They didn’t  pay much attention to the old adage which states that if reaching a destination fast is your goal, travelling alone may be a good idea, but that if you’re trying to reach for the moon, it pays to invite some friends on board.

Why do we need teams?

Behind a piece successful software is a successful team – or was that a single superstar developer? Rumour has it that a seasoned developer can in two weeks do the same amount of work that would take nine average developers six months to complete. What’s the point of even having a team, then?

We decided to consult a team leader.

“Teams are more effective than a single expert because teams can utilise their members’ special skills and knowledge. Our product development teams include skilled and committed software developers. My job as a team leader is to create the framework for achieving the desired result with the developers. I am responsible for things like specifications, schedules, UX, testing and release dates,” says Anni Kälkäinen, Technical Product Manager at 020202 Ratkaisut.

Anni’s job description is a combination of product ownership and team leadership. Rocket scientists have been involved in 02’s successful product development projects for many a year, so there must be some special magic in the air on both sides. (Psst! Here’s a related reading tip: Case: A service designed to restore your confidence in taxis)

So, take out your magnifying glasses, deerstalker hats and false moustaches, and let’s get cracking with finding out how a top team works.

Our little darlings and other people’s brats

According to Anni Kälkäinen, Technical Product Manager at 02, a successful product is created from the combination of expertise and good interpersonal relationships within a team.

It is not always possible to directly employ all the experts you need for one reason or another.

Software development can become smooth sailing once you bring in a consultant or two – or even an entire team. A consultant will also provide a significant amount of added value if the organisation is able to learn something from them so that a piece of the consultant’s soul know-how becomes a permanent part of the organisation.

Right off the (virtual) bat, Anni remarks that a team member’s status as the company’s own employee or a consultant is irrelevant to her.

“Consultants are an essential part of us, not a separate group. Who actually pays an employee is no concern of mine, as long as they have what it takes and get the right things done. The main thing is that the team functions well and that the product turns out good. And a product turns out good through the union of expertise and personal chemistry,” Anni summarises.

What does this mean in practice?

The word consultant sometimes assumes a bit of a negative connotation– especially if you believe the facts on chat forums. Contrary to popular belief, a consultant isn’t a parasite that infiltrates the company’s own employees with the sacred goal of filling all vacancies with new consultants and then demands a ransom for running the company’s vital functions.

Instead, a consultant is someone who wants to do their job quickly and well. To do this, they must have a good level of awareness of what is going on with the client. Being able to distinguish what is relevant in terms of business is an essential skill.

“I value experience, activity, the ability to become integrated into the work community and the desire to learn about us and our business. Rakettitiede consultants don’t just tend to their tickets with minimum effort but really understand us as a company,” Anni says.

“It's important that the consultant is knows our business, but we can’t assume that developers talk about, say, finances on a daily basis. It’s the team leader’s job to be in charge of the money and other resources so that the developers can focus on their own work,” she continues.

As a team leader, Anni acts as a communication channel towards strategic decision-making and thus needs to have the ability to talk to the team openly about the company instead of only technical specifications.

However, not all information, starting from the staff’s holiday schedules, is brought to the developers’ attention. According to Anni, it is important that the developers are able to concentrate on what they’re doing.

“We try to leave finding answer to any bigger questions to me so that the developers can focus on the development. You can only reach a flow state once you are able to focus without unnecessary messages and meetings.  The developers are naturally involved in specification meetings, and we go through any important issues together with the team on a daily basis as well as monthly with a larger group.

Development works because communication works as well

02’s teams are self-managing, and micromanagement is not part of the culture.

“We have the ability to act independently and take responsibility for large areas. I used to work in customer service at 02, so I understand things from many different perspectives,” Anni says.

In the specification phase, Anni asks the client a lot of questions so that she can form as accurate an image about what the client wants as possible. This allows facilitates the team’s problem solving.

Creating a functioning team is not easy (except perhaps for Jukka Jalonen).

“As clichéd as this may sound, the trick for creating a successful team is to choose the right people,” Anni says.

No product will see the light of day unless the developers have a firm grasp of their tech stack. In addition to the right kind of competence, social intelligence is one of the most significant hallmarks of a good team member.

Mere ‘don't be a dick’ mentality won’t get you far and  will at most help you avoid making the very worst mistakes. Having social intelligence, on the other hand, means knowing how to be there for others, how to step into other people’s shoes, and whether you can adjust your own actions based on what others need.

“In the world of work, you need to get along with everyone. If there is personal chemistry, that can be considered a plus, because it means working together is pleasant and even difficult things become easier to discuss. That’s what there being ‘no I in team’ means.”

All of this requires constant communication, trust and cooperation. Team members must have the courage to be honest and open.

“The developer must have the courage to question earlier specifications and make their own suggestions.”

There’s no need to be perfect, as long as you don’t pretend to be anything you’re not. A positive atmosphere gives both the team and the product room to grow and develop. If time people spend their time on demonstrating their own competence or wrangling with their team members, it will have a negative effect on cooperation and, subsequently, success.

“Trust is built through openness and communication. Being able to be yourself is important, so that you can give it everything you’ve got.”

Problem solving is a group effort

When software projects fail, it’s because the objectives have often not been stated clearly enough or the scheduling has been too optimistic.

“When you are doing something that has never been done before, it’s hard to estimate how much time it will take. That’s why we have created a more systematic process for scheduling: first, we estimate the duration of the work at a general level, after which a more detailed technical specification is broken down and reviewed together with the developers,” Anni explains.

Another big challenge is related to cause-and-effect relationships and risk management.

“Risk assessment is something you constantly need to do, so that if there’s a critical bug, you have a plan for dealing with it.”

“For example, with 02 Taksi we came across a case where we needed to quickly come up with a new way of processing a new type of customer and associated matters inside the service. As far as the user interface and integration were concerned, we started from scratch.”

He points out that in a well-functioning team, there’s no finger pointing at individual members of the team. Instead, teams learn from their mistakes and problems are solved together.

“To give an example, we once noticed an unfortunate bug in the service. We were able to create a fix in as little as 12 hours, because the team members were able to solve the demanding challenge together.”

There have been no problems at the personal level.

“The experts are so skilled and pleasant to work with,” Anni says smiling and continues by listing the best aspects of her work: “I’m glad that coder consultants enjoy working with us and that we are really getting things done. And what is more, the things we finish are also well functioning, meaning that things are going well for all of us.”

Are you looking for a reliable and top-rate partner to join your software development team? Look no more!

Read more:

Bonding in a top team

Client story: An app designed to restore your confidence in taxis

 
Rakettitiede