Change Management: Rebuilding from scratch
17 November, 2020
I was brought in to my current company to overhaul the R&D organization. There I identified four layers of problems that I had to address at the same time:
- Technology. Old legacy code was permeated by flawed technology and bad architecture choices.
- People. The team didn’t have the skill set required for the changes that had to be introduced.
- Ineffectiveness of the system. Maintaining and supporting the existing system was difficult and time-consuming.
- No scale or proper redundancy.
The first thing I did was to talk to all developers on the team. It took some time due to their large numbers, but it was worth the effort. I was surprised to learn that though most of them acknowledged the existing problems they didn’t have any clue how to deal with them. They lacked the capability to see what was structurally wrong and how it could be solved; moreover, some were convinced that they were doing things right.
On the upside, I had the backing of management and they trusted me and were willing to provide air cover. I felt confident knowing that they would back up any decision I would make. And the decision I was to make was nothing but easy! I came to the conclusion that we had to rewrite the entire system. That was something I wouldn’t propose in 99.99 percent of cases but this was that one exceptional case that contradicted my routine approach.
I created a plan that was rather risky and had to be implemented in parallel with running the system and supporting product and business requirements.
The first step of the plan was to move day-to-day operations to an outsourced team in Ukraine. I went to Ukraine to select the team and after finding a suitable solution, we started to transfer, phase by phase, the products that we were developing internally to their team. That allowed me to clear the ground on a ‘home terrain’ where we started working on a new platform that I proposed to build.
I brought and hired top talent to help me out. The whole project was risky and I wanted to be surrounded by the people I trusted and who could deliver what was needed. Building new architecture and a new platform required a lot of planning and meetings with Amazon that was helping us migrate workloads to AWS. Finally, we had to roll our sleeves and focus on actual development.
The migration process was successfully completed after two years.
- You have to be surrounded by the people you trust when you are working on risky projects. I brought in my friends who helped me successfully implement a number of high-risk changes. All I did was set up the framework and the people I trusted did all the hard work.
- One of the most important aspects of change management is how one communicates a plan to people who will be affected. You have to clearly explain to people what you are up to, why you are doing it, why that is the right thing to do, and what they would gain from it. When you tell people that you are doing something, they will naturally want to know what is in it for them. In this particular case, for some people training that we provided on how to develop for the cloud was a powerful incentive, but others who were more keen on the old ways were reluctant to accept changes and eventually left. Also, introducing new technologies caused a tectonic power shift and many people were hesitant to accept changes because they felt disenfranchised by them.
- The power balance that was tilted created other problems too. Oftentimes people who were single point of failures felt they had more negotiating power and management would often warn me that we couldn’t risk losing them. I was not particularly happy fulfilling every request they had and was rather willing to take a risk and lose them -- and it paid off.
Sameer Kalburgi, VP of Engineering at Fieldwire, discusses how his team evolved from hiring junior engineers to building a team of -- and balancing -- mixed seniorities.
VP of Engineering at Fieldwire
Nimrod Perez, CTO and VP of Engineering at Wobi LTD., shares how he successfully implemented a number of changes, including re-writing the entire system, to help the organization accomplish its goals.
CTO and VP of Engineering at Wobi LTD.
Zhenzhong Xu, Engineering Manager at Netflix, discusses how he grew a team that embraced a culture of freedom and responsibility and how the dream team analogy helped him direct the team toward high performance and overall excellence.
Engineering Manager at Netflix
Zhenzhong Xu, Engineering Manager at Netflix, reflects on the problems that he faced as a first-time manager and explains why building trust is critical for team success.
Engineering Manager at Netflix
Peter Fedorocko, Director of Engineering at Workday, explains how to build a technically robust team with limited resources -- an exponential high-performing team.
Director of Engineering at Workday
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.