I'm currently the only HR worker at a medium sized engineering firm in Canada. There should normally be 2 additionally HR workers on-staff more senior than me, but one is on parental leave and the other position isn't currently filled, and I'm in over my head.
We are selling a product with a "custom Linux kernel installed". Our engineers say that "most of the product is GPL code we've modified", and that since we are selling a product with this software in place, "we're shipping GPL'ed code". Our company owns the copyright, but from a reading of how "GPL licenses" work, it sounds like some of our code is indeed GPL'ed. The plan was to never let the customer know GPL code was present in the product.
We have a senior engineer, "Francis", who doesn't get along with a more senior engineer, "Lee". In short, Francis pointed out a serious technical flaw in Lee's designs, and tried to encourage Lee to change his designs based on this information. Lee took it as a personal insult, and attempted to "squash" Francis (i.e. get him written up, even fired). Francis raised the issue with the entire engineering department, and embarrassed Lee significantly (i.e. Lee made a serious technical mistake, and his attempts to squash dissent made him look bad). We put the two on separate teams to prevent any further issues about 6 months ago.
Francis has since excelled on his new team, and was up for a significant promotion. However, a senior manager, "Ling", vetoed the promotion, citing Francis wasn't "mature enough" for the role (and didn't provide an indication as to when Francis would be mature enough). Lee and Ling are close personal friends, hence I sense a conflict of interest here. Somehow Francis found out about the veto (he shouldn't have access to this information). It turns out Lee gloated over the issue and disclosed it to Francis, and we promptly fired Lee (gave him half the normal severance he's entitled too as an alternative to firing with cause and getting nothing), and attempted to smooth things over with Francis. This caused substantial embarrassment for Ling.
We've started getting calls (addressed to Francis' colleagues and supervisors) for job references (pretty bold, since people rarely use their current employer as a reference while job hunting), and have determined that many of the companies calling are direct competitors. We called in Francis for a meeting, and he spelled out, bluntly, that he's looking for a new job, he's pissed over the veto debacle, and that we're welcome to give him severance (8 months' pay) to go away here and now. We don't want to lose him, but he has made unreasonable demands for a counter offer:
- The promotion (we'd consider it).
- 2 years guaranteed unconditional severance arrangement (even if he quits) (partially accepted: 2 years, unless he's fired with cause or quits).
- Guarantee of another promotion within the next 4 years (to ensure this isn't just a temporary counter offer to buy time before eventually firing him, and ensure he can still move up the ranks) (rejected, but promised the well wasn't poisoned.).
- Ling being further reprimanded/punished by the directors (rejected; we can only pass the details up to directors; they choose whether or not to discipline managers).
Francis seemed to be displeased with the results of his "negotiation", and indicated he'd continue job hunting on personal time. We reminded Francis of his non-compete clause, and he then retorted with something that raised red flags by the senior engineering team:
- He plans to move from Canada to the US (dual citizenship), which he feels would invalidate his non-compete significantly.
- He plans to work with a direct competitor, and re-create the work he's been doing for our company for the past 6 months.
- He plans to make large portions of the code, much of which is in "Linux Kernel" and "Docker" code, public, due to "an obligation to the FOSS community".
This last point would be disastrous, and suing Francis would not recover the lost potential profit. We stressed that he would be receiving correspondence from the legal team unless he took back what he said. He refused to speak any more after that point. We have him working remotely on "research tasks" (no access to servers) while we try and figure this out.
Anything that's sent to Legal has to be retained for at least 3 years. The engineering director has ordered me not to send any emails with "GPL" or "GNU" in it.
Is there anything we can do to prevent Francis from disclosing code out of spite? Are "super injunctions" real (i.e. like when celebrities want to prevent embarrassing news from being published)? Or are there other uncommon benefits that can be offered besides cash and extra vacation time (large raises are allowed, but not large bonuses)? Whether we throw a bigger/different bone, or find a way to forcibly stop him, we need to prevent disclosure.