Very well put. Good tip that helps to get over that phase of overarchiteching is to get a job with competent people around you who push you to perform better.
Easier said than done perhaps, but getting a new job or doing something you didn't think you would ever do, especially with a good team surrounding you can really push you over that phase and get you to trust your skills.
Leave the comfort zone! Do something that seems too difficult, just do and grind and you will find the methods to blast through any wall ahead of you.
It's more about discipline than having the best methods. Through discipline I learned that I can solve any problem, it just needs work. The solutions are not most of the time the most elegant, but over time those features of the code that stick around get cleaned up and they transform to something beautiful.
Easier said than done perhaps, but getting a new job or doing something you didn't think you would ever do, especially with a good team surrounding you can really push you over that phase and get you to trust your skills.
Leave the comfort zone! Do something that seems too difficult, just do and grind and you will find the methods to blast through any wall ahead of you.
It's more about discipline than having the best methods. Through discipline I learned that I can solve any problem, it just needs work. The solutions are not most of the time the most elegant, but over time those features of the code that stick around get cleaned up and they transform to something beautiful.