There is an auto-discovery process built in, using the Migrate Drupal module in core. It will generate an initial set of migrations for you, for both site configuration (eg content types, fields) and content (the nodes themselves, and friends).
You can use that to generate a pretty good starting point - and you can customise from there too.
It's really important IMO to consider this as development of a process to migrate sites, rather than development of a migrated site. Be comfortable with the idea of running the migration repeatedly while developing.
With Migrate Plus module, you can take those migrations generated by Migrate Drupal and fine tune them. Core's auto-upgrade handles field types that are in core, but you might need to adjust where the Drupal 7 module needs more customisation.