/manager-readme

A cheat sheet to working with me and understanding my thought processes and expectations.

Manager Readme

Motivation for this document

Consider this the cheat sheet to working with me and understanding my thought processes and expectations. It will evolve as I evolve - I will try and document my changes via commit messages so you can better understand that evolution.

My role

First and foremost, it's my job to make sure that you, as an engineer, are fully supported in your work. This can cover a number of areas, but the key ones are:

  • Ensuring that you have no blockers in your work.
  • Helping you to grow in your career as a software engineer (or branching out into other areas if that's where your interests lay).
  • Clarifying and providing information on efforts outside of our team, and making sure that your voice is heard, both within the team and in the company as a whole.

On the team level my role is to ensure we can provide the development expertise needed to support the Product side of the company in achieving our goals (whether that be team goals or company goals). This can manifest in numerous ways. Some examples are:

  • Facilitating (or making sure someone is facilitating) work and discussions within the team.
  • Coordinating with other parts of the company to make sure we're allocating development time in the right ways.
  • Ensuring the technical quality of all the code we deliver.

What you can expect of me

Follow through. When I ask what's blocking you in a 1 on 1, or when you tell me that you're lacking understanding of what we're working on, you can expect me to follow through on fixing or mitigating the situation. If I'm not fast in doing so I hope that you inquire with me about it. While I try not to let things slip between the cracks it can happen sometimes, but my main priority as an EM is to support you in your work, so do let me know when things aren't getting fixed fast enough.

Feedback & praise. This is not an area I'm great with, as I tend to mentally note things and then forget to follow up on them. I'm actively trying to work on this though, so I will try my best to give you praise for you work, and actionable feedback when necessary. I'll need your help though - if you feel you need feedback on or praise for something please nudge me and I'll give it!

1 on 1s. We will have a 1 on 1 on a recurring basis - my current preference is towards one hour every two weeks as this allows for deeper discussions, but the frequency is completely negotiable. The key thing to remember about this is that it's your time! I will have a default template to follow, but that's only meant as a placeholder. If you want to spend the whole 1 on 1 discussing one topic then we can. If you want to go longer, finish early, move it to another day that's also up to you. You own your 1 on 1!

Career development. One of my goals as your manager is to help you progress in your career. This includes identifying long-term goals and breaking that down into short-term goals that server both you and the company. I'll also try my best in helping you to identify where you want to go in the long-term, though I'll need a lot of help from you on that front!

What I expect of you

Mentoring. People generally consider mentoring to be an expert <> beginner dynamic, however I believe strongly that mentoring can happen in any direction. In my former career as a teacher I saw that students learnt best when learning from each other, and I think this is the same for software engineers. Pair program, put effort into code reviews, ask questions, share problems, and share solutions. We all have a lot to learn from each other!

Feedback. Your feedback, both for me personally and for the team in general, helps me to do my job better.

Open communication. This is incredibly important for having our team work well together (particularly while we work remotely). Decisions should be documented, questions addressed to the team, and your current work shared in the appropriate places (e.g. standups). We should rarely need to directly contact each other via Slack (some exceptions would be private issues or re-arranging our 1 on 1 time).

Win as a team. Support your team members and let them support you.

What I value

Complaining. No, seriously, I do! If you think something can be better about what we're doing, or if something is making your work particularly difficult, I want to hear about so we can work together to improve things. The caveat here is that I only value it if the intention is to change things for the better and if you are proactive about reaching that point (I'll be there to support or lead when necessary of course).

Honesty & transparency. This is somewhat similar to the above, but it can have other variations too.

Personality quirks

I'm not great with silences in conversations 🙊. I'll try and fill the gaps, so feel free to ask me to be quiet if I'm doing this too much (or say something like "let me think about it for a moment").

I can swear a bit 🤬. It's not a sign of anger or me being upset, rather it comes from a place of passion. I'll never direct at you or any person, though you might hear me saying some salty things about Jira! If it bothers you just let me know and I'll tone things down - I won't take it the wrong way.

I have a dry sense of humour 🤡. It might be hard to tell if I'm joking sometimes! Ironically though, I can also get quite serious when it comes to work - I absolutely appreciate humour about our work, but I might miss it sometimes due to my head being a bit too deep in things!

Funnily enough I'm a textbook Australian according to this 😅

My work processes

Communication

My preference is towards async communication that's as close to the context as possible. In general I prefer this order of communication:

  • Comments on Jira tickets/RFCs/Coda docs/Google docs
  • Comments on PRs (if outside the context of a code review, it's probably preferable to communicate via Jira)
  • Public Slack channels
  • Private Slack channels
  • Slack DM / email

Calendars

I keep my work calendar public, so you can check when I'm available and if my currently scheduled event is potentially interruptible. I like to time block work in my calendar for my own benefit, but these events are not set in stone, so I mark them as "free" so you can book me during that same time.

Meetings

When running a meeting I try to ensure the following happens:

  • The purpose of the meeting is clear.
  • There is a clear agenda for the meeting.
  • At the end of the meeting there's a clear action, whether that be a decision, a next step, or potentially scheduling a further meeting if needed.

If you ever find that I'm organizing or facilitating a meeting and one of the above points is missed, I'd very much appreciate to be called out on that.

Inspired by managerreadme.com.