I’m chatting with my mentees almost every day. I keep getting the same question from the fullstack beginners: which technology should I learn next — Go, Node, React or Vue?
First, the most important part is to do an introspection exercise: which types of problems do you like solving? If you like tinkering with polished user interfaces, go heavier on the frontend side. If pushing pixels around the screen bores you to death and you feel like you’re loosing time, go heavier on the backend side. If you hate what you’re doing doesn’t matter which end of the system it is — perhaps try looking for something else.
Remember that the choice of technology will most likely dictate which kind of problems you’ll be working on.
Then when you’ve picked one side of the system, learn one programming language at 80%. Then learn the most popular framework at 80%. Then start looking into any of these topics:
My point is that as soon as you gain experience in one language and one framework, you will be able to transfer this knowledge to other languages and solve similar problems there, and you want your problems to be difficult (otherwise you’d be bored). Building a small web application will be very similar in Ruby or Go or Node, React or Vue. Building maintainable and scalable systems is where the most interesting and most well paid problems hide. Particular language syntax is only a part of the equation, usually the easiest one. It’s more important to know how to build systems and work efficiently.