• 2026-06-02
How to Refactor an RxSwift Monolith into a Modular Swift App

Imagine a quarter-long refactor: turning a big ball of mud, held together by RxSwift and 1500-line view models, into a modular, fully testable codebase. All while actively developing other features and shipping the app. What triggered that massive refactor? An innocuous estimation request. And a decision that shaped the future…

  • 2026-04-11
Interface Segregation Principle In IOS: How To Prevent A Protocol From Becoming A Prison

It's Monday morning. You're halfway through your coffee when a Slack message pops up from the Platform team: Hey, we noticed UserService.fetchLoyaltyPoints() is throwing an error for 12% of users. Can you take a look? You open UserService.swift, and your heart sinks. Eleven dependencies. Twenty-five methods. Eight hundred forty-seven lines…