Taro Logo
Profile picture

Engineering Management Q&A and Videos

About Engineering Management

Being a good manager is hard enough already - It's even tougher for engineering. Learn more about this complex craft and how you can land a stellar engineering manager yourself.

How to handle complaints about a direct report?

Senior DevOps Engineer at Taro Community profile pic
Senior DevOps Engineer at Taro Community

Hey Taro,

I have a question around how to manage a direct report who I’m receiving performance complaints about.

For context, I’m the team lead for a team that works distributed across vertical teams. We have a new hire who’s been working with us for around 3 months now. He’s working with Team A and has recently been helping them to write App X, a brand new application.

Recently the PM for Team A has reached out to me with some general complaints/concerns about his output. The work this new hire is doing blocks most work for Team A, and the PM feels like they should have finished their work by now, and apparently other members of Team A have raised similar complaints.

Additionally, this new hire has a reputation for working very long hours/late into the night after work. On several occasions he’s posted slack messages at 1am, and the PM is concerned that he’s trying to spend long hours after work to try and make up for his lack of progress.

Myself and my manager have both already had casual conversations with him about his late night work to try and put a stop to this, and myself and other team members have tried to help him with his tasks where we can. We’re in a very small company so while I can try shuffling him around to a different vertical, it’s not like there’s limitless possibilities there.

I’ll be bringing this up with my manager today during our 1:1, but I was also very interested in hearing what the Taro community thinks here.

This is my first time as a manager so I’m very much out of my depth here.

Show more
151 Views
4 Comments

What resources do you recommend to learn more about engineering management and leadership especially in a startup context?

CTO at Early-stage startup profile pic
CTO at Early-stage startup

I recently became CTO of a small early-stage startup where I'm leading all technical efforts, including by still doing some coding, but am mostly managing other engineers and focusing on the broader technical needs of the company. Previously, I was a technical lead and IC at startups where I had led small teams of other software engineers on product development, but was more in the weeds technically/coding a lot and was not responsible for people management. I'd like to learn about resources I can utilize to further develop my engineering leadership and people management skills.

What resources would you recommend to learn more about the following:

  • How to build people management skills as a first time engineering people manager? Are there open source or free trainings or resources that are good for this?
  • The latest engineering leadership topics, especially in a startup environment (e.g. how other leaders are tackling common technical and leadership challenges)
  • How to meet or connect with other engineering managers/leaders (e.g. startup CTOs, VP of engineering, or technical founders) outside my company to learn from their experiences or share lessons or knowledge with each other

Interested in any types of resources including blogs, podcasts, YouTube channels, or virtual or in-person communities or meetups (particularly in NYC) etc. I have some favorite resources so far, but it would be great to learn about what resources others in the Taro community find useful. Thanks!

Show more
301 Views
1 Comment

How to convince my engineering org to participate in large-scale migration?

Senior Software Engineer at Series C Startup profile pic
Senior Software Engineer at Series C Startup

Context:

(1) My team owns a service for which we're rolling out a new version with a big revamp of all the public interfaces and a ton of breaking changes.

(2) This is a legacy system that is being refactored to resolve some severe issues that its consumer systems have been complaining about for a long time.

(3) This service has many consumers in our org across multiple teams that depend on it for a lot of critical functionality.

(4) We need to migrate all consumers to the new service. My team cannot parallely support both the versions and the legacy system has to be deprecated before the new service deployment.

Challenges:

(1) Originally, the plan was for my team to roll out the new service and migrate all of the consumers to the new service as well.

(2) Now, we've had a huge scope expansion in the refactoring itself due to which the project timeline has extended massively.

(3) My team feels that working on such a long timeline project is risky and prone to further scope expansion if new consumers start using the old legacy system in the meanwhile.

(4) Another challenge with this is that my team has no context or understanding of all the consumer systems.

Questions:

(1) What approach can I use to now change the plan and convince the managers/tech leads of the consumer teams to own the migration of their consumers code to the new service?

(2) In general, what approach would be ideal for such a large-scale migration - Centralized migration by the service provider team vs distributed migration by all the respective consumer teams?

