Skip to main content
The Hard Parts.dev
RF · Red Flags Issue 01

Red Flags

Early-warning signals across code, teams, process, leadership, and AI-enabled work: what you notice, what it usually means, and what to check next.

Entries

42

Classes

05

Classes

  • code
  • team
  • process
  • leadership
  • ai

Every entry is a named signal, not a diagnosis. The page opens with what you would actually notice, and walks you through what it usually indicates and what to check next. Scanning for a pattern you've half-seen in your own work should land you on the right entry in under a minute.

Two-axis index Layer × signal type Rows are where the signal appears. Columns are what kind of signal it is. Every entry has exactly one of each.
Layer ↓ Signal type → Structural 03 Behavioral 11 Delivery 09 Communication 04 Architectural 04 Operational 02 Ai Quality 09 Total 42
Code 10 03 02 04 01 10
Team 08 05 02 01 08
Process 10 01 06 01 02 10
Leadership 07 05 01 01 07
Ai 07 07 07
  • Severity key

    • low
    • medium
    • medium-high
    • high
    • critical

    Chip = card fill on the grid.

  • Frequency

    How often this red flag actually shows up across teams: from occasional cameos to chronic patterns.

    increasing Not a point on the scale. A trend. Flags signals whose prevalence is rising (often AI-era).

    • rare
    • occasional
    • common
    • very common
    • universal
  • Detectability

    How easy the signal is to miss: from obvious if you look once, to quietly normalized by the organization.

    • obvious
    • visible-if-you-look
    • subtle
    • easy-to-normalize
  • Confidence

    How sure we are this reading of the signal holds up across contexts: provisional vs. repeatedly observed.

    • low
    • medium
    • medium-high
    • high
Layer 01

Code

10 signals
RF-01 Architectural

Nobody can explain this module simply

A module performs important work, but nobody can describe its purpose in plain language without hand-waving.

Freq · very common
RF-02 Structural

One file does too much

A single file accumulates unrelated responsibilities and becomes a local gravity well.

Freq · very common
RF-03 Architectural

Changes always touch too many places

Even ordinary changes require edits across many files, layers, or services.

Freq · very common
RF-04 Structural

Naming is generic where understanding is weak

As conceptual clarity drops, code and design names become broader and more vague.

Freq · very common
RF-05 Architectural

Business logic leaks across layers

Rules and decisions show up in controllers, mappers, jobs, UI, SQL, and integrations instead of one clear home.

Freq · common
RF-06 Delivery

Tests are hard to write for normal changes

Ordinary work feels harder to test than it should, even when the change itself is not unusual.

Freq · very common
RF-07 Delivery

End-to-end tests carry all the confidence

The team relies mainly on slow, broad tests because lower-level confidence is weak or absent.

Freq · common
RF-08 Structural

Shared utility layer grows faster than products

The common or shared layer expands aggressively while real product or domain code remains less stable or less clear.

Freq · common
RF-09 Architectural

Integration contracts are implicit

Systems depend on each other through assumptions that are not clearly documented, versioned, or enforced.

Freq · very common
RF-10 Ai Quality

Generated code is merged without deep review

Code enters production mainly because it looks plausible, not because reviewers truly understand it.

Freq · increasing
Layer 02

Team

08 signals
Layer 03

Process

10 signals
RF-19 Delivery

Work enters faster than it leaves

Incoming work volume consistently outpaces completion, so queues, context switching, and churn grow silently.

Freq · very common
RF-20 Delivery

Everything is urgent

Priority loses meaning because too many items are treated as immediate and exceptional at the same time.

Freq · very common
RF-21 Communication

Scope changes without decision records

Meaningful scope shifts happen, but nobody captures who decided, why, or what trade-off was accepted.

Freq · common
RF-22 Delivery

Dates are fixed but trade-offs are implicit

A delivery date is treated as immovable, but the corresponding trade-offs in scope, quality, or risk are not stated openly.

Freq · very common
RF-23 Delivery

Tickets substitute for thinking

The organization mistakes ticket flow for real design clarity, prioritization, and problem understanding.

Freq · common
RF-24 Operational

Metrics are visible but not trusted

Dashboards, KPIs, and delivery metrics exist, but people do not believe they reflect reality well enough to act on them confidently.

Freq · common
RF-25 Behavioral

Retrospectives repeat the same outputs

Teams keep naming the same problems in retros, but little structural change follows.

Freq · common
RF-26 Operational

Release confidence depends on luck and timing

Teams ship when the stars align rather than because the release process gives genuine confidence.

Freq · common
RF-27 Delivery

Dependencies are discovered late every cycle

Important cross-team or cross-system dependencies are found after work is already underway, not during planning or framing.

Freq · common
RF-28 Delivery

Teams cannot explain what done means

Completion criteria are vague enough that teams, stakeholders, and reviewers mean different things by 'done.'

Freq · common
Layer 04

Leadership

07 signals
Layer 05

Ai

07 signals