4

What should I learn to grow in my career ?

Profile picture
Mid-Level Software Engineer at Taro Communitya year ago

This question always stresses me because I'm a backend Python developer and the stuff I could learn is a lot that I end up studying/practicing nothing.

I use in my day to day: Python, Flask Docker, and Oracle. I don't know what else I could study or if I need to get better at these technologies.

203
3

Discussion

(3 comments)
  • 5
    Profile picture
    Founder of Expanded Skills • Former Head of Engineering
    a year ago

    Let's take a step back.

    Unpack what's leading to the "stress" behind the question. In most cases I've come across, especially when your own goals aren't clear, this is driven by the guilt of not "optimizing your downtime" or "fear of getting left behind in tech." Block out all externally driven stressors first, then you can make a clear-headed decision on what you want, which is the only thing that matters.

    With that out of the way, here's my standard approach to skill acquisition without knowing more context.

    • The problem you want to solve should always dictate what you should learn. If you're asking what technology you should learn first without a very specific problem in mind (i.e. specific as getting something from point A to B), go back and figure out what that problem is first.
      • Sidenote: The educational system unfortunately nudges us towards checking the box on various skills and technology in the hopes it leads to gainful employment, which is a big driver behind this confusion.
    • Evergreen skills: when there's no specific problem, your best hedge is to learn a skill that has high durability and transferability in the long term. One way to approach this exercise is to look for a "fundamental" skill. These skills are never specific technologies, but usually on the abstract and meta side of things. Ironically, learning how to learn is probably the most important meta-skill, especially since the tech industry naturally rewards Antifragility.
    • Tailor your learning around finding a bottleneck in your workflow. Having the skills to find the bottleneck is a meta-skill in itself, but working on solving what's specifically holding your team back from producing higher quality work, more consistently, and faster is guaranteed to have a high ROI. Personally, I had one of my biggest career breakthroughs (i.e. Manager -> Director+) by solving the data engineering bottleneck in the context of data science.
  • 4
    Profile picture
    Tech Lead/Manager at Meta, Pinterest, Kosei
    a year ago

    If you don't know where you want to go, then it doesn't matter which path you take.

    This Lewis Carroll quote (from Alice in Wonderland) is apt here, since the answer depends very much on what you want to achieve.

    I'd pick a goal -- any goal -- and learn the tools + technologies to achieve that. It could be a side project with a colleague or it could be a different part of the codebase at work. This will give you the direction and motivation to start learning something.

    The goal you pursue will almost certain change, and that's ok! Directing your valuable energy somewhere is better than directing it nowhere. And once you start something, it will give you clarity on what else you want to learn.

    I'd also highly recommend these resources:

  • 2
    Profile picture
    Startup Engineer
    a year ago

    I actually have an algorithm for this:

    1. Look at the job description for the role at your dream company.
    2. Learn 80-90% of what's listed as required and nice to have.

    Example: https://boards.greenhouse.io/spacex/jobs/6930808002?gh_jid=6930808002