My anecdotal experience:
I once worked for a major bank and someone who left another major bank held a meeting with developers of a next-gen platform where he basically explained, in explicit detail, his old employer's entire platform. I would argue a non-compete would be 100% enforceable here.
Another time, I was threatened to not use any IP from a startup I helped start. I specifically asked early on for an agreement to share the rights to my code. On my last day this agreement was terminated and the non-compete took precedence. Consulting with several lawyers (not in california) told me that it would be an uphill battle for the business to win against me as the optics of a large corp suing an individual doesn't bode well for the plantiff. Unless you started a multi-million dollar revenue generating project, which in that case I was advised to settle as a peace offering.