How to Jump on a Moving Project
How To Jump On A Moving Project
or, act like a senior developer in nine easy steps
Somewhere along the way, I seem to have become a senior developer. I'm not much faster at coding than I used to be, and I definitely have forgotten more language-specific syntax than I remember. The difference, if there in fact is any, seems to be in knowing the patterns and the norms, having a sense of what paths to use to solve problems and how to find one's bearings in a new environment.
None of this is particularly complicated. So, since our community-building startup What's Cookin' welcomes new developers who want to get their feet wet in a real team, I thought it might be useful to write a bit of it down, as a guide for new developers on how to find their balance while jumping on board.
If you are already an experienced developer, this probably is not the essay for you - though if you want to kibbitz and add your two cents, have at it - comments welcome.
1) Make noise usefully.
You will get stuck. Despite reading whatever docs are available, googling the errors you run into, and doing your best to read the source and solve your own problems, you will at some point not see a clear path to moving forward in a reasonable amount of time.
(Caveat - you are never really completely stuck; but if you are having to disassemble the operating system to debug the problem, well, you may not come out of your rabbit hole in this lifetime.)
At this point, you want help. There is a right way to get help. Two key things to keep in mind are:
A) senior dev time is extremely valuable
B) whatever issue you ran into, someone else likely has - or will - too
Therefore, you want to communicate your problem in a way that peers on the team can see as well - especially other junior developers. Possibly one of them knows the solution, and if not, at least when someone helps, the answer will be visible in the shared space (most likely a slack channel).
Always include the exact error message string (so others can search on the same error), and if any URL is involved include the exact link. Summarize what you already tried. Use ``` ``` or ` ` quotes in slack. Do share in a channel, do not ping the channel. Wait some amount of time and then ping an individual developer if you did not get a response.
Rule of thumb: Asking the question should be more work than answering it. A lazy question will get a lazy answer.
Do not be afraid to admit if you are clueless - just make it clear you need only a clue as to how to proceed.
2)