It was written as part of my work.
check your contract, you might not own the code and your organization may have a process to determine how to license something.
to your other questions (IANAL)
- prior work wont be licensed, meaning no one but the owner of the work is allowed to do anything with versions prior to the license
- you don’t have to, but i can’t see a reason why you should not.
- GPL might mean that other work depending on gpl licensed code has to be licensed in a gpl compatible way, depending on how exactly you depend on it and how you distribute your dependencies. MIT/BSD is easier here, if you don’t plan to license everything with the GPL anyway.
sometimes i like that a lot of my work is typical enterprise stuff. nothing gets to prod without some poor soul working through a huge test catalogue on a seperate environment and/or a higher up signs off on it.
it’s also annoying because, you cant “just ship” a small fix or change without someone signing off on it.