Software Outsourcing Team Performance Metrics

A common challenge organizations face when outsourcing software development projects is figuring out how to track and measure developer performance. Since you can’t really monitor the outsourced team’s performance on a full-time basis, it’s critical to develop a system for determining whether your investment is justified.

Performance, being a subjective quality, means there’s no one metric that will offer a definitive answer as to whether or not your outsourced team is delivering the returns you were hoping for. However, depending on your goals, there are certain areas you can focus on to bring you closer to performance measurement of the outsourced developers as a whole.

Below, we’ll look at some examples of metrics for team performance you can use to make sure your outsourcing team is delivering the best possible results.

Rethink What “Counts” as Productivity

Many organizations working with outsourced teams struggle to find an efficient way to measure team productivity. Without being able to “see” an employee in the workplace, companies must rethink how they measure team productivity.

As Tiempo’s Rodolfo Carmona points out, “there’s no magic formula when it comes to performance metrics. Each company has its own style, culture, and values. Based on that, companies need to work on defining what high performance means to them and derive hard numbers that will give them a way to measure how well goals are being met.”

Technology with “user productivity reports” can be invaluable.

However, it’s important to understand that these tools shouldn’t be used for “spying” on your developers. Instead, use them as an investigative tool that aims to answer specific questions about your process. This can include figuring how much you’re “spending” on specific tasks to determine whether you’re getting the most out of your budget.

Per Octavio Islas, assuming you’re using the Agile methodology, the following metrics are useful to evaluate team performance:

  • Sprint burndown to report the complexity of work performed throughout the sprint based on story points.
  • Team Velocity to account for the “amount” of software your team completes during a sprint.
  • Cycle Time for the total time that elapses from the moment when the work is started on an item (ticket, bug, task) until its completion. Angel Almada adds, “At the team level, everything gets measured over a team’s velocity.”
  • How long does it take to go from idea to delivered software? Cesar Guttierez recommends tracking “tasks resolved within a specific period (iteration). Hours invested in a project task from beginning to end. Average time from designing to delivering software.”
  • Amount of deliverables submitted on-time and without the need for re-work. In other words, is your team “getting it right” the first time? Are they able to work fast without compromising quality?

Additionally, look at the autonomy of the team. Do they have the knowledge to take responsibility where possible, ask for help or additional information where appropriate, and reach out at the right moment? While autonomy may prove difficult to quantify, waiting too long to ask for help can delay a project, and an inability to make decisions means internal teams can’t focus on their own work.

Customer Satisfaction

Miguel Peraza says, “In my experience, business leaders need to sit down with their technical counterpart to define the skills they’re looking for in a given project or product.”

In other words, make sure everyone is on the same page when it comes to delivering the experience your customers are looking for. From there, you can define key metrics and track changes over time.

Jaime Salame says, “we run surveys year-round and collect NPS scores from clients. Because we track performance by sprint, we present the results to our clients during quarterly business reviews to demonstrate the impact on customer satisfaction.”

This process allows us to connect satisfaction metrics to the “hard numbers” like revenue or growth. Here’s a look at some of the key metrics you’ll want to track:

  • Direct feedback from end users. Support tickets, feature requests, interviews, etc. Considering anything where consumers tell you exactly what they want can help you identify which tasks to prioritize to maximize impact.
  • Surveys. NPS, CSAT, and CES reports allow you to capture numerical scores for specific products/experiences.
  • Sentiment. What is the general “feeling” about your product, service, or brand?
  • Sales. How have updates/releases impacted sales?
  • Churn and retention rates. How have retention/churn rates changed?

Quality

According to Francisco Carvajal, you’ll want to compare “planned vs. delivered work vs. changes in priority.” Is there a disparity in what was planned vs. what was delivered? If so, what went wrong?

Metrics for team performance should ultimately connect to a deeper discussion about the development process. What challenges got in the way of delivering the desired outcome?

Track the following metrics as part of your quality evaluation. You’ll also want to dig deeper to figure out what factors are influencing the results.

  • Bugs Average
  • Reliability
  • Code Coverage
  • Lines of Code
  • Production Issues
  • Penetration Test
  • Number of Test Cases Executed

Octavio Islas also notes that the metrics you use to measure team performance should also include quality of team communication.

Look at factors like English proficiency, social/soft skills, and cultural differences. Weigh them against more tangible metrics like the ones we just mentioned. If you’re experiencing more bugs or production issues than what’s considered “normal,” you might then look at team communication to determine whether a lack of information or a language barrier could be to blame.

Ivan Alfonso Rodriguez Teros weighs in from the provider perspective. He says, “as a consultant, you should seek to understand the current situation by listening to as many stakeholders as possible. Define a common objective through a series of interviews, questions, and presentations. Afterwards, it is all a matter of iterating to find the most viable solution to the problem.” Essentially, you want to work with people that really try to understand the situation and arrive at the best possible solution.

Alignment with Goals and Expectations

Aaron R. says, “the key is to find a partner vs. a service provider. With a partner, you can blend your practices (for the better), easily communicate up or down the organization. You want to make sure that they have a proven track record and that the companys’ values are aligned.“

Ideally, the metrics you use to measure team performance should tell you whether everyone is aligned around one unified purpose.

  • Is there consensus among all team members that the final product is in alignment with the goals, requirements, and quality standards as they’re defined in the original business strategy?
  • Abel Gonzalez Garcia advises organizations to measure alignment by drilling down to the individual level. Ask yourself, “did the team accomplish the objectives established for every member of the team? Does it hold true, both in terms of the quality of deliverables and how efficiently that work was completed?”
  • According to Denisse Vega, “In Agile, it’s all about end-customer satisfaction. It is important to make sure there is enough information available that allows the team to understand the usage and expectations of the end-user.” She adds, “one big thing that often gets left out of the alignment conversation is alignment around the client’s overall goals. It’s important to understand the general objective for the period and the key results they’re trying to achieve in order to assign and prioritize the right tasks to team members.”

Big-Picture, Metrics for Team Performance Should Measure Higher-Level Engagement

With development teams, performance metrics are often used for measuring lower level tasks, velocity, number of bugs, deliverables, you name it. These can have a real impact on results and they’re a valuable source of quantifiable data.

According to Tiempo Software Engineer, Paul Estrada, we should also look at higher level metrics that are measurable when teams achieve higher level engagement. Examples include:

  • Is your team only fixing bugs and implementing pre-defined features? Or are they actively analyzing requirements, planning and implementing new products from start to finish?
  • Does your team perform minor bug-fixes support, or do they also collaborate on major/critical bugs and release support to help with users’ SLA?
  • Is your team exclusively focused on small projects, or are they working on more complex tasks over time?
  • Does the outsourced team only receive directions from your internal engineering team, or do they actively contribute to architecture discussions, improvements, and development plans?
  • Is the outsourced team directly helping to increase revenue, or are they meeting other goals over longer periods?
  • Does the outsourced team contribute to the organization’s collective knowledge, or are they just a silo nobody knows about?

Depending on how you answer these questions and how much responsibility you allow to outsourced teams, you’ll get a team with lesser or better performance based on your needs.

Tiempo’s high-performing teams work closely with clients, using Agile best practices and strategic planning to achieve critical business objectives. Contact us today to learn more about our process and how we deliver exceptional client outcomes.