How a client can keep control of developers: key metrics and useful services

What technical debt is and how a client can control its impact on a project. Metrics, services, and practical management recommendations.

  • How to control an IT contractor
  • Technical debt
  • Work to quantify project quality (technical debt) includes:
  • Business metrics also help quantify technical debt:

25.10.2019 Let's look at the key metrics and a useful service for controlling and managing project quality.

How to control an IT contractor

Technical debt APM services Final recommendations for controlling development efficiency Reading time: 6 min. It is difficult for a client to control quality in development because the product itself is a complex system with many elements. Quality monitoring tools exist, but they are too technical, mostly aimed at debugging rather than control, and they do not take business metrics into account.

In addition, not all contractors can deliver true project transparency. Fortunately, there is a way out: in this article, we share specific recommendations on which metrics and services help keep the entire development process under control.

How to control an IT contractor

The success of each project is defined differently.

For an online store, financial results matter most (profit, profitability).

When developing a B2B portal, we will track what share of counterparties uses it.

An automated document processing system must deliver a certain accuracy percentage. And so on - the key is to agree upfront on which metrics will be the target. At the same time, you cannot define only the overall success of the project and ignore the process. Why?

Without understanding whether the development process is running well, it is impossible to identify clear patterns, understand the real causes behind changes in metrics, or assess how much of it is due to IT specialists and how much to other factors.

Conversion dropped, and who is to blame: did marketers run a poor campaign, did seasonality play a role, or did the contractor increase server 500 errors in the latest release?" - Andrey Putin,

CEO of KT.Team Moreover, without a quality process, it will be very difficult to achieve a quality result.

The quality of the process is indicated by the following metrics: release static analysis (number of errors in code and front end; we recommend using the following standards and tools: PSR-2, EcgM2, ESLint, W3C, PageSpeed); JavaScript reports on the number of errors plus LogReport; APM normal versus anomalies (these are tracers that show, in milliseconds, how each part of the code behaves, normally or with deviations, and into which you can drill down to

analyze the causes of anomalies); 404, 500, and other errors over time; metrics that are unique to a specific CMS; release discipline (release frequency, schedule adherence, number of errors in releases); audit results (they should be performed regularly, for example once a month).

These metrics can be grouped under one concept:

Technical debt

. The problem is that company leadership usually looks only at the final result and does not know the project's actual technical condition. The main reason is that contractors do not provide quality reports, so the project becomes opaque. As a result, the client does not know all the risks and cannot communicate them to investors.

As a result, the project's business model does not account for all constraints, and the labor and financial costs of handling the project's technical debt are not planned in advance.

Technical debt

- a metaphor for all accumulated issues in an IT project that can be fixed. Debt does not always mean developers did a bad job. It usually appears when working under strict constraints, either on deadlines or on budget. And since business always has constraints, so

Technical debt

it is always there; it can be tracked, controlled, and reduced, but it cannot be fully eliminated. For example, we worked with a large e-commerce client who simply did not pay for hosting in time, while the project was on fire, and we had to implement an inelegant solution on the cluster, rebuilding it on a less elegant Docker setup.

We tell the client: "There is technical debt here, but we delivered on time. Once the peak season is over, let's rework this solution."

Another case: the code worked perfectly, but developers noticed performance anomalies.

This means that an inefficient solution was used somewhere, creating technical debt.

Why this happens

That means there were time or budget constraints. It needs to be reworked," said Andrey Putin, CEO of KT.Team

The key with technical debt is to quantify it, assess its scale, and plan work to reduce it.

Work to quantify project quality (technical debt) includes:

collecting performance parameters through apminvest.com, newrelic.com, and AppDynamics; by such parameters we mean server response time and a collection of application traces for at least the last 24 hours; the queue of tasks in development and those resolved today; monitoring the number of errors, from static analysis errors to server errors; monitoring user errors and error reports from the call center, if there is a call center or support hotline; tracking the number of procedures (processes) being followed.

Assess where AI can deliver impact in your process

Business metrics also help quantify technical debt:

  1. messages from operators (#error #unconfirmed #confirmed) per day; canceled orders per day; order anomalies per day (deviations from the norm in time, average check amount, etc.); closed tasks per day.

  2. There are dedicated tools for controlling and managing website performance: APM application performance monitoring systems. APM services

  3. The most well-known APM system in the world is New Relic.

  4. It provides the following performance indicators: response time, throughput, error rate, and so on; external service execution; the most resource-intensive transactions; cross-application tracing; transaction failures; deployment analysis, history, and comparison.

  5. Its drawbacks are the high price and the inability to fine-tune it, since it is an off-the-shelf solution that is the same for everyone. At KT.Team, we use our own product that replaces New Relic and gives us broader capabilities: APMinvest.

  6. This system is useful not only for quality management, but also for auditing the technical condition of a website, including quantifying technical debt.

  7. Since the main goal of business is profit, it would be useful to see the impact of technical metrics on finances immediately, in real time, and as clearly as possible, in the form of a clear analytics panel or dashboard.

  8. This is also implemented in APMinvest," said Andrey Putin, CEO of KT.Team

Examples of questions APMinvest can answer

What is the actual server uptime

When do performance problems occur? Do server slowdowns coincide with peak audience activity? How does this affect conversion?

Monitoring PageSpeed score: how does load speed affect your company's revenue? How optimized is your project right now?

How do static analysis results, the number of log errors, and data from Google Analytics or your CRM change after each release?

Dashboard parameters can be customized for a specific request to account for any relationship between technical and business metrics. This is very convenient and puts IT work under full, objective management control.

What does this give the client?

Rapid error detection

Improving development quality: fewer errors, less technical debt, and lower risk of poor site performance after updates.

A full project diagnosis for chronic errors and technical debt that hinder the platform's efficient operation.

Project health monitoring, instant alerts about what matters

A project chatbot is created in Telegram, where messages about all errors are sent and the errors are grouped by type.

A common language for task setting that is understood by all employees and improves team efficiency.

Development at a steady and efficient pace.

Final recommendations for controlling development efficiency

  1. Development quality must be controlled to avoid losses and save resources.

  2. This is easy to do: there are dedicated application performance monitoring services such as New Relic, APMinvest, and others.

  3. Use them in your projects. By the way, all KT.Team clients get access to APMinvest. Why?

  4. This helps us do the work as well as possible.

  5. Clients see that the project is transparent, which increases their trust; developers see that the results of every action are visible and work more responsibly; the client's technical team speaks the same language as the development team because they agree upfront on which metrics to track and what values will count as normal.

  6. To learn more about APMinvest, ask a question in the comments - we will definitely reply within one business day.

Discuss the article: How can a client control...

Send via: