Explain OOP design and API rollout | Microsoft Interview Question