Salesforce releases 3 times per year. Major changes happen: features deprecated (Process Builder, Workflow Rules, Aura), new tools introduced (Flow, LWC, DevOps Center), AI capabilities evolve.
Solutions that don't accommodate change become brittle.
Principles:
1. Don't depend on what's deprecated.
- New code: never Process Builder or Workflow Rules.
- New UI: never Aura when LWC fits.
- New integrations: prefer Pub/Sub API over CometD.
- New deployment: DX over Change Sets.
Read release notes; track deprecation timelines.
2. Use abstractions.
- Custom Metadata Types for config — easier to adapt.
- Interfaces in Apex for swappable implementations.
- Feature flags to gradually roll out / roll back features.
3. Prefer declarative when possible.
Salesforce evolves declarative tools faster than code. Code you wrote for X feature may need updating; declarative often updates automatically.
4. Avoid private APIs.
Salesforce has documented APIs (stable) and undocumented internals (volatile). Build on documented; never on undocumented.
5. Test extensively before production.
- Apex test coverage 75%+.
- LWC Jest coverage.
- Integration tests catching regressions.
- Tests fail when platform changes break things; you find out before users.
6. Monitor release notes.
- Pre-read seasonal release notes.
- Identify what affects your org.
- Test new features in sandbox before they go live in production.
7. Modular architecture.
- Small components with clear boundaries.
- Replacing a single component is easy.
- Replacing a tangled monolith is hard.
8. Backward compatibility discipline.
- Don't break existing flows / integrations when adding features.
- Versioning APIs explicitly.
- Deprecation cycles before removal.
9. Deprecation strategy.
Plan to migrate off:
- Process Builder (deprecated).
- Workflow Rules (deprecated).
- Aura (gradually replaced by LWC).
- Visualforce (legacy; LWC replacements where possible).
- Older API versions.
10. Engagement with Salesforce.
- Trailblazer Community engagement.
- Beta program participation.
- Customer feedback loops.
- Strategic briefings.
You see what's coming; influence direction.
Specific evolutions to architect for:
- Lightning Web Security replacing Lightning Locker — design components compatible.
- Pub/Sub API replacing CometD Streaming — design integrations on Pub/Sub.
- DevOps Center replacing Change Sets — adopt now.
- Industry Clouds evolving with vertical features — anticipate future migrations.
- AI / Agentforce evolving rapidly — architect with abstractions for model evolution.
Common pitfalls:
- Locking onto deprecated tools — costly migration eventually.
- Tightly coupled code — small changes cascade.
- No tests — break silently with platform updates.
- Ignoring release notes — surprised by changes.
- Customising heavily on top of evolving products — Industry Clouds, Agentforce.
Senior architect insight: build for the platform that exists in 3 years, not just today. Salesforce evolves toward declarative + AI + modular. Architect aligned with platform direction; resist building against it.
The senior framing: the platform's gravity well pulls toward standardised patterns. Code that flows with that gravity (declarative, LWC, APIs) survives. Code that fights it (custom Aura, deprecated tools, undocumented internals) becomes technical debt.
