As a software engineer, you should be a specialist who strives to be a generalist.

Why?

Because being a specialist will only get you so far.

If you are just the best React engineer there is, sure you can make big bucks coding React apps but you can’t get above that.

You won’t know how the backend works, you won’t know what your customers need and all of this will hamper the way you tackle the problem.

You will always need someone to supervise you to help you solve the problem.

Also, tech solutions are rarely just only frontend or only backend.

Tech solutions are a collaboration between business, customers, UI, UX, frontend, backend, mobile apps, marketing and more.

If you don’t have footings in all these domains, you will have blind spots and gaps in your knowledge.

Understanding how everything ties together to create a thriving business is the next level.

And let’s be honest, all of us will want to have our own businesses at some point.