I noticed that some engineers can come across as extremely smart because they talk fast and can think fast - Also, they are really good at defending their ideas when put on the spot but if you dig deeper afterwards you might often find that while their solution is good, it's not the best one.
It always takes time to come up with optimum engineering solutions - It's not something that just pops into your head in a millisecond whist having a casual technical discussion - No matter how smart you are. The history of software development (with all of its failed projects) is proof that even great engineers have difficult coming up with optimum ideas.