This is doable using Conditional Fields despite its rather minor limitation (http://drupal.org/node/360824). You can't trigger fields' display by a checkbox's off value. That will require you to negate the "I currently work here" checkbox to something like "Past position". You can still decide if you want it checked by default or not, and using JavaScript you can hide the "Past position" checkbox and control its value using the desired checkbox with the opposite meaning.
Saving 'Current/Present' to the database is not an issue really. You only need to check the value of the checkbox field and you can disregard the 'Current/Present' value if this is an ongoing position. To make the To date field work as expected, though, make it Required and choose an arbitrary Default value for it, which will be used even when the field is not displayed. Now would be a good bet.
Here's an image which pretty much wraps up the 5 minute content type setup.
It's obviously going to take a little more than that to make the form look and behave the exact way you want. For information on theming the resulting form, see Theming a form with conditional fields.
Also see Conditional Fields Docummentation