The only way to learn as a software developer is to build.
Today I started my third major application using VueJS and realised there was a better way to approach something I’ve done in the last 2 applications.
As a mature developer you must continually question and re-evaluate what you know. Keep looking for better and easier ways achieve a result, and choose to discard those that don’t suit.
I’m not ashamed to say my last 2 approaches where inadequate. It took that time, different searches, and re-framing of the problem to eventually reach the point I needed.
But coming from a Microsoft development background I’ve had a career living the philosophy: “don’t implement until version 3” (which is to say, wait until version 3 before you get it right).
In all my years I’ve never seen a developer get it “right” the first time.
Maturity is recognising success takes time and working through the process.