It’s really challenging to stay productive individually in today’s environment, and the same applies to team productivity.

How do you help your team get more things done while team productivity is constantly challenged?

There are lots of ways to increase development speed without increasing the number of employees or the number of hours in the workday.

But using the latest, fanciest tools won’t make your team more productive. It’s just one element of the equation.

You not only need tools but rather a complex system that allows your developers to get the most out of their days and eventually, as a team, to reach their goals.

This post is here to help you significantly improve your developers’ productivity.

“Helping your team manage its time well is a critical factor for its success.” Jordan Cohen, Senior Director of Organizational Effectiveness, Learning & Development at Weight Watchers

“Take

Define productivity

In an economic context, productivity is how to measure the output that comes from units of input.

If you have a factory, then measuring productivity is quite simple. But when it comes to your team, you can’t measure productivity like a supply chain.

According to Charles Duhigg:

“Productivity is about making certain choices in certain ways. The way we choose to see ourselves and frame daily decisions; the stories we tell ourselves, and the easy goals we ignore; the sense of community we build among teammates; the creative cultures we establish as leaders. These are the things that separate the merely busy from the genuinely productive.”

Productivity is getting the results you want with less time and effort. It’s not about working harder but smarter.

Since your developers are not machines, measuring their performance is much harder.

Knowledge workers cannot be measured by the output of their productivity. Quality is often more important than quantity; therefore, the sheer amount of time spent on a project or lines of code written have little to do with how productive your developer truly was.

False hope of productivity

From the book called Peopleware, Demarco and Lister highlight seven false hopes of software development. From this seven, we highlighted four productivity-related false hopes you shouldn’t follow: 

  • There is one trick you missed that could skyrocket productivity: Probably, you haven’t missed that one thing. There is no silver bullet for productivity, but everyone keeps searching for it. Just one trick that makes your team’s productivity soaring! Never happens.
  • Changing languages will give you huge gains: Change of language won’t do much for you. It might give you a 5-percent gain but not more. Select the language that’s applicable to that problem, and your team can use it comfortably.
  • Because of the backlog, you need to double productivity: Finding your team’s focus is critical. Probably, it’s not a productivity problem but rather a backlog (prioritization) problem.
  • Your people will work better if you put them under a lot of pressure: This way, you can probably squeeze out higher performance from them, but they will enjoy it less.


Here are some tips that will help your team be more productive

Take a data-driven approach to increase team productivity

First, you need to see clearly where your team members spend most of their time. This will give you an estimate on the biggest time-wasters, and you can start addressing the most pressing ones.

You can ask your developers to estimate how they spend their time or ask them to track their workdays for a few weeks.

This way, you can see what activities developers spend the most time on, and you can even attach a financial value to it seeing not only the wasted hours but the money as well.

It’s recommended to do these surveys anonymously since this way, you can avoid distortions in the data.

Some team members might try to “trick” the system, showing more work than they actually did.

This could ruin the whole point of data collection, and what you really need is data that reflects reality.

“Try talking with developers about roadblocks they encounter in their work - you could get some really interesting feedback.” Valerie Wilson

See the big picture: where is your team heading?

Goals need to be clearly articulated; otherwise, there is confusion. Your team members might get busy spinning their wheels without achieving significant results towards a goal.

A clearer plan means an increased likelihood of achieving your goals, so setting goals is critical for your team’s productivity.

Define goals: Make sure these goals are SMART and estimations are done with your team. Programmers seem to be a bit more productive after they’ve done the estimate themselves, compared to cases in which the manager did it without even consulting them. SMART goal are: 

  • Specific
  • Measurable
  • Achievable
  • Realistic
  • Timely

Determine the skills required to accomplish this goal

Break down this big goal into smaller milestones

Assign tasks to team members (for sprints)

 This will set clear goals and determine exactly what your team needs to work on.

Set individual expectations

Have a 1-on-1 conversation with your team members. Tell them the priorities and determine their roles and expected contribution to achieve the team’s goal.

Frequent 1-on-1 conversations are the best ways to give people feedback and help them managing their time effectively. This way, your developers have the chance to improve their performance.

If people feel overloaded, stressed or pushed in too many different directions, that tension will come through.

But here is one important thing...

No micromanaging. Are you? This blog post helps you decide

Leaders who micromanage, further increase productivity challenges.

Let them figure out how to get there. Instead of giving direct orders, ask questions and lead the conversation; this way, your developer will figure out the possible solutions. She will feel the goals and required actions more for herself.

Further resources:


Feedback loops to increase team productivity

Team leaders have to give feedback to team members as frequent as possible, helping them further improve and make sure they stay productive to reach the team’s goal.

