Join our Newsletter — 33% off our NHI Course
Home› FAQ› Governance, Ownership & Risk› What do teams get wrong when they customise…
Governance, Ownership & Risk

What do teams get wrong when they customise quality profiles for a language?

← Back to all FAQ
By NHI Mgmt Group Editorial Team Updated September 24, 2026 Domain: Governance, Ownership & Risk

A common mistake is turning on too many rules without considering developer workflow and noise. If the profile becomes overly strict or noisy, teams start ignoring issues and the control loses effectiveness. Another mistake is copying a built-in profile and then failing to maintain it, which leaves the ruleset drifting away from current best practice over time.

Where quality profile customisation goes wrong

Teams usually get this wrong in two ways: they optimize for coverage instead of signal, and they treat the profile as a one-time setup instead of a maintained decision. A custom profile should reflect how the language is used in that codebase, the team’s tolerance for false positives, and the rules that actually drive better fixes. If those choices are disconnected, the profile becomes noise rather than guidance.

The most common failure is overfitting the profile to a theoretical standard without checking whether developers can act on the findings. A rule that is technically valid but repeatedly irrelevant creates alert fatigue, and once that happens the team stops trusting the profile. The better test is whether each enabled rule improves code quality in a way the team can sustain.

Another mistake is copying a built-in profile as a starting point and then never revisiting it. Language defaults, framework usage, and team conventions change over time, so a profile that was reasonable six months ago can become stale. When that happens, teams keep enforcing old assumptions while missing new patterns that matter more in the current codebase.

Why too much strictness usually makes the profile weaker

Customisation often fails because teams assume more rules automatically means better quality. In practice, a dense profile can hide the issues that really need attention, especially when developers are flooded with low-value findings. That changes the profile from a prioritisation tool into a compliance exercise, which is usually when adoption starts to drop.

Noise is not just a usability problem; it changes behaviour. When engineers learn that most findings are ignorable, they begin to skim all findings, including the important ones. A quality profile only works when the team can distinguish genuinely actionable issues from style or preference-based checks, and when the profile supports that distinction consistently.

Built-in profiles also tend to be generic by design, which means they need context before they are useful. A rule that matters in one stack or repository may be unnecessary in another because of different frameworks, architecture patterns, or code ownership. The mistake is not customising enough, but customising without a clear standard for what should remain on, what should be tuned, and what should be removed.

What good customisation looks like over time

Effective profile management is iterative. Teams should review whether a rule still produces useful findings, whether it is being waived too often, and whether it aligns with current coding patterns. That review needs to happen often enough that the profile stays current, but not so often that every team makes ad hoc edits without a clear reason.

The best profiles are usually boring in a good way: they are narrow enough to be trusted, stable enough to be understood, and flexible enough to evolve. Teams should prefer a smaller set of high-value rules over a long list of marginal ones, especially when the codebase already has mature review practices. The goal is not to maximize rule count, but to improve the quality of decisions developers make while coding and reviewing.

Profiling also works best when there is explicit ownership. Someone has to decide which rules are mandatory, which are guidance, and which are temporary exceptions. Without ownership, the profile drifts by accumulation, and that drift is hard to reverse because no one wants to remove a rule once it has been added.

Practitioner Guidance

What to prioritize: Start by identifying the few rules that catch high-value defects in your codebase and produce findings developers actually fix. If a rule mostly generates discussion or waivers, it is a candidate for tuning, scoping, or removal.

What to verify: Check the profile against recent pull requests and known defects, not just against the default vendor or tool preset. You want evidence that the enabled rules reflect current language usage, framework conventions, and team workflow rather than inherited assumptions.

Common mistake: Teams often treat customisation as a one-time hardening step, when it is really a lifecycle decision. A profile that is not reviewed and pruned will usually drift toward either noise or blind spots.

Practitioner takeaway: The best custom profile is the one the team will keep using, which means it must stay relevant, explainable, and maintainable as the codebase and delivery process change.

Deepen Your Knowledge

Sign up to our weekly newsletter — get 33% off our NHI Foundation Level Course

    NHIMG Editorial Note
    Reviewed and updated by the NHIMG editorial team on September 24, 2026.
    NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org