This particular point worries me. Are we now not going to be able to make a clean room re-implementation of concept? Do we need to worry about our previous employer suing us because we are successful?
The employer of John Carmack is buying his work product for as long as he remains an employee. The company cannot buy his knowledge and expertise from him, as that is an integral and indivisible part of him.
So if you hire Carmack to write a rendering engine, then he quits and goes to work for another company, to write a different rendering engine, he is not "copying" the engine you bought. His memories of all the software he had previously written do not belong to you. You cannot contractually obligate him to forget a part of himself that makes him valuable as a software professional.
The work of a software professional is constrained, because while a given mathematical problem may be solved in an infinite number of ways, only a few of those ways will be optimal for any given set of computing conditions. Different implementations may be grouped by algorithm. With respect to computer graphics, all rendering engines will tend to converge on the fastest algorithms for painting pixels on rectangles. Because of this, all rendering engines will be very similar in some respects. But they will also markedly diverge in others.
There are pretty much only 4 types of algorithm: the fast way, the frugal way, the magical way (viz. both fast and frugal, but requires top-level expertise to invent or understand), and the hardware exploit. Carmack is certainly capable of writing magical algorithms. And he can remember how to make the pixie dust. He will also tend to write all his implementations in a similar style.
Thus it is very possible that one person could write identical code at different times, while having no specific memory of the previous time it was written, nor any need to refer to associated documentation around that instance.
The clean room is clean if no property of the other company was ever inside it. Carmack cannot be property, therefore his presence is not a contaminant. My opinion is that any non-disclosure agreement Carmack may have been a party to can only meaningfully cover the contribution of other individuals to the project, since Carmack-qua-Company-A-employee cannot meaningfully wall off knowledge from Carmack-qua-Company-B-employee. If Company A wanted to keep Carmack's raw knowledge and expertise from Company B, they would have had to get him to sign a non-compete agreement (which no one at his level of clout should ever do for less than a significant ownership share in Company A).
> The employer of John Carmack is buying his work product for as long as he remains an employee. The company cannot buy his knowledge and expertise from him, as that is an integral and indivisible part of him.
This is the entire point of non-compete agreements. To deny competitors the expertise the person has developed during their time at your company.
I'm not entirely certain that you read all the way to the end of my reply.
To really lock someone up, you need both a non-disclosure and a non-compete. And anyone worth a non-compete should make it really expensive for the company that is asking for it. You're trading away potentially several years worth of lost opportunity costs to basically not be what you are for some time after leaving a company.