Anti-Patterns to Avoid

Learn about common anti-patterns in software development and migration. Understand risks, warning signs, and better alternatives.

migration-strategy

Big Bang Migration

Attempting to migrate an entire system at once instead of incrementally

Key Risks:
high-failure-riskextended-downtimedifficult-rollback
2 better alternatives3 warning signs
architecture

Distributed Monolith

Splitting a monolith into microservices that are still tightly coupled and must be deployed together

Key Risks:
complexity-without-benefitsdeployment-couplingperformance-issues
3 better alternatives3 warning signs
development

Premature Optimization

Optimizing code or architecture before understanding actual performance requirements

Key Risks:
wasted-effortunnecessary-complexitywrong-optimization
3 better alternatives3 warning signs
development

Not Invented Here (NIH)

Rejecting perfectly good external solutions in favor of building custom ones

Key Risks:
wasted-resourcesmaintenance-burdeninferior-solutions
3 better alternatives3 warning signs
architecture

Golden Hammer

Using a familiar technology for every problem regardless of fit

Key Risks:
suboptimal-solutionstechnical-debtskill-gaps
3 better alternatives3 warning signs
development

Cargo Cult Programming

Using patterns or practices without understanding why they work

Key Risks:
inappropriate-solutionsunmaintainable-codefalse-confidence
3 better alternatives3 warning signs
legacy

Lava Flow

Dead code that no one dares to remove because they don't understand it

Key Risks:
maintenance-overheadconfusionsecurity-vulnerabilities
3 better alternatives3 warning signs
code-quality

Shotgun Surgery

Making a single change requires modifications across many different classes or modules

Key Risks:
high-change-costbugsmissed-changes
3 better alternatives3 warning signs
integration

Shared Database Integration

Multiple services directly sharing the same database tables

Key Risks:
tight-couplingschema-conflictsdeployment-dependency
3 better alternatives3 warning signs
migration-strategy

Migration Feature Creep

Adding new features or improvements during a migration instead of focusing on parity

Key Risks:
delayed-deliveryincreased-complexitycomparison-difficulty
3 better alternatives3 warning signs