So basically, let say I do not know Scala and I learn it there or I use GoDaddy to register domain, according to contract I will never be able to use those anywhere else, and if I do I will need to handover things I have done?!
So basically, let say I do not know Scala and I learn it there or I use GoDaddy to register domain, according to contract I will never be able to use those anywhere else, and if I do I will need to handover things I have done?!
If knowledge were replaced with "Company's confidential information," then that would make sense and is standard. Your employer has a legitimate interest in your not using their trade secrets and confidential information for your own use.
But everyone gains "knowledge" working at a job. Whether it's learning a programming language, being introduced to a publicly available tool or service, we all learn things of general applicability at our jobs. Come on - why do employers ask for people with X years experience, other than the fact that they understand people learn things from their working experience?
So, yes, this is unreasonable and I wouldn't sign it, unless amended.