Traits vs Skills

As an engineer, most of the things you are going to work with will be skills. You can learn a language, with effort understand distributed systems, keep taking Andy Pavlo courses and reading DB books to get good with databases. As long as you have a decent social skill, you can learn (very happily) all the other skills needed to be a great engineer.

Moving to staff+ role? Having extreme ownership can get you a lot further along with you honing the technical skills.

Its not the same in Management. A lot of the tools you need to grow in this career seem to be traits. People pleaser? works well as an engineer, try to please people as manager and your roadmap can be in the trash for all you care. Now good luck changing something you were for 30 years of your life.

There WILL be times where you have to change yourself. Sometimes they are for the good. They will definitely translate well into your personal life.

My manager taught me the lines of Dr. Who that I will never forget “Never give in, Never give up, always be kind”. These are the things thaty you have to learn more moving forward. Understanding different perspectives and forming your own strong view of the world will be how you become a strong manager.

After reading “High Output Management”, “Manager’s Path” and “The Lean Startup”, Now I have ended up reading “Bhagavad Gita”, “Meditations” and “Tao Te Ching”. Might help to build the perspective you need, might even help you with convincing or understanding others.

But always look out for characteristics that you have to improve on yourself. Being a manager is going to be a huge part of that.

Communication

I thought communicating to the team and reports will be the hardest. But that seems to be much easier especially coming from an engineering perspective trying to setup good standards and asking the right engineering questions.

On the other hand, communication with the execs has been the hardest as the back and forth ideation of an engineer doesn’t work here. You can’t rerun the code if you aren’t satisfied. Most of the time you have to run only once. Maybe a bit more, but quick iterations is not an option. Everything has to be succinct. The statements made by you have to be correct, factual and clear. Decisions are made based on it. Leaders will comeback to you if there is a misrepresentation.

Everytime they have to ask an extra question to clarify doubts feels daunting. They are always in a hurry and not making them follow up and ensuring they are also getting all the context needed seems to be very important. Providing the exact right answers without being verbose is a very important skill without assumption on their part is important.

I am still learning this. A technique I try to follow is using the BLUF pattern where I can give the Bottom Line, Up Front and then go about with my verbose answer seems to work.

Taking time to think, frame and then respond seems to be accepted if the situation is not a matter of high urgency. Correctness and clarity is preferred over quickness.

Working relationship with Peers

The reason every manager should have great people skill is not just to work with your engineers. There might be situation to use great people skills with your engineers, I might not have come to that point as I work with the best team.

But the main reason is to make it work with your peers. The Product Manager in your team, his boss, the manager in your sister team, the platform teams, their managers, the manager’s boss, sales team, and so many more people are now your peers. Unlike sending a code review and trying to figure the common ground on your review, you are going to work with these people working on different priorities.

You and your peer are working on achieving 2 outcomes out of the same PR, sometimes they might conflicting against each other. Trying to be prepared for this situation and being ready to work through a compromise, or convincing the other person of your solution, seems to be a huge part of the job. And that need PEOPLE SKILLS.

The times I had to put my foot down were one of the most uncomfortable situations. But you learn through them. Most of the time it never comes to this situation as you are working with rational adults who listen to reason. You yourself are one so you are ready to understand the others point of view.

Coaching

People are going to talk to you about career advice. Be prepared to give them. Coaching is a skill of its own. Ensuring you ask right relatable questions rather than going on a monologue of boring advice is very important.

There are great many resources on coaching, I am in no way a expert at this. But one technique I seem to lean on is asking questions. Ensuring you are not just ranting advice and instead asking people questions that will point them in the right direction is a much easier way to convince on your thoughts.

This helps them be an owner of the solution and helps them pursue it with much more enthusiasm than just pointing them in a direction with a long speech.

Long speeches might have their area, if you know exactly what you are talking about and you definitely know it fits this situation. But they happen very rarely. Save them for the moment. You will know when it is.

Prioritization

Stopping engineering is one of the biggest hurdle. If you are technically too strong, standing back a bit is going to be a struggle. Don’t say yes to everything. Setting expectation with product team and other high priority alerts is going to be a bigger skill to be learnt. Create friction by asking rationalizing questions. Try and slow down the product team who come with highest urgency by asking questions so that they have to rationalize themselves. In the end, there is a good chance the high priority item could wait a few more weeks. This has been the situation for most high priority alerts that I have seen.

Interviewing

Hiring would have already been part of your journey if you have made it to a manager. But hiring manager round expects something very different from technical round.

As a hiring manager, you would check for their technical ability, but more importantly you would see whether they would fit into the team.

Are they too strongly opinionated and not ready to accept feedback. (Mind you strong opinions are good, they just have to be weakly held and open to conversation and feedback). Are they too silent and your team is already silent? well you need a personality that can balance that. Are they able to handle conflicts? Are they able to work in a team? Are they able to challenge the status quo in a healthy way?

You can have upto 3 rounds to test their technical skills, but 1 or maximum 2 rounds to check their cultural fit in the team. So test their cultural fit. See if they are bluffing on their interview and try to break them away from the process if they won’t fit technically. But definitely ensure they will culturally fit into the team you are trying to build.

1:1

One of the best ways to grow confidence with the team is by ensuring you “Ask don’t tell”. Especially in the first few weeks, you are going to be only asking. Learn about the team, the things they like, they things they don’t like, what they are happy about, what not so much. This is a great period where the team doesn’t assume any taste from you and answer to your need. Write their answers down. Try to act on them wherever possible. Want to change the standup time? Good, bring it up in the retro. Team doesn’t feel happy about the PR review process? Great! discuss it in the retro. Teams are usually very intuitive on what’s not working for them. Trying to understand that and acting on them get’s you a long way. There might be situations where the team is in a novel place and you have to set you new proecesses, act with lot of guidance but this won’t be the norm.

1:1s can be a great place to build trust and create a relationship with your team. Know them and it becomes much easier to work with them!