Show more
163 Views
1 Comment

Would time as IC in big tech (if lacking experience in modern tech and big tech) enhance marketability for EM roles?

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

Trying to decide about taking an IC role I received in big tech (my first one! Thanks, Alex and Rahul!). I'm very excited about it except that I'm concerned about whether I'd still have the option to be an EM again someday, if I took this offer (I am an EM in a very small company now).

Do you think someone with this resume/background would still have a shot at EM roles? Doesn't need to be FAANG or big tech, but EM roles in at least mid-tier companies.

My resume would look like this, in this order:

  • 12 YOE as software engineer and senior software engineer in small non-brand-name companies (no modern tech or working at scale). I did lead some teams of 6-9 people for about two years during this time (some EM jds will count that toward management experience)
  • 1.5 YOE as software manager/director managing three then six people in a small non-brand-name company (got role through internal promotion) (little modern tech, no distributed systems or working at scale, not a great management culture in this company, management is very casual, I have a lot of exposure to the overall business, though)
  • 1 or more YOE as a senior engineer at a big tech company (first work experience working at scale with distributed systems and modern tech, mentor team members, manage an intern or two if allowed, work on management- and impact-related goals with manager, options for impact in the org)

There are actually lots of EM roles requiring experience with distributed systems, microservices, large-scale consumer-facing products, modern tech, etc. I don't meet the basic requirements for these roles now but would meet them after working as an IC in big tech.

Show more
111 Views
2 Comments

How to manage a team towards high performance?

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

I've done a lot of research on how to be a good manager, but now do I just "trust the process" or how do I ensure we are a high performance team over the next half?

I'm a newish EM at a Series-B start up of 150 people, ~25 engineers. So far I have positive feedback from my manager and reports that I am empathetic and supportive. What my manager is telling me now though is that we need to see results. Productivity and performance seem OK in my first months but it is too soon to really see my impact. My manager noted that since we have scaled up from 4 engineers to 25 and gone mostly remote over 3 years there may be a loss of a sense of urgency and the feeling of impact per dev. We are also split into many teams with a smaller scope per team.

The temptation when asked to "get results" might be to ask for constant updates from developers and punish them when fake hard deadlines are given and missed (we are a B2C company so there are rarely actual deadlines). So how do I motivate my team to work hard in a healthy sustainable way? How do I measure the progress and reward them fairly while creating a team focused culture and not one that is competitive and individualist?

Below are some of the management ideas I'm using/working towards. I have lots of room to learn how to do each better, so advice on which to prioritize my effort at improving first would be great in addition to notes on what's missing and what seems off on the list:

Individual attention

  • Working with each individual to set SMART goals for the next half
  • Working with each individual to figure out what motivates them, and do that
  • Figuring out what learning each person wants to do and giving them support there
  • Regular, timely feedback (positive and negative)
  • 1:1s where I do a lot of listening, help remove blocker
  • Shielding from outside distraction and unhelpful pressures

Team culture

  • Creating a lowercase-a agile mindset: people are first and it is ok to fail and we learn from our mistakes. We can fail gracefully by making small, quick launches where we get frequent feedback from the users, and feedback from coworkers on how we are succeeding/failing
  • Making the team effective first, efficient second: 5 wrong things done in a quarter are worse than 2 right things that move the needle
  • Setting team OKRs for the next half that the team wants to accomplish
  • Encouraging team work on tasks, pair programming, positive code review culture, etc
  • Improving the process to make it effective and fun around how the flow of work happens between planning, selecting tasks, marking things as done and tested
  • Team demos with stakeholders to show off results and get feedback

Bonus questions about motivation: In 1:1s how do you figure out what motivates someone since they might not say extrinsic things like money even if that is what they are working for, or the opposite they might be happy at their level and just like the work they do with a good work life balance but might not say that directly either. Also if there is a team of 5 where 2 want money and 3 love the work for itself, how do you tailor their experience to that? The first two will still want fun/interesting work and the second three still want to get promoted and compensated fairly.

Thanks!

Show more
4.4K Views
5 Comments