When I moved from being an engineer to being a dev lead, I knew I had a lot to learn. My initial thinking was I had to be able to do thorough code reviews, design, and architect websites, see problems before they happened, and ask insightful technical questions. To me that meant learning the technology and becoming a better engineer. When I actually got into the role (and after doing it almost 15 years), the things I have learned—and that have mattered the most—were not those technical details. In fact, many of the skills I have built that made me a good engineer manager were not technical at all and, while unexpected lessons, have helped me in many other areas of my life.
What follows are some of these lessons, along with ideas for applying them in your life—whether you are a manager, want to be a manager, or just want to be a better person and employee.
1. Driving consensus. Technical people love to disagree. I’ve found there usually are no definitive answers to a problem. Instead, there are different paths with different risks, and each solution has its own pros and cons. Being able to get people to agree (without being the dictator telling people what to do) means learning how to get everyone on the same page.
Since meetings with lots of people can be very contentious, one technique that has helped me wrangle those ideas is called multivoting. Multivoting is helpful for narrowing a wide range of ideas down to a few of the most important or appropriate, and it allows every idea to receive consideration.
You can do this by first brainstorming as a team while putting all the ideas on a whiteboard, along with the pros and cons of each. From there you go through a voting process until the group arrives at what it considers to be an appropriate number of ideas for further analysis. Organizational development consultant Ava S. Butler explains the multivoting process in wonderful detail if you would like more information.1
2. Bringing out ideas (even from quiet people). One of the challenges of working with introverts and shy people without strong communication skills is it can be difficult to surface their ideas. They tend to be quiet in meetings and keep their ideas (which can be very good!) to themselves. Here are a few techniques I have learned that help me bring these people out of their shells:
- In meetings I call on people or do a round robin so everyone gets a chance to talk. This way, the shy team members are given the floor to speak where they may have otherwise remained silent.
- In one-on-ones I have learned to use the power of silence. I ask a question and then refrain from speaking until the person answers—even if it is a minute later. I had to learn to get comfortable with uncomfortable silence, which has been a powerful technique in uncovering what people are thinking.
- I often have everyone write their ideas on a Post-it note and put it on the whiteboard during team meetings. This allows everyone’s ideas to receive equal weight, and introverted people are therefore encouraged to share their thoughts.
3. Explaining tech to nontech. When you want to rewrite code that already works, you have to justify the change to management. Much of the time nontechnical people do not care about the details. Their focus is on results. Therefore, I have learned to look at all my work, and the work my team does, in a business context. For example, does it save time, money, or generate revenue—and then how do I best communicate that?
I frame my ideas in a context that matters to the specific audience I am addressing. Using analogy is one technique I have found to be quite powerful.2 Explaining an idea through analogy allows you to consider your audience’s perspective and talk at their level, never above them.
4. Being a good listener. When you manage people you really must learn to listen. And, by the way, listening goes way beyond paying attention to what is said. You should also be paying attention to body language and behavior.
I like to use the example of an employee who always arrives early to work. If that person suddenly makes a new habit of showing up late, this could be a cue that something is amiss. By listening to that person’s actions, and not just their words, you gain valuable insight and can manage with greater empathy and awareness.
5. Caring about appearance. When you are in a leadership role you often meet with people outside of your immediate co-workers who do not know you as well. And they judge you. Plus, studies have shown that your appearance strongly influences other people’s perception of your intelligence, authority, trustworthiness, financial success, and whether you should be hired or promoted.5
Growing up, I was taught by my grandfather how to dress for the job I wanted, not the job I currently had. As a new manager, I put more of an effort into my appearance, and it definitely had a positive effect, especially when interacting with customers and clients outside of the organization.
I recommend emulating the people in your organization whom you look up to. Look at how they dress. Study how they carry themselves. Watch how they conduct themselves in meetings, parties, and other events. This is where you can get your best ideas for how to dress and communicate success. You want your work and reputation to speak for itself, but do not let your appearance get in the way of that.
6. Caring about other disciplines. The more you know about other facets of the business, like sales and marketing, the more capable you are of making strategic decisions. The higher up you go, the more important this is, because you are not just running software—you are running a business.
It is also vital to understand the needs of your customers. You could build what you believe is an amazing product, but it could end up being useless to the customer if you never took the time to fully understand their needs. Even if you work in back-end development, caring about the end user will make you create better solutions.
7. Being the best technologist does not make you a good leader. If you are managing enough people or products, you do not have time to dive into the deep details of the technology. Moreover, you need to learn to trust the people on your team. It is better to let them be the experts and shine in meetings than to spend your time looking over their shoulders to know all the details.
The best skills you can have are these:
- Ask great questions that get to the root of the problem. This helps others think through their challenges, uncovering issues before they arise.
- Delegate and defer so that you are able to accomplish more while empowering those around you.
- Teach people to think for themselves. Instead of prescribing answers, ask people what they think you would say or tell them to do. I highly recommend David Marquet’s talk, “Greatness.” 3 He reveals that while working as a captain on a military submarine he vowed never to give another order. Instead, he allowed his reports to make their own empowered decisions. This small shift in thinking brought about powerful change.
8. Being organized and having a system. When you are responsible for the work of others, you must have checks and balances. Practicing strong project-management skills is key. You must have a way of keeping things organized and know what is going on, and be able to communicate it when things are not going as planned.
It is also important to be strategic about your own time management. I start each week with at least 30 minutes dedicated to looking at my top priorities for the week, and then I carve out the time to make progress on these priorities. One time-management tool that has been successful for me is time blocking, where I plan my days in a way that optimizes my time for my productivity (for example, I am a much better writer in the mornings so I make sure to do my writing then).4 This helps me optimize my time and always know the best way to use a spare 15 minutes.
Similarly, I have a system for keeping track of my great ideas. I keep an Evernote where I save articles I love or interesting ideas I come across. This gives me a little vault of information I can go to when I need to get inspired, write a blog post, or come up with something worthwhile to post on social media.
The point here is to have systems in place. You need a way to do all the things that are important and keep your information and details organized.
9. Networking. If you think about it, every job offer, promotion, and raise was not given to you because of the work you did. The quality of your work may have been a factor, but there was a person behind those decisions. It was someone who gave you those opportunities.
If you do great work and no one likes you, then you simply will not be as successful. Be someone with whom people want to work. For example, helping others, listening intently, and caring about the lives of the people around you will help you profoundly. I am always looking for ways to expand my network, while also deepening the relationships I have with my mentors and friends.
I hope these ideas help you become a better leader or employee. Pick one or two to focus on each week, and see where it takes you—progress is a process! I would love to hear from you, especially if you have any other ideas to add to this list.
Mal Managerium: A Field Guide
Sink or Swim, Know When It’s Time to Bail
Adopting DevOps Practices in Quality Assurance