Location: San Francisco
Current Role: Director of Engineering at PlanGrid
What’s your background and how did you get into management?
I grew up in Germany and moved to the Bay Area 4.5 years ago to join a small startup. I gathered a fair amount of technical and project leadership experience in my first two jobs, but I didn’t get into people management until I joined PlanGrid at the end of 2015.
At PlanGrid, I started out as an iOS engineer with some tech lead responsibilities. After a year an engineering manager role on the team opened up. At the time I was skeptical about becoming a manager, as I had spent the last years building a career on deep technical knowledge. I had started speaking at conferences and contributing to open source projects frequently. I enjoyed that a lot and was a little concerned about potentially leaving it behind.
I was also worried about getting bogged down in administrative tasks. At the same time, I realized that the new role could be a good chance to increase my impact on PlanGrid’s success.
I had a lot of connections to the iOS community so I knew I could help a lot with hiring. Initially, the team was just two folks, so I could easily opt out and return to engineering if I didn’t enjoy the role. I made it clear to my manager that I considered myself on trial for the first few months.
In the next six months, we grew the iOS team to seven folks. The mix of my connections and the fact that we had a very interesting, mobile-first product, made hiring comparatively easy. The team was pretty senior and very low maintenance, so I still had time to code about 60% of the time.
After my six months trial, I was very excited to see the great culture on the team and the amount and quality of product we were shipping. Cleary something we couldn’t have done with a team of two. That showed me the impact and the long-term rewards that management can provide and made it clear to me that I wanted to continue in that role for the time being.
Once I entered the world of management, my purview extended quite a bit. I started to think a lot more about the health of the entire business and where I could have the largest impact. PlanGrid has grown a lot and more opportunities opened up. Right now I’m a manager of managers and head up multiple cross-functional engineering teams. This is an entirely new role which I’m still learning a lot about.
What are the biggest challenges you face?
Some of the biggest challenges I face are, I believe, the typical ones you see at growing engineering organizations.
The way we communicate, the engineering processes we use, the way we structure and staff teams needs to constantly evolve. What worked a year ago often is no longer working today. I try to strike a balance between testing out changes and keeping stability. When I believe changes are necessary I try to involve the whole team in finding the right new structure and processes and communicate very transparently why we believe these changes are beneficial. When possible I also like to put changes on trial for at least for a few weeks before formally implementing them. This is an area where I’ve learned a lot in the last few months.
A lot of my personal challenges stem from my new role in middle management. I’m no longer directly responsible for an engineering team, at the same time I’m not responsible for the whole engineering org. If I have an idea about how to improve our product & engineering efforts, there are many people I need to communicate with and get buy-in from. I’m still working on a framework for myself to determine which degree of involvement is required for what type of issue. As a company, we’re also learning more about areas in which we want organization-wide consistency and areas in which it is fine for teams to have autonomy and diverge. It’s important to tackle these questions to avoid organizational inertia as we grow.
Personally, I’m also still learning how to influence and guide the teams I’m managing indirectly. As a line manager, I would often lead by example. For instance, I would build a shared component and document it to reinforce the importance of preparing our codebase for an influx of developers. Such tactics no longer apply to the role I’m in right now. Storytelling as part of 1-1s, team-wide presentations, and team-wide emails are tools I’m trying to use more frequently now.
Lastly, I have to deal with a lot more administrative work than in the past. Maintaining hiring processes, tracking project statuses, etc. I’m looking into software that can help in these areas, as these tasks are by far the least enjoyable of my day-to-day.
What is your approach to hiring?
I am a strong believer in heavily investing in building an engineering brand. This is based on my experience with the iOS community, where I was able to hire folks that I met at conferences, interacted with through open source, etc. The fight over talent in the Bay Area is intense.
The team that candidates will be working with and learning from is one of the most important criteria in their decision making process.
Engineering brand can exist at the company level and the individual level. I believe for young organizations it is best to rely on the connections of their early hires, instead of trying to bootstrap a company-wide engineering brand. Work hard on hiring a few folks with a strong personal brand or a strong network. Easier said than done. But these folks will make hiring 10x easier down the road.
Once you have a brand you will have a larger pool of candidates to choose from, which means you can be more selective.
I have some core attributes that I like to see in every candidate: a passion for learning and growing, reliability and a sense of ownership, honesty and the ability to collaborate and debate selflessly and respectfully.
Beyond these attributes what I’m looking for depends a lot on the role. Sometimes I want someone product minded, other times someone who is primarily excited about deep engineering challenges. In my experience, it’s very important to have the right balance between these types of engineers on the team.
My teams and I put a lot of thought into the interview process. It’s our chance to show candidates how our organization functions and what we value. We avoid trick questions and prefer to have folks working on problems that are close to the ones we encounter day-to-day. We want folks to collaborate with candidates during the interview. We brief everyone on the panel on candidates that are coming in, so that they know what to focus on and look for.
Our ability to iterate on our interview process and make adjustments for different types of candidates is a competitive advantage compared to larger companies.
What’s your advice for managers who are just starting out?
Blanket advice is hard. But I have two pieces that should apply pretty widely.
Firstly, one of the biggest differences in switching from engineering to engineering management is that you no longer have clear tasks and deliverables. Your goal is to improve the performance of your team, but it is mostly up to you to identify what you need to do in order to accomplish that. You need to make time to inspect how your team is working, identify areas for improvement and devise tasks from that.
Secondly, and this advice is pretty common, you need to get used to the very different reward structure of engineering management. You will no longer feel the adrenaline rush of fixing a complicated bug or coming up with a good API design for a complicated problem.
You will rarely sense progress on a daily basis (with the exception of having strong candidates sign an offer). However, if you’re doing a good job, you will likely notice the impact of your work in a few months. It can be very rewarding to look back and see how far your team has come. Keep that in mind for days when you feel like you’re not making progress.
What’s your workday like and how do you manage your time, emails, etc.?
On Sunday evening or Monday morning, I look at my calendar and my todo list and try to plan out what I want to focus on in the next week. Each morning during my commute to the office I pick the tasks I want to work on during that day and mentally prepare for them.
I’ve been using OmniFocus (a todo app for Mac/iOS) for a few months to help me keep track of tasks. It allows me to track todos for different categories, e.g. “hiring”, “processes”, etc. and pull the tasks I want to focus on into a single cross-category view.
I try to arrive at the office at around 8 am. I usually spend about an hour coding on personal side projects, which keeps me technically fit and allows me to explore new technologies.
Throughout the day I try to batch up reading emails and Slack messages and avoid constantly checking these channels. I have fine-tuned my notifications such that I can respond to time-critical questions quickly. But I consider a large amount of time-critical questions a sign that some process is not working the way it should.
On a regular basis, typically at the end of each week, I try to reflect on how I’m using my time and how that can be improved. I think about the areas in which I can have the largest impact and check if these are the ones I’m investing my time in.
What’s a personal habit that contributes to your success?
Running. I used to hate it when I was younger because I was really bad at it. At some point, I got into the habit and now I can’t imagine a life without it. For me going on runs simultaneously serves as meditation and a source of many new ideas. Almost every time I return from a run I grab my phone or computer and take notes on ideas I came up with. It also refreshes me mentally and wakes me up after a long tiring day. Running has also reinforced a strong growth mindset in me – a few years ago I was barely able to run 2 miles and right now I’m in the middle of my training for the San Francisco marathon.
A second important habit of mine is to always question the status quo. I do like to read a lot in order to learn from other people’s experience; at the same time, I think it is extremely important to always analyze the situation at hand by using first principles. The pace at which technology evolves means that we’re all beginners at building well-running organizations that build good products. I’m convinced there are better ways than today’s widely accepted best practices for almost all key activities, such as hiring, writing code, implementing software development processes, etc.
This post is getting long, but writing is another very important habit to me. I’m a big fan of the “writing is thinking” idea. Steven Sinofsky did a great job of describing its benefits in a recent blog post.
Share an internet resource or tool that you can’t live without.
ActiveInbox. It’s a Gmail plugin that allows you to treat emails as tasks. I have a workflow in which I touch every email exactly once and then archive it. If I need to follow up on it I can tag it as an email that requires action by a certain date. If I’m waiting for a response from someone else, I can mark that as well. ActiveInbox then provides me with a dashboard that shows me which emails I need to respond to and which ones I’m waiting on. Not having to keep track of all of that mentally is great.
Slack has thrown a little bit of a wrench into my workflow, as I’m no also receiving a fair amount of tasks there. It’s on my todo list to see if I can integrate Slack with ActiveInbox in some way.
If you could recommend one book to managers, what would it be and why?
If I have to stick to a single book I would say “Principles” by Ray Dalio the founder of the Bridgewater hedge fund. Whether or not you agree with the intense culture he has built at Bridgewater, the book contains a very dense list of management best practices, together with useful anecdotes. Most non-fiction books are too long for the information they convey. This is one of the densest and most valuable ones I’ve found on management.
Where can we go to learn more about you? (LinkedIn, Twitter, Github, etc.)
This series asks engineering managers to share their experiences with the intent of helping other engineering managers learn and improve. Have someone you want to see featured or questions you think we should ask? Contact me.