0

What types of tasks would be expected of a junior software developer at the beginning?

Profile picture
Software Test Engineer at Series B Startup2 years ago

I'm positioning myself to go through the process of transitioning to a SWE position, and I've been told that junior developers would be given tasks that are small in scope, well-defined, and with low ambiguity.

That said, I would love to know if there are concrete examples of such tasks. For instance, would updating a Makefile before an internal release be within such a scope? Other examples would be helpful in order to get a better understanding. I assume that it would likely be different from company to company as well. Thank you for your time!

143
1

Discussion

(1 comment)
  • 4
    Profile picture
    Robinhood, Meta, Course Hero, PayPal
    2 years ago

    I've been told that junior developers would be given tasks that are small in scope, well-defined, and with low ambiguity.

    That's 100% correct! It would be cruel to do so otherwise (which some companies/teams unfortunately do).

    For instance, would updating a Makefile before an internal release be within such a scope?

    I haven't worked much with Makefiles, but that seems like a good task for a junior engineer to me. I assume it would be adding another basic command like a debugging print statement. Hopefully it's not too complex (adding a giant suite of recalibration logic) or too simple (just editing a build number).

    At a high-level, a good starter junior engineer task should take <50 lines of code to complete.

    That being said, here's some examples of junior engineer task "categories" and a concrete example for each one:

    • Small bugs: This is something that's non-mission critical and the company is potentially okay with being broken forever. The debugging muscle is very important to build up for any software engineer, so these are helpful (and often under-appreciated).
      • Example: At Meta on the mobile side, there were a lot of bugs where a component was just a couple pixels mis-aligned. These were great for starting juniors.
    • Very incremental feature improvements: Similar to the bugs, this would be a minor feature that's not heavily demanded by users and something the company is okay never shipping. These tend to be more fun as adding things is generally more exciting than fixing things, especially to junior engineers.
      • Example: Back at Instagram, I created an internal tool in the mobile apps to help you test ads. There was a list of ads (e.g. "5 second video ad", "3-part image ad"), and you could search through the ad types via a search bar. A junior engineer onboarding task I made was to have an "X" icon show up when the user had a search query. They could then tap the "X" to clear out what they typed and immediately start typing in their next query. It was ~10 lines of code to implement.