WP Engine has a great migration tool as part of their service. You can see the steps at https://wpengine.com/support/wp-engine-automatic-migration-powered-by-blogvault/.

But, before you migrate your WordPress, WP Engine doesn’t allow some WordPress plugins on your website because either they have that functionality built in like security or backups. Or, the plugins are known to cause complications. It is a good idea to remove them before the migration. Here is their list: https://wpengine.com/support/disallowed-plugins/

After the migration of your WordPress website is complete, there are a still a few more steps to do.

First, you need to add your domain to your WP Engine account. Here are the steps: https://wpengine.com/support/add-domain-in-user-portal/

Next, you need to install a SSL certificate. Here are the steps: https://wpengine.com/support/add-ssl-site/

Finally, you are ready to change your DNS records. Here are the steps: https://wpengine.com/support/wordpress-best-practice-configuring-dns-for-wp-engine/