Taro Logo
2

What are some best practices surrounding requiring engineers to learn certain software and stacks?

Profile picture
Senior Software Engineer at Series A Startupa year ago

To put this into context, the question refers more to people who have already been at the company for a while, not onboarding engineers.

In my experience working only at startups, almost all learning has been the responsibility of the employee. There is a "spike" period where the engineer is given time to come up to speed, but it has always seemed to me a bit careless for managers to just give someone a list of technologies and say "learn this."

I guess this question is really a proxy for asking: how does FAANG approach "bootcamping" engineers on a new and important stack? Are workshops, training courses, and L&D actually effective? Suppose that I am a senior engineer who wants all the junior engineers in my team to learn how to use AI assist tools like Copilot, how would I approach making this mandatory if I really think it's a technology that's as crucial as git?

258
3

Discussion

(3 comments)
  • 3
    Profile picture
    Meta, Pinterest, Kosei
    a year ago

    It's a mix of self-serve and dedicated programs.

    • When I was at Pinterest working on the Android app, they had a 3 days program where someone from JetBrains flew in to talk about the transition from Java to Kotlin.
    • When I was at Facebook, they flew someone in for all the senior Android engineers in my org (20+ people) to learn about Android internals.

    Honestly, I'm not sure about the efficacy of either of these. It's hard to get engineers to properly pay attention to an optional training and retain.

    I don't think telling people to learn a technology is very effective. Instead, I'd focus on what that technology enables, and then encourage people to build features or systems that employ the technology. For example, could you create a sandbox or low-urgency feature where engineers on the team could apply Github Copilot?

  • 1
    Profile picture
    Comstock Software, Inc
    a year ago

    Focus on what that technology enables. - Rahul Pandey

  • 2
    Profile picture
    Senior Software Engineer [OP]
    Series A Startup
    a year ago

    Honestly, I'm not sure about the efficacy of either of these. It's hard to get engineers to properly pay attention to an optional training and retain.

    True, learning really is something that happens internally and individualistically.

    I don't think telling people to learn a technology is very effective. Instead, I'd focus on what that technology enables, and then encourage people to build features or systems that employ the technology. For example, could you create a sandbox or low-urgency feature where engineers on the team could apply Github Copilot?

    I think that's a really cool answer. It always comes back to being proactive, having agency, and affecting the variables you have control over. I will have to think about how to create hype around Copilot because it enables me to do this or that annoying task so much easier.