One mistake I’ve seen people make, especially newcomers to devops or programming in general, is they try to learn to much. I don’t mean in a specific time frame either, I mean overall. They end up learning 50 different languages and/or tools, when in reality they’re going to only end up using using at most 5, especially in their career. I know this because it’s something I’ve personally done, I ended up learning so many languages, tools and more, that I have per-say “cluttered” my brain with information that probably won’t be used, and this is problematic, especially at scale.

Want or need

Don’t get me wrong learning is good and you should learn but you should only learn what is needed. There is a difference between learning something because you can, and learning something because something your working on needs it. I could learn all the programming languages in the world, but if I only end up using 5-10 of those languages, what use is that knowledge?

One common phrase I often quote in things like job interviews, among other things is “lead by example, don’t lead by courage”, and what this phrase essentially means is, you want to be an example when you lead, what you don’t want to do is lead or become an example that is only an example because you had the knowledge.

Knowledge or experience

Having the knowledge to use something, doesn’t directly correlate with knowing how to use it well. Instead of focusing your time on learning 20 different tools or languages, instead focus on learning the specific tools your project or job(s) need, and improving your skills with them. This is very important when it comes to software engineering jobs, among things not even related to programming.