Pandemic Juniors

Sebastian Gomer
upday devs
Published in
7 min readApr 28, 2021

So you choose this dire situation as the best time to start your work life, as a fresh developer, at a new company? Good, so we are in the same boat after graduating. With this in mind, a very straightforward, yet honest slack message during my first few weeks describes the situation quite well.

“I can’t imagine how crappy onboarding is when you don’t have the opportunity to meet anyone”

— the author wants to remain anonymous

Starting from that position, I admit that the impact of the current situation is far worse for other industries than ours. Still, when wanting to learn a lot of new things quickly, not having your colleagues nearby to answer your questions can be quite a bummer. At least for me, it is.

When looking at the other side, a Junior in a team is also quite a challenge to tackle for more experienced colleagues. Things that may seem obvious at first, can take up more time than expected, which makes planning a challenge. And of course, the balance between helping too much and leaving your new colleague alone in the dark is also something to consider. Especially when everyone is communicating through endless video conference meetings, you might lose track of each other along the way.

Photo by Tim Gouw on Unsplash

So, what can actually be done from both sides to solve this conundrum? I will try to provide approaches I found useful during my first few months into this thing called a full-time workweek. The first part of this post aims to give suggestions from a teams’ perspective when handling a Junior, while the second part provides survival tips for starting developers adapting to these suggestions.

START WITH THE FUNDAMENTALS

From a senior’s perspective, just imagine yourself after graduation, taking that next step in your life back in the day. Therefore you should know that universities and working environments are two completely different realities. With that in mind, nothing you explain to the new joiner can be too basic! The best example for that is taking some time to properly ensure the Git workflow, even by explaining the most common commands. In my experience, our highly acclaimed institutions don’t take the time to teach this carefully enough. This of course goes beyond Git in general, but when my seniors took the time to go through the needed development steps, I felt more comfortable in contributing and reviewing their daily processes.

JUNIOR TASKS

Keep em’ busy! The absolute dream would be a refined backlog of junior tasks. Sometimes having an open board to choose tickets from can be quite discouraging, if the freshie picks up tickets that try to solve the P versus NP problem. Jokes aside, onboarding with too complex tickets can be a huge demotivator, whereas a dedicated backlog or labelling system represents the perfect solution. This keeps engagement high and provides more overview in a flood of difficult tickets.

(OWN) BEST PRACTICES

Always question your own way of writing code and clearly distinguish between a real best practice and your personal opinion. Only enforce general conventions, that are applied across the whole industry, rather than your personal preferences. In the end, you don’t want to start a tab versus spaces war over nothing.

CODE REVIEWS

When you’re reading your colleagues’ contributions, give constructive and helpful feedback. Try to point out potential improvements in a respectful tone, without being too focused on your one and only solution. Here, open questions work wonders to hint at possible alternatives. Especially the first reviews should put additional emphasis on highlighting the companies standards and conventions regarding code. Also, don’t be too nitpicky about certain points. Here, some standards used in your company could need some rethinking too, if they turn out to be more of a burden than actually helping the process. So there are always two sides of the coin, try to use that approach in your reviews too.

SCHEDULE (WEEKLY) PAIR PROGRAMMING

Your new colleague is there to learn, so give him or her the chance to observe and to participate by introducing programming sessions. This doesn’t have to be limited to code, your approach on how to solve things and deal with tickets can also be very helpful. Whatever comes to mind, that could be of any value to you when you were starting your job, discuss it with your junior! As already mentioned, every work process benefiting you in your daily business can be of interest to your new co-worker.

BE OPEN

Even though that gets hard at current times, always be open to questions and show your availability. Especially in the beginning, your new colleague might hesitate to bombard you with issues out of politeness, where he or she actually should. I am speaking from experience, trust me on this one. Try to indicate deep work phases by using DND features or status updates within messengers. That way, the rest of the time could be used to indicate your availability. This works wonders in a remote situation.

CHECK UP

