Best way to store not publicly viewable data?
The simplest way to do this is to put the two fields "skill name" and "rating" in a field collection:

Field collection

But I would suggest to use the new module Paragraphs. This will extent Drupal's flexibility to design content types for structured data a lot:

Paragraphs

Edit:

Changed module name (thanks to @Berdir).