The previous chapters covered when a migration is useful, the principles of atomic design, and how to undertake a migration from a technical perspective. This chapter covers some of the operations-related challenges someone leading the project will need to overcome. We’ll explain how to structure your team to undertake the migration successfully and share some tips for building a compelling business case for a migration.
In the early stages of development, the problems will be technical and filled with engineering trade-offs. As these hurdles are solved, the problems will shift into the product domain. When leading a project like this, understanding the point at which the problem shifts from purely technical to product is important for understanding which engineers need to be involved. While this will be different for every team and domain, there are some general guidelines on what to do when this shift occurs.
Starting the migration journey is an exciting experience that often leads to unfamiliar territory. The path is likely to have trade-offs and issues requiring more than a query to Stack Overflow. Selecting a single experienced engineer, or at most a small group (two to three) to lead the way is important for setting your team up for success.
The engineer(s) who’ll blaze a trail would ideally have the following qualities: