How to customize the input phase of a custom field
If you are building a curriculum vitae type website you might want to see the eRecruiter distribution profile.

What is does is makes separate groups of fields as entities with the Field Collection module. Keep in mind that taxonomy vocabularies are fieldable in D7 so they can be attached to an entity such as a field collection. The made a module called Term Level that gives an option to add superlatives to the taxonomy terms that are just an entity in a field collection that are added to a node as a field.

It's just another way to look at the same problem.