Back to resources

Knowing When and How to Migrate From the Legacy System

Alignment
Dev Processes
Collaboration
Cross-Functional Collaboration

2 January, 2022

Chien Kuo
Chien Kuo

Sr Director of Engineering at Oscar Health

Chien Kuo, Sr Director of Engineering at Oscar Health, shares how he strategically modernized the legacy system in one of his roles.

Legacy System Held Back the Business Processes

I was hired in one of my previous roles to review their system, which was built around 2005, making it a legacy system. We all know that the problem with legacy systems is that if you don’t actively maintain them, chances are they will become outdated. So, when I joined the team, the team was a very small group of engineers working together, and in order to maintain and evolve a system that supported a B2B2C was a challenge.

As I stepped in, I was expected to partner with the product and think about ways to move away from the legacy system to deliver quickly while migrating to a better and newer experience. The problems were that I did not have enough resources, a sound technical strategy, or operational support to build the product. Altogether, there were operational challenges and technical challenges that drove no results.

Evaluate the Legacy System

My first action was to shake hands with my product counterparts to plan out how to proceed with the problems at first. To make a significant impact, we focused on the customers’ pain points, followed by devising the first strategic priority in the product vision. Then we got an alignment and found pilot customers who’d join us throughout the journey.

Based on the product and UX vision, we formed a technical strategy. Instead of rebuilding the entire platform, we used the strangler pattern to replace only a part of the experience. Eventually, we commingled the experience to find a way out of the legacy system. Once we had the first version of the product vision, requirements, UX vision, and tech strategy, we started developing a resource plan with the information.

For instance, it covered all the details, such as how many people we needed and the hiring plan B so that we could start executing that vision. Additionally, we could figure out the tech strategy for the next 6 to 9 months of timeframe.

Operationally, we focused on one problem rather than having a standard process from the beginning. We solved it bit by bit, whether it was stakeholder management, coordination problems within the team, or even budgeting. In essence, we let the problems surface in the team retrospective meetings to learn about the operational challenges and fix them.

Take the Processes Slower

  • If you are migrating from an extensive legacy system, it is certainly not a good idea to do it all in one go. Break the process down into smaller pieces, do it iteratively, and incrementally launch the new system.
  • Solve the problems that are more difficult in the early stages. In our case, operational problems were the tough ones, so we structured the team before proceeding with solving technical challenges.

Discover Plato

Scale your coaching effort for your engineering and product teams
Develop yourself to become a stronger engineering / product leader


Related stories

How to improve engagement and retention in remote engineering teams?

25 October

Mrunal Kapade, an Engineering leader, based in Silicon Valley, shares tips that helped reduce attrition in the remote engineering teams while leading multiple teams from startups to Fortune 500 companies.

Remote
Company Culture
Collaboration
Motivation
Team Processes
Mrunal Kapade

Mrunal Kapade

Director of Engineering at Inspire Energy

How to Organize, Manage, and Grow Your Team

12 July

Vineet Puranik, Senior Engineering Manager at DocuSign, discusses the impact of roadmaps, organization, and proper management for your teams to procure growth.

Managing Expectations
Delegate
Collaboration
Roadmap
Strategy
Vineet Puranik

Vineet Puranik

Senior Engineering Manager at DocuSign

(Re)Organizing Your Teams Using Domain-Driven Design

12 July

A proposal for how to create an org structure that will deliver software systems that you want, not ones you get stuck with.

Alignment
Architecture
Scaling Team
Building A Team
Internal Communication
Reorganization
Ram Singh

Ram Singh

CTO at REAL Engagement & Loyalty

How to Navigate Your Manager Role at a New Company

1 July

Saikrishna Desaraju, Engineering Manager at Marks & Spencer, draws from his personal experience to advise new managers on thriving in their roles.

Managing Up
Managing Expectations
Leadership
Collaboration
New Manager Of Manager
Changing Company
Saikrishna Desaraju

Saikrishna Desaraju

Engineering Manager at Deliveroo

How Product Marketing Can (and Should) Help Product Development

20 June

Pavel Safarik, Head of Product at ROI Hunter, discusses the frequently overlooked role of product marketing in getting high user adoption rates for your product.

Goal Setting
Product Team
Product
Different Skillsets
Cross-Functional Collaboration
Pavel Safarik

Pavel Safarik

Head of Product at ROI Hunter