I’d say “specialize” in what calls your attention the most, but so be aware that what you enjoy will likely become uninteresting once you are being paid for it. That is simply because when you are paid to do something the expectation is not for you to follow whatever you like but whatever is profitable for whoever is paying you.<p>To qualify “specialization” as I said it up there, I mean more like being productive, familiar with current tools, etc, not necessarily “specializing” in frontend to build the next react or contribute to the CSS parser for Chromium. (If that’s what you want go for it!)<p>All that I’m saying is, don’t feel like you need to specialize and if you don’t you’ll be either not have a successful career or miss out on things that interest you.<p>One of the most freeing things for me was realizing the difference between professional coding and personal/hobby coding. Professionally (read, being paid for) I build CRUD apps, and I’m humbly confident in my skills in that area.<p>But personally, for myself, I enjoy functional programming, low level OS development, some game dev from time to time, and literally whatever else that calls my fancy! And I wouldn’t want to get paid for it because of I where I couldn’t have the freedom I have to just follow my curiosity and enjoy tech!<p>So, good luck figuring out your career but don’t limit your tech interests to what you get paid for, explore and enjoy!