Taking this a few steps further:
There is a property field already available that you can use and
change to your liking.
1. Once in SSP, select User Profiles and Properties
2. Select View profile properties
3. In the list of properties, find 'Skills'. Select Edit from the
dropdown.
You will have the option of providing a default list of skills to
choose from and/or allow users to add freeform values. You can
configure the field to allow users to edit the field or not. Users
will be able to choose which group of users can see the skills as a
whole - not, unfortunately per each skill (if that's what you were
looking for). There isn't a way to group skills, but you could add
additional fields that could represent different skill
sets/groupings. You could also use those different skill groupings
to select different visibilities - share some skills with everyone,
share some skills only with your manager, etc.
Now I suspect (my virtual for testing this is currently unavailable.
grr... ) getting the data accessible on a single page can be done
using something like what Shane did here:
msmvps.com/.../using-the-dataview-
web-part-and-the-profile-database-in-sps-2003-to-create-a-company-
directory.aspx