UPDATE: What I wrote below is incorrect - I was not up to date (see comments)
Subtypes can be a great way to structure your data. There are however some limitations that you should know about:
- Each contact (person or organisation) can only be one subtype
- Subtypes cannot be changed later on
This means that if for example a coach is likely to become a supervisor or trainer at some point I would recommend using custom fields/field sets and groups, tags etc. to structure your information and NOT subtypes.
If you use subtypes you would need to create one contact for each subtype which is most likely not what you want.