Classic. I know brilliant people who wrote pretty ugly code years ago and beat themselves up about now (in a tongue-in-cheek way -- they joke about it frequently).
Coding is hard; if it was easy, people as smart as them would've written stuff perfectly the first time!
Humility is very important for coding (most things, really). Everyone writes "questionable" or "ugly" code, so it's important to accept that as much in yourself as you do for others. Think about what you would say to someone else in your position: would you be as critical of them as you are of yourself?
Moreover, in the early days of a new company, the priority is to get something working to create income - sometimes, quality be damned. Otherwise, there's a good chance the company won't survive to get the chance to hire people who will get the opportunity to criticize the code that made their employment possible.
Classic. I know brilliant people who wrote pretty ugly code years ago and beat themselves up about now (in a tongue-in-cheek way -- they joke about it frequently).
Coding is hard; if it was easy, people as smart as them would've written stuff perfectly the first time!