Responsible software developer →
Must keep track of versions
so that you can retrieve code that you previously changed or deleted.
What follows: A story about how you might design one such VCS (version control system), and the reasoning behind those design choices.