I found it pretty bizarre. My guess was that he simply applied a different standard to code than most other people. Instead of preferring simple and obvious code, there was some other arbitrary criteria of cleverness he was looking for. This guy was very experienced as well. I think it may just have been boredom.
If you communicate your priorities properly, you put real emphasis on not creating unneeded code, people aren't stupid, they wouldn't do that. Most projects don't live in vacuum, and the difference between overengineered solution and a good solution depends on outside requirements, and that's the job of the team member to keep it on track.
Some people have 10 years of coding experience. Others have 1 year of experience 10 times.