Hi David,
Custom profile properties are stored as key value pairs in the mp_UserProperties table except for some that are mapped to the mp_Users table because they existed there before we implemented the user profile system.
All your custom code, pages, user controls should exist in your own custom projects, and use post build events to copy them up to Web.
I recommend watching my in progress series of developer training videos.
The most drastic solution would be to implement your own profile page and overwrite the existing one on post build with your custom one, but then the burden would be on you to maintain it.
Probably what I would do is either encapsulate the employee info in a UserControl that implements ISettingControl or make a separate page for your employee info and just link to it from the user profile using a UserControl. The ISettingControl interface has a very simple implementation and allows you to add the control to the page even if you are not really using the simple setting, you could just hard code a string for the get and set of the setting and just use it as way to get your control onto the profile page.
You should store your employee data in your own table and store either UserID or UserGuid or both in your table along with your other fields and encapsulate the whole thing as an EmployeeInfo class/object that you can retireve from code using the UserId or UserGuid
Hope it helps,
Joe