Micro-promotions and mentorship

The big impact of small actions in an engineering culture

Apr 18, 2019 · 6 min read · by Hannah Henderson

This article spent several hours in the number one spot on Hacker News and remained in the website’s top five posts for an entire day. It was quite exciting.

For the last decade, I have worked in male-dominated environments. While during this time I’ve encountered many nitwits and detractors, I’ve also been fortunate to encounter many proponents and advocates. Although no company is perfect, at CircleCI I’ve had opportunities to grow my career in an environment I enjoy. Some of that is thanks to me, and a good slug of that is thanks to my coworkers. They have mentored, sponsored, and advocated for me through a series of real, substantive, micro-promotions. Their actions make a difference. Regardless of who you are or what your organizational role is, your actions do too. An inclusive team is either strengthened or weakened by the gestures of each individual on it. Start small.

Note: If you are a leader, it is your responsibility to work deliberately towards creating environments that make every individual feel welcome. Self-directed employee actions do not constitute a comprehensive solution for solving the problems of diversity and inclusion in tech.

In roughly chronological order, here are specific things my team did that have made a difference in my career, and are worth emulating:

Justin sponsored me. He recommended me to the company and introduced me to Jeff, our VP of Engineering. He gave me a foot in the door.

Jeff took action when I expected none. Following a preliminary informational-interview lunch, he:

Expressed remorse that he’d met me only after the closing of the latest hiring wave. Offered to put me in touch with some of his professional contacts. Actually put me in touch with some of his contacts. At the time I was a recent coding bootcamp graduate and had few entrées into the tech world. Jeff provided more and ultimately offered me a job. Spoiler alert: I accepted.

During my first year at CircleCI, a host of my coworkers provided me with technical mentorship. Rishi kept our Kanban board populated with right-sized JIRAs for small-sized skills. My colleague An taught me how to dig into a problem, how to determine where to test it and not to be afraid of breaking things to fix them. Matt replied to naive questions with thoughtful explanations. Phil answered queries with complete histories, elucidating context, codebase histories, and the evolution of various popular programming belief-systems. He also uses Emacs, which is terrible, but nobody’s perfect.

On frustrating days (CircleCI is great, it’s not utopia) men like Tad, Eugene, and Kyle invited me on coffee walks to talk things out. They provided solid advice and new perspectives.

In that first year, my peers gave me the support, the challenging work, and the space to grow to a point where I could comfortably call myself a “software engineer” without doing an internal double-take.

My peers were patient with me that year (a tolerance I admittedly fostered by round-robining questions in order to spread the burden). Significantly, they also acknowledged the contributions I made. Acknowledgment doesn’t require a parade. These are small gestures that folks made that were meaningful to me:

  1. Using the :clap: emoji in a pull request comment to highlight a clever bit of my code.
  2. Sending a direct message of thanks upon realizing they were actively benefiting from a refactor I’d made to a previously gnarly bit of code.
  3. Posting a note to our #gratitude channel on Slack recognizing how helpful some documentation I’d written had been to them, and encouraging others to use it. Despite all these positive interactions, there were also a limited number of times when things that people said or did were unprofessional, arguably out-of-line, and made me feel uncomfortable. In each situation, when I expressed my discomfort to my manager (or even when they realized I was becoming uncomfortable), they intervened without question. Sometimes being an ally means having someone’s back.

Sometimes it just means listening and learning when you’ve overstepped. In most cases, the antagonists were blissfully ignorant of the discomfort they’d caused, and sought to change their triggering behaviors. Expectations were set early and misbehavior was corrected before situations devolved.

Granted the respect and latitude I needed to progress, I entered my second year at CircleCI. Over that year, I faced new kinds of challenges. New coworkers, new team dynamics, new codebases, and my own expectations to level-up and to do it well. I was again lucky in my peers.

As I tried to understand more technical concepts, like how systems relate and what libraries to use and when, John aided my growth through regular pairing. He corrected my faulty assumptions and introduced me daily to new concepts and tools, all while typing furiously, flinging tmux sessions across the screen, and miraculously managing not to wake the one-year-old (his one-year-old) strapped to his chest. John also uses Emacs, which is terrible, but nobody’s perfect.

Later that year on Eric’s recommendation, I began acting as my team’s Delivery Review Lead, and soon after as our acting Team Lead. Once again, I was new to something and not especially talented at it. Once again, my coworkers provided me with the support, space, and challenges necessary to grow and gain confidence.

Nathan purposefully passed technical questions to me in meetings and provided guidance in navigating tricky situations. When I awkwardly joked about needing a laugh track for remote meetings (where participants are muted and audience feedback is difficult to gauge), Brady started playing one during particularly long pauses. Marc gave me crash courses in new codebases and told me, with his words, that he enjoyed working with me and appreciated the order I brought to our team.

In larger organization-wide meetings, Nate plus-oned my comments, giving me credit for my ideas and building on them to drive points home and improve deliverables. Bear nominated me for recognition for cross-team collaborative work. Pat thanked me for glue work.

In my time here I have messed things up, dropped the ball and caused incidents. With my coworkers, we’ve righted the incidents and blamelessly charted better paths forward. These incidents were treated as stand-alone events, mistakes that anyone could have made. I’m not uniquely gifted at causing failure, and nobody made me feel like I am.

Instead, I’ve felt mentored, sponsored and advocated for. Diversity is an ongoing challenge in our industry. Equalizing the imbalances can feel like a Sisyphean task. Start small. Comment on something you find clever in your next code review, ask a quiet coworker for their opinion during a meeting, give credit to folks whose ideas inspire you. Feeling ambitious? Tackle this game of bingo. Your actions make a difference, they build an inclusive environment where I and others want to work.

If you’d like to come make that difference with me, and to write some really cool code with some very smart people, check out our open job postings!

Cover photo by Everton Vila.

This post was originally published on CircleCI Blog.