Location: San Francisco
Current Role: Engineering Manager at Helpshift
What’s your background and how did you get into management?
I was a software engineer for 14 years when I decided to get into management.
I love writing software and yet I decided to venture into this arena. There were 2 thoughts that drove me:
- I know how to build good software. Am I capable of building a good team? This seemed like a good challenge to tackle.
- I was wondering if my number of years of experience would start working against me. I thought of learning an additional skill of management where I felt that more number of years of experience works in favor of the person than against.
What are the biggest challenges you face?
In my current job, engineering is split between two offices, and hence the challenges of remote offices are front and center for me.
As Adam Schuck says, “what’s necessary for a distributed team is actually valuable for all teams”. With remote offices or distributed team, rigorously updated documentation is a must. Well, this is useful for teams that are in the same office as well. With remote offices or distributed team, asynchronous communication is a must. Well, this is useful for teams that are in the same office as well, especially because it gives engineers the required 3-4 hours in a day for deep work. With remote offices or distributed team, well-defined process is a must. Well, this is useful for teams that are in the same office as well. It’s the only way to scale. And so on.
Another difficulty is building rapport with colleagues without “let’s go for coffee” time. My experience is that this gap can be bridged by having structured scheduled time for the same. Again, a well-defined process is helpful here.
For me, time zones has been the biggest challenge with remote offices – 12 hour time zone differences are painful, because I end up having to sacrifice my evening family time. Splitting meetings into half evening and half morning meetings did not work out because it started affecting how much time I have for sleep. Unfortunately, there’s no silver bullet here. The best I’ve been able to do is to restrict evening calls to as less nights in a week as possible. The antidote is asynchronous communication, but that’s a larger cultural shift that needs to happen across a company.
More on this at https://www.remoteonly.org/
What is your approach to hiring?
I have still much to learn in this area.
The one thing that anecdotally improved our candidates pipeline was writing the job description in terms of what the candidate is looking for, as opposed to what the company is looking for. I was inspired by https://hiringengineersbook.com/post/trouble-hiring/ .
In the future, I would spend more time on having a standard operating procedure for hiring.
What’s your advice for managers who are just starting out?
The biggest obstacle to being a good manager, in my limited experience, is changing the mindset. It’s no longer about me or what I can do – it’s all about what the team can do! My project is no longer writing code – my project is building an effective team. I can no longer can get quick wins – I have to wait for wins by the team. It’s no longer about deep work just for me – it’s about enabling deep work for my teammates, which means shielding distractions, ensuring a good sequence of projects, etc. And so on.
What’s your work day like and how do you manage your time, emails, etc.?
It’s a cliche at this point, but I do believe in http://www.paulgraham.com/makersschedule.html and break up my day into manager’s schedule for the first few hours of the day and few hours at night, when I have calls with the other office. Post-lunch, I try to have a maker’s schedule, whether it is doing code reviews, reviewing dev specs, or writing code myself.
What’s a personal habit that contributes to your success?
I would say revisiting fundamentals often, has helped me.
As a manager, there are only 2 things that determine my performance – results of the team and retention (hiring). I focus on those.
Plus, I keep learning and unlearning what it means to be a good manager.
For example, a year ago, I read Accelerate and my focus was all about having the best tools and workflow, and even got my team to explore a few options. Ultimately, it didn’t work out, and that was fine because it was an exploration experiment. However, I realized that it was actually detrimental because my team didn’t see more features being shipped and didn’t see the connection between tools and features, even though I did. Since then, I have unlearned about focusing on things that improve team’s velocity, and instead focus on the team’s velocity itself and things we can do as part of that work. Since then, making steady progress and shipping features regularly and on time, has boosted morale far more than anything else. Now, I consider momentum far more important than having the best tools or workflow. Maybe I’ll unlearn this and learn something new in the next six months.
Share an internet resource or tool that you can’t live without.
OrgMode, my secret weapon 🙂
I’ll sneak in another one, because this one’s more on-topic : https://softwareleadweekly.com/
If you could recommend one book to managers, what would it be and why?
The First 90 Days. Because it clearly walks you through understanding the context and foci of management. Getting started on the right foot is important and this book will help with that. Look for “structured learning process” and “five types of conversation with your boss” in particular.
What is your approach to mentoring and coaching members of your team?
My fundamental question every day is: For each person, what is the next challenge?
I have to approach the question both from the person’s point of view, e.g. are they ready for it, if not, how will they be ready for it? as well as the organization’s point of view – Does the project have enough clarity? Has the project been green-lighted by leadership? Are other teams in the right spot to make this project successful?, etc.
Where can we go to learn more about you? (e.g., LinkedIn, Twitter, Blog, GitHub)
My blog – https://swaroopch.com