In the current situation, checking up on the current (mental) state of your colleagues should be the responsibility of every role in the company. And from a Junior perspective, with fewer responsibilities within a company than other colleagues, one can feel left out at times. So be open to a conversation about this and point out what you are struggling with at the moment. From my angle, regularly scheduled one on one meetings are perfect to observe individual development, as well as addressing the issues mentioned above. This can mean

SURVIVAL TIPS

From here, I wanted to give some advice and helpful resources from my end to grow and learn from the first years of starting in the industry. Of course, I am still at it and no worries, this is absolutely not a list I follow at all times. This is just pointing out resources and techniques that have helped me personally and that I still find useful to this day.

Having a goal in mind really helps with unmotivated days. A broad statement like this is easily covered by simply having some sort of learning roadmap ready to go when you are overwhelmed by learning all those new topics. To give an example, I personally like this one, when looking at the web development side of things. Feel free to create your own one while learning, but a comprehensive map can do wonders.

Set focus times, find a study system. I get easily distracted by everyone and everything, so I really need the hardcore programme of avoiding potential sources of evil. A mindfulness workshop at our company suggested smartphone free mornings, which became my aspired goal for 2021. Buy a clock and say goodbye to waking up watching cat videos for a straight hour. For the system part, I cannot recommend the Pomodoro technique enough. I even bought an hourglass, to physically remind me of these 30-minute intervals. But what works for me at times, does not necessarily mean that I have just solved all of your procrastination struggles. Try out whatever you like and limit your distractions in a way that makes you feel productive.

Keep up to date and be informed, there are plenty of good sources to make computer science topics more accessible. The ones listed below are just general recommendations of mine, feel free to use the comment section for any additional sources you would like to share!

Podcasts

  • Stackoverflow Podcast, covering a wide range of industry-related topics and is hosted in a talk-show way. Usually with a funny, interesting touch
  • Command Line Heroes, a RedHat owned podcast on interesting stories around OpenSource, Linux and everything else
  • Lex Friedman Podcast, not only computer science-related topics but usually offers very deep talks on tech-oriented areas. Pick the guests that you like and try to focus :)
  • Frontend Happy Hour, as the name says, more web development-oriented topics regarding frontend topics with big shots from Netflix, LinkedIn and co.
  • Syntax., entertaining, talk show format on web development topics, listen to it while having breakfast or something, the hosts are entertaining!

Youtube

  • Web Dev Simplified, easy to grasp examples and a great way of explaining
  • Fireship, watch his 100s introductions and add those to your CV! (just kidding, don’t be that person)
  • Coding Train, more beginner-friendly approach which has helped me with harder topics
  • Traversy Media, Udemy-like crash courses to get a lot of information quickly

Websites, Blogs

  • DEV, Reddit like upvote system of stories to keep you up to date
  • Martin Fowler, highly educational, yet insightful — always worth a look
  • Hacker News, more of a Silicon Valley discussion forum, but gives nice insights on current industry developments
  • Dribble, designers’ holy grail, but is usually a nice source for inspiration on current UX/UI trends

Books

  • Head First Design Patterns, helps you to understand the way software is built and why projects are structured in a certain way. Helps you to make decisions and understand new code, highly recommended!
  • The Pragmatic Programmer, when speaking of fundamentals, this book is an excellently written and widely praised source of information. A pleasant read with nice, code-oriented examples on programming “philosophy” and teams building software.
  • The Elements of User Experience, a more general read on UX/UI compared to the specific books mentioned above. Still, it provides valuable tools to view software development from a user research perspective, which can be a good idea to avoid unnecessary work.

Tutorials

  • Java Tutorial by the University of Helsinki, completely free and worth gold if you have at least something to do with Java. Explains programming concepts very well, has a nice community and you can even earn a certificate!
  • Codecademy, just one of many interactive online tutorials but sadly, you have to pay for this one

That is it from my side, hopefully, this post will benefit you in some way. If you have any questions or suggestions, feel free to reach out to me. Just drop me a message on LinkedIn, I will give my best to reply within a reasonable timeframe. And now go get that approving look of your colleagues, while mastering the fundamentals!

Cheers,
Basti

--

--