All selected work

Microsoft Teams / Architecture & collaboration

Teams post-meeting architecture.

Separating legacy controller logic into Swift components and view models.

  • Swift & Objective-C
  • MVVM-C
  • Cross-team work

The problem

Post-meeting UI and business logic were coupled in an existing controller. Changes needed to preserve established behavior and remain understandable to the partner teams working in the same code.

My contribution

  • Decomposed legacy post-meeting controller responsibilities into Swift components and testable view models.
  • Worked across design, implementation and validation with partner engineering teams.
  • Contributed privacy-sensitive notification and file-handling changes while preserving enterprise scenarios.

Technical decisions

Incremental refactoring

Moved responsibilities into Swift components and view models while retaining existing Objective-C code where appropriate.

Partner review and tests

Worked through implementation tradeoffs with partner engineers and added tests around the changed behavior.

The result

Post-meeting UI and business logic were split into smaller components and testable view models, supporting subsequent work in the meeting experience.

The refactor retained existing Objective-C code; it was not a full rewrite.