What I Wish I Knew When I Managed My First Engineering Team
April 20, 2021

Dan Pupius

As a developer at Google in the early 2000s, I often felt out of place. My focus at the time was Javascript, which many Googlers didn't consider "real engineering." But by the time I left Google, web programming was mainstream and through my contributions to Gmail and the frontend infrastructure used by dozens of products, I'd achieved the level of Staff Engineer. More importantly, I finally considered myself a pretty good engineer.

I moved on to Medium as an individual contributor. I valued teamwork and leadership from all angles, but didn't have any official management experience. In fact, I wasn't particularly excited by the prospect of being a manager, always feeling more comfortable leading from behind than in front.

While I bristled at "manager culture" — with its command and control origins — I also felt that the "no manager" movement had created a toxic void that left employees feeling unsupported or jockeying for power. So, when the day came that I was asked to step up and take lead of the engineering team, I decided to pursue a different path, that of the servant leader.

Luckily Medium was well primed for this approach, with both Ev and Biz, who had seen hyper-growth at Blogger, Google, and Twitter — actively wanting to do things differently this time around.

I saw my role as an organizational problem solver; instead of telling individuals or teams what to do, I worked to put in place support structures for junior engineers, identified owners for infrastructure, refined our hiring process, and generally worked to clarify roles and responsibilities. The goal was to empower individuals and set teams up to work in ways that fit them best, while also streamlining processes to reduce stress and confusion.

As we grew the team and evolved our processes, I questioned the status quo and evaluated processes from first principles. Here are some of the things I learned along the way.

Build a 10x Team, Not 10x Individuals

Team performance is about so much more than just the sum of the individuals involved.

A high-performing team can truly be 10x, overachieving and reaching goals ahead of deadlines. At the same time, a team of disconnected but exceptional individuals can perform terribly, if the conditions for collaboration are not there. It's imperative that managers create a collaborative environment, or every team member — especially in this remote world — will feel like an island.

Rethink Performance Reviews

Traditional performance review processes do not do a good job of serving individuals' needs. They tend to be backward-looking performance assessment, as opposed to forward-looking feedback — feedforward — that re-establishes expectations for the future and lays out a path for how individuals can progress, both in terms of the work they do and how they fit into the team.

Furthermore, coupling feedback with assessment muddies the water — who is the audience? The manager or the individual? I found that decoupling career feedback from performance assessment provides a more meaningful experience for individuals which actually helps them grow much faster.

Establish Rituals and Routines

Humans are ritualistic creatures. Building a drumbeat or rhythm into your work processes makes everything easier. With a good cadence, everyone on the team knows what's happening and when. In chaotic environments, teams become disjointed and find it hard to settle into deep flow states where the work seems to flow effortlessly. Also, not knowing what's coming day to day adds a layer of anxiety and stress as team members prepare for the unknown.

Constantly Observe, Diagnose, and Evolve

Keeping dev teams effective is a constant process of observing and diagnosing. Structure and practices will never be stable for long, so you need to build and exercise a muscle for change. Reorganizations are traumatic and disruptive, so aim for continuous evolution instead of "ripping the band-aid off" every so often, which will waste time as teams settle back in and adjust to new work parameters.

Always Remind Team Members About the Big Picture

People need to be constantly reminded of the vision and how their work fits into the big picture. If not, even the simplest tasks can feel pointless. Even if you feel like you are repeating yourself and becoming boring, it's important to constantly work to keep everyone aligned and focused on the North Star. Without that guide, everyone builds their own rowboat versus constructing a stable ship.

Dan Pupius is Co-Founder and CEO of Range
Share this

Industry News

December 01, 2022

Salesforce introduced a new Automation Everywhere Bundle to accelerate end-to-end workflow orchestration, automate across any system, and embed data and AI-driven workflows anywhere.

December 01, 2022

Weaveworks announced that Flux, the original GitOps project, has graduated in the Cloud Native Computing Foundation (CNCF®).

December 01, 2022

Tigera announced enhancements to its cluster mesh capabilities for managing multi-cluster environments with Calico.

December 01, 2022

CloudBees achieved the Amazon Web Service (AWS) Service Ready Program for Amazon Elastic Compute Cloud (Amazon EC2) Spot Instances.

November 30, 2022

GitLab announced the limited availability of GitLab Dedicated, a new way to use GitLab - as a single-tenant software as a service (SaaS) solution.

November 30, 2022

Red Hat announced an expansion of its open solutions publicly available in AWS Marketplace.

November 30, 2022

Sisense announced the availability of the Sisense CI/CD Git integration module.

November 29, 2022

Codenotary announced TrueSBOM for Serverless, a self-updating Software Bill of Materials (SBOM) for applications running on AWS Lamda, Google Cloud Functions and Microsoft Azure Functions that is made possible by simply adding one line to the application source code.

November 29, 2022

Code Intelligence announced its open-source Command-Line Interface (CLI) tool, CI Fuzz CLI, now allows Java developers to easily incorporate fuzz testing into their existing JUnit setup in order to find functional bugs and security vulnerabilities at scale.

November 29, 2022

Parasoft announced the 2022.2 release of Parasoft C/C++test with support for MISRA C:2012 Amendment 3 and a draft version of MISRA C++ 202x.

November 28, 2022

Kasm Technologies announced the release of Kasm Workspaces v1.12, providing major enhancements to its portfolio of digital workspaces delivering Desktop as a Service (DaaS), Virtualized Desktop Infrastructure (VDI), Remote Browser Isolation (RBI), Open-Source Intelligence Collection (OSINT), Training/Sandboxes, and Containerized Application Streaming (CAS).

November 28, 2022

Cloud4C has achieved Amazon Web Services (AWS) DevOps Competency status.

November 28, 2022

Simplilearn has acquired Fullstack Academy, for an all-cash transaction.

November 22, 2022

Red Hat introduced Red Hat Enterprise Linux 9.1and Red Hat Enterprise Linux 8.7.

November 22, 2022

Armory announced its new cloud-based solution called Continuous Deployment-as-a-Service, now available on the AWS Marketplace.