Hi there,
I hope you had a good start into the week so far! For me, it's going to be another busy week split between infrastructure coding at freistil IT, working on The Server Room (the upcoming Monospace Mentor community), and the non-work time I'm going to spend taking care of myself and my family. Despite all these goals and responsibilities, I'm going to keep my work hours tightly in check, as we've established in the last issue of my newsletter. Now, enjoy issue number 3!

Mentor Monologue

In my conversations with people entering IT, a question that comes up a lot in different variations is "What do I have to know to be successful?" That's why I thought I'd simply summarize my recommendations in the form of "Five skills junior engineers need".

The first skill any engineer needs is problem-solving. As a software engineer, your job is to turn ideas into code. And if you're a system administrator, you get paid to keep software running despite constant changes and entropy in general. Learning how to detect and analyze issues with your software and systems will be part of your day-to-day for most of your career. Once you've noticed that something's not working right, the next step is going to be to identify the root cause. Only then can you go on to design and implement an effective solution. Cultivate your problem-solving skills to tackle system changes with confidence.

On a recent Office Hour live stream, I was asked "What core skill would you advise new dev or ops learners to pick up which could have an impact for their entire career?" The answer didn't take me a single second: note-taking. I wish I had learned about personal knowledge management decades ago. I would still have forgotten shelves worth of knowledge over the decades, but it would have not been lost; I would still be able to retrieve it when ever I need it. Effective note-taking can make your long-term growth so much easier. This applies even more in a team setting. Keeping organized, detailed documentation of configurations, troubleshooting steps, and solutions is essential if we want all this information to be easily available to current and future team members. Build a "second brain" from which you and your team can retrieve all important knowledge.

Our industry is evolving constantly and rapidly, which is why the ability to self-learn and adapt to new technologies is vital. In my experience, it's also great fun; I am deeply grateful that I can expand my skills and knowledge all the time. I consider curiosity one of the most crucial character traits of a great engineer. Stay curious, explore new topics, and leverage online resources (including my courses 😉) to expand your knowledge continuously.

If decades of work experience have taught me one thing, it's that there is one resource of which we will never have enough: time. There's always more stuff to do, but we all have only 24 hours in our day. That's why time management is another key skill for junior engineers to acquire. Your success depends on your ability to focus deeply on a task despite having to juggle many at the same time. But mastering time management also includes making sure you get to take time off, to recharge your physical and mental batteries. Start early with cultivating a way to manage your time that allows you to effectively handle your responsibilities for both your work and yourself.

Of course, this list can not be complete without communication skills. Regardless if you're a software engineer, system administrator or SRE, there won't be a week in your whole career where your work will not require you to communicate. This communication will take many forms: posting to Stack Overflow, asking questions in team chat, or notifying customers of an incident are just a few examples of situations in which your success will depend on your communication skills. Develop your communication skills to share knowledge, ask for help, and work effectively in a team.

These are the five skills junior engineers need the most, in my experience: problem-solving, note-taking, curiosity, time management, and communication skills. If you can think of more, reply with your additions!

Changelog

Now that my WordPress website is fully set up including payment processing, I've also moved my Support Page from Ko-Fi to monospacementor.com. Hence, if you find the advice I'm giving on Discord, Twitch, YouTube or this newsletter valuable and helpful, please consider a sponsorship subscription!

Recommended reading

As an online teacher, I always recommend additional material to my students with which they can expand their horizon. Here's a list of reading tips I've curated for you.

What if we rotate pairs every day?

In this article on Martin Fowler's blog, Gabriel Robaina and Kieran Murphy describe an interesting experiment in which they drastically increased the frequency of a team's partner rotation for pair programming. The experiment resulted in valuable insight on how to make the most out of team collaboration.

git in as fw chrs as psbl

I'm sure that Andre Arko's dotfiles, just like my own, grew organically with a focus more on efficiency than on consistency. I'm also sure his git aliases will reduce your typing efforts in the terminal.

Writing is a thinking tool

This article by Anne-Laure Le Cunff is the perfect complement to what I wrote above on the skill of note-taking. "By putting down your thoughts on paper, you can navigate them more easily. As such, and especially in our age of information overload, writing is not just a means of expression. It’s a tool for clarity, comprehension, and connection."

mxssl/sre-interview-prep-guide

This Github repository contains a collection of valuable information for people who are preparing for interviews for an SRE job.

Thanks for reading!

I hope you found my News from The Server Room enjoyable and helpful. If you have any feedback or questions, simply reply to this email!
Take care!
Jochen, the Monospace Mentor