Services

Five Communication Anti-Patterns That Delay Outsourced Projects: The Problem Is Rarely the Code — It Is How Messages Travel

2026.06.13 · 28 views
Five Communication Anti-Patterns That Delay Outsourced Projects: The Problem Is Rarely the Code — It Is How Messages Travel

Reviewing our project retrospectives, over 60% of schedule slips trace back to five recognizable communication patterns. Here is the self-test, and the fix for each

Share:

A NT$500,000 system project with healthy development velocity froze dead in week 9: the-boss-wants-changes traveled from boss to assistant to project contact to us — third-hand. What to change, why, and whether it could wait — nobody could answer. Eleven days evaporated in the round trips. Not one line of code was wrong, and the project still slipped two weeks.

Industry myths, broken

  • Myth 1: slow progress means weak engineers → Reality: in our retrospectives, over 60% of delays root-cause to decision waiting and requirement churn, not coding speed
  • Myth 2: more meetings, more transparency → Reality: meetings without a decision-maker produce only let-me-double-check; one 30-minute meeting with the decider beats four without
  • Myth 3: the more detailed the requirements doc, the less communication needed → Reality: a detailed-but-wrong document is more dangerous than a rough-but-right direction, because it licenses everyone to stop talking
  • Myth 4: a vendor reachable on LINE 24/7 is a good partner → Reality: fragmented instant messages shred decisions into crumbs no one can later treat as the record

The core framework: three communication rules

  • Single point of contact: each side names one contact who can decide or reach the decider within 24 hours; everyone else funnels through them
  • Decision SLA: tiered response times — blocking decisions 24 hours, ordinary confirmations 3 working days, nice-to-haves at the next weekly; on timeout, the recommended vendor option applies automatically
  • Three-column change table: every change request carries three columns — what it affects / what it costs / how many days. If the columns cannot be filled, it does not enter the queue

Three typical scenarios

  • 10-person retail e-commerce: the boss is the contact — fast decisions, frequent reversals → lean on the change table so every tweak shows its price tag
  • 50-person manufacturer: the contact is an IT staffer with no authority → lean on the decision SLA plus a monthly milestone meeting the boss attends
  • Startup team: everyone has opinions, chat floods → lean on the single contact, condensing all sparks into one weekly prioritization meeting

Hidden cost inventory

  • Decision waiting: the dev team idles or context-switches; each switch truly costs 0.5-1 working day
  • Third-hand relay: rework from distorted messages typically reruns 50-100% of the feature hours
  • Message archaeology: decisions scattered across LINE/email cost 2-4 hours per retrieval during acceptance disputes
  • Business cost of delay: a month late = a month of lost revenue plus missed campaign windows — often more than 10-20% of the build fee itself

Vendor communication KPI scorecard

For clients to use in reverse — score your vendor 1-5 on each:

  • Committed and kept response times
  • Meetings with agendas, minutes, action items
  • Change requests proactively priced with impact
  • Bad news (delays, cannot-do) raised early and unprompted
  • A single technically fluent point of contact
  • Documentation in a shared space such as Notion, not chat threads
  • A fixed weekly progress rhythm
  • Acceptance criteria in writing before work starts

The ScriptWalker model + who we do not fit

Our retainer and project contracts build in the three rules: templated weekly reports, all decisions logged in shared Notion. Honestly, do not hire us if:

  • Your organization cannot name any single contact and expects the vendor to face five voices directly
  • You believe paying means changes need no impact discussion
  • You need a 24/7 instant-LINE concierge service

Transition playbook (taking over a communication-broken project)

  • Weeks 1-2: freeze changes; excavate undecided items from scattered threads into one decision list
  • Weeks 3-4: install the contact and decision SLA; start the weekly rhythm; clear blocking decisions
  • Months 2-3: launch the change table; re-baseline milestones; at day 90, review whether the delay rate is under 10%

Decision checklist

  • ☐ We have one contact who can decide or reach the decider in 24 hours
  • ☐ The vendor has committed response times
  • ☐ Every change shows impact / cost / schedule
  • ☐ Decisions live in shared docs, not LINE threads
  • ☐ A fixed 30-minute weekly with minutes
  • ☐ Bad news has a track record of arriving early
  • ☐ Acceptance criteria were written before work began
  • ☐ I know how many undecided items the project has right now
  • ☐ The boss attends a milestone meeting at least monthly
  • ☐ When delays happen, we audit the decision chain before blaming code

FAQ

Does a single contact bottleneck information?

The contact is an aggregation point, not a bottleneck: everyone reads the shared docs and weeklies, but decisions exit through one person. What stalls projects is never information — it is nobody daring to decide.

Auto-adopting the vendor option on SLA timeout sounds aggressive.

The rule prices indecision; it does not seize power. In practice clients agree with the recommended option in nine of ten timeout cases, and the rest get corrected at the next weekly — far cheaper than idling.

Our company lives on LINE. Now what?

LINE may notify; it may not decide. The compromise: any decision made on LINE gets posted by the contact into the shared doc within 24 hours — unposted means undecided.

Does this apply to internal teams?

Yes, and more so. Internal projects lack contract pressure, so decision drift is worse; the three-column change table works just as well on internal PMs.

Call to action

Score your current project with the scorecard above; below 24 of 40 is worth a conversation. ScriptWalker offers a free 30-minute project health check:

Share: