That’s a long road full of work, especially learning.
You have to learn a lot. I mean a lot. Read about every technology that has at least one thing in common with your own field. Hell, read about every possible technology you can find. For example, TypeScript’s decorators are from Python [citation needed], which has nothing to do with front-end development at all.
And not just learn about them. If you find something awesome in language A (that you don’t know, or just a little bit), try to apply that solution in language B (the one you use in you $ job). If that solution doesn’t exist in your language B, try to implement it in plain B. If not, but it’s a really useful feature, it may worth it to suggest it to the B developers. If you can supply patches or some drafts to implement it, the better.
Being thoughtful is impossible without learning about new things.