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 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

Managing Through a Team Reorganization

15 June

Mugdha Myers, former Engineering Manager at Google, discusses the challenges of leading a team through the ambiguity and anxiety caused by a large-scale team restructuring.

Alignment
Changing A Company
Strategy
Changing Company
Mugdha Myers

Mugdha Myers

Engineering Manager at Google

Dealing with Uncertainties and Adapting as You Go

14 June

Muhammad Hamada, Engineering Manager at HelloFresh, addresses the uncertainties brought on by the pandemic, how these have affected our work environments, and how we can adapt.

Goal Setting
Internal Communication
Collaboration
Roadmap
Stakeholders
Prioritization
Muhammad Hamada

Muhammad Hamada

Engineering Manager at HelloFresh

Promoting Interdepartmental Teamwork for More Efficient Problem-Solving

13 June

Roland Fiala, Senior Vice President of Engineering at Productsup, raises an interesting issue about autonomy in teams: does it hinder collaboration opportunities that lead to better problem-solving? He shares his system for promoting teamwork in engineering departments.

Internal Communication
Collaboration
Roadmap
Team Processes
Cross-Functional Collaboration
Roland Fiala

Roland Fiala

Senior Vice President of Engineering at Productsup

How to Successfully Rebuild Your Product

6 June

Adir Nashawi, Senior Product Manager at Hibob, shares his insight and experience from rebuilding a product to handle many feature requests and offerings.

Customers
Product
Dev Processes
Users
Prioritization
Adir Nashawi

Adir Nashawi

Senior Product Manager at Hibob

You're a great engineer.
Become a great engineering leader.

Plato (platohq.com) is the world's biggest mentorship platform for engineering managers & product managers. We've curated a community of mentors who are the tech industry's best engineering & product leaders from companies like Facebook, Lyft, Slack, Airbnb, Gusto, and more.