Having weekly or bi-weekly sprints can help your team stay on the right track and provide info about the current state of the project, suggestions on allocating time better and where to focus.

This feedback can happen on different levels:

  • Weekly retrospective meetings: held at the end of each sprint reviewing what went right and bad during the project. This is a great way for the team to take a bird’s-eye view on the project and learn from the mistakes.
  • 1-on-1s: personal, informal chat with team members. See the previous section.

Eliminate or minimize unimportant tasks

The word “meeting” can be a synonym word for time-wasting. It’s not surprising since meetings are among the top time-wasters.

But the thing is that you can’t really avoid having meetings, but there are a few things you can do:

  • Reduce the number of meetings
  • Set a time limit
  • Make sure to have an agenda
  • Close every meeting with an action plan

Here at Coding Sans, we have a 30-minute limit for every meeting, enticing team members to be as effective as possible.

“The Golden Rule of meetings,” says Cohen, “is to make sure you have a clearly-defined purpose for each one.” 

Always have an agenda before you set up a meeting. This sets a clear path for the conversation and anyone who takes part has a chance to prepare in advance. This could speed up the meeting and make it more effective.

Once the meeting is over, make sure to have exact actions assigned to team members. Never finish a meeting without agreeing on the next action steps. Otherwise, you will end up having meetings for talking about having meetings. So meta.

Daily standup meetings are great ways to discuss the progress of the project, focusing only the current sprint. Standing actually reduces meeting time by 25%.

During these meetings, every project member has to answer the following three quick questions:

  • What did you do yesterday?
  • What are you doing today?
  • Are there any obstacles that prevent you from achieving your daily goal?

These daily meetings are pretty good for three reasons:

  • They provide an opportunity for daily feedback
  • They keep the project on track and focused
  • They make sure every stakeholder of the project is on the same side


Communicate, communicate, communicate!

While it’s recommended to decrease the number of meetings, you still have to make sure information flows seamlessly within your team.

First, there needs to be a common communication platform available for every team member. This ensures that communication takes place in one channel and is not fragmented into other ones.

But do not choose email as the central communication channel.

Just imagine a long email thread where it is hard to get any information effectively. You literally need to launch an expedition to find the information you need.

We love using Slack, but you can use Hipchat or Rocket chat as well. The idea here is to have a central platform for your team's communication that allows you to categorise conversations into different channels.

The best thing is that Slack can be integrated with other apps, such as GitHub and Google Drive. In this post, you can find the coolest Slack integrations recommended for software teams.

Quiet, distraction-free environment

“There are a million ways to lose a workday, but not even a single way to get one back.” - Peopleware 

It takes 25 minutes to recover from distractions and get focused again.

Depending on what type of workspace you have, there are different kind of distractions that could distract your developers from work.


Everyonecanhear 1

Source: Hbr.org

In software development, it is proven that a quiet environment increases concentration levels and productivity. If you can’t change the environment where your developers work, you can give them noise-cancelling headphones that filter out sound-related distractions.

“Organisations that focus on creating a work environment that is conducive to the quality of output rather than the quantity, will enjoy higher rates of production.”

Give incentives and motivate developers

Studies show that a well-motivated software development team that follows time management could produce ten times more than a team with no motivation. 

When developers (and in general employees) are motivated, it leads to increased productivity. Your team members need to feel like they’re part of something important and they have significant impact on the project and business.

According to the State of Software development report, here are the top methods leaders apply to keep developers motivated:

Offering some incentives will help your developers stay motivated. Since every developer is different, you need to figure out the best incentive for them. Everyone works better if there is a great incentive involved. 

Rethink your performance management system

If you have annual performance reviews, you should probably rethink them.

The current performance management system should be transformed into a nimbler, real-time, and more individualized one that focuses on fueling performance in the future rather than assessing the past.

These informal conversations serve as a starting points when it comes to midyear and end-of-year review for promotion and compensation reasons

“If you want people to talk about how to do their best work in the near future, they need to talk often.”

The best team leaders conduct regular check-ins with each team member. These brief, informal conversations allow leaders to give feedback on team members’ work, review priorities and also provide course correction if necessary.

If you want to learn more about performance management, check out our post here.

Conclusion

It’s really easy to get distracted during work, and getting back to focus takes around 25 minutes. As a tech leader, there are certain things you can do to help your team become more productive. Make sure your team’s goals are clearly set and team members are involved in the estimation.

Since every tech company follows agile methodology, your performance management should too. Have frequent 1-on-1 conversations with your team members so you can help them improve their productivity, and through frequent feedback, they can improve much faster.

Apart from clear goals and frequent communication, your work environment has to support productive work. If it’s not possible to create a quiet environment, you can still buy some noise-cancelling headphones for your team members.


Further reading:



Developer team performance guide