Over the past few months I've had the opportunity to mentor several different people. I have compiled this list of my "greatest hits" from those conversations. Originally this post was titled Jenn's guide to thriving as a sysadmin and Jenn's Defensive DevOps but the information is general enough for any tech career.
Documentation is your friend.
Please write down your process. When you are half asleep and paged, being able to follow a procedure will get you back to bed faster.
Some documentation is better than none.
Start small with the super common tasks. Slowly work up to the bigger rarer stuff if you currently have no documentation.
Congratulations! You can start scripting what you documented.
See how sneaky that was. Now that the process is written down, scripts can be made to help make it faster and easier and reproducible!
Sometimes you need to ask forgiveness instead of permission.
If automation is scary to the rest of your team, start with scripting your small tasks and demonstrate how helpful they are to you. Ask the old timers about edge cases to make your scripts more robust.
Take a vacation.
Your work is documented and maybe scripted. Go somewhere for a week. Feel confident that everything won't burn down while you are gone.
Meetings don't have to always suck.
Tired of being assigned note taker because you have the nicest handwriting? Jump up and start writing on the board. You get to direct the conversation by writing key points or drawing diagrams. Someone else can take notes (or at minimum take a picture of the board).
Better yet, assign roles for meetings and rotate roles each week.
Force everyone to be the note taker at least once before repeating. Share the pain.
Give credit to people in meetings.
Everyone has a name, use it. Don't let others steal ideas.
"Thanks Bob for that insight, Alona also bought that up last week."
Hate writing emails? Use a script!
Yes, I script a lot of my communication. That way I'm not fretting over sounding too formal or wondering if it makes sense. If I have to write it more than twice, I document it and make a script.
Project going sideways? Update your manager/customer/team.
I like to give two options when things aren't working according to timelines. The one I don't like, I stress the impact to the customer it will have if we choose it.
"I ran into a problem with this upgrade. It requires a complete rewrite because it no longer compiles due to being so old. If I complete it now, you will have to do a full regression testing during your busiest season. Do you want to do that or can you wait until December?"
Give timeline updates sooner rather than later.
Loop people in. They can usually adjust timelines or offer support. If you don't let people know until right before the end, they will be frustrated at having no action.
To stop myself from going completely off topic when researching, I give myself time limits. Small issues get one hour limits, bigger get half or full day limits.
I check to see if I have made progress at the limit, if not I ask for help.
Have a hobby outside of tech.
Sometimes you just need to walk away and clean your head for the solution to suddenly appear.
Also, you get a free small talk conversation topic to use!
Go to conferences. Find local meetups. Talk to co-workers at lunch. Use social networks, IRC, Discord, Slack, etc.
There is a networking option you can work into your schedule and time right now. Feel free to start super duper tiny small but start.
You will get better. Keep stretching your skills. Do silly things that shouldn't be done in the real world, like my super throttled VM that was a domain controller/exchange server/sql server or my pink & purple unicorn Drupal theme (neither were pretty).
You are further along than someone else.
You can mentor in person, over chat, heck even blog posts or Twitter threads can be mentoring.
Sometimes you can't see how far you have come until you help someone else.
As I said on my Twitter thread,
You got this. You belong. You aren't alone.