We had a developer write his own System.out.println in Java. But it wasn't because he didn't like the built-in System.out.println, it was because he didn't know it existed. He had a PhD and was supposedly a senior developer. He didn't last very long.
He must have had a very interesting educational path to write functional Java code without knowing about println. I marvel at that. I almost admire it. Because I think pretty much every tutorial in the world for every language starts with printing, and every project has it someplace. He must have learned via some esoteric means.
Same here, and I have worked alongside engineers from both ends of that spectrum. The only thing the degree'd individuals seemed to bring to the table is that they typically did not know what they did not know, thus were much more subject to Dunning-Kreuger.
I once worked with a dev that implemented his own forEach in JavaScript. And literally used an ECMAScript version 6 feature to do so! (native forEach in JS showed up in ECMAScript 5) Meanwhile, that project already had jQuery and Underscore... which also had their own versions of forEach! It was a bizarre choice.
To be fair that was quite a late addition to the language all things considered. It could be he learned Java before it existed, or had most of his experience in 1.4 (which survived quite long in some environments because 1.5 was such a huge overhaul). But still, a good dev will keep up to date with language features.