Developing a Peer-Driven Engineering Culture at Cruise

Mo ElShenawy
Oct 23, 2019 · 7 min read

In my last blog, I shared my engineering philosophy for individual and company growth. This philosophy included a shallow organization structure, hiring and calibration frameworks, and a clear definition of responsibilities and levels within each role. (I also discussed this philosophy at length on Software Engineering Daily’s podcast.)

Next, I want to touch upon the culture and environment we hope to cultivate within Cruise’s engineering organization. My previous experiences have taught me that the best company cultures are high-performance with humanity: they are inclusive, respectful, open, and peer-driven.

I believe the peer-driven aspect is particularly important when creating this culture. At Cruise, “work together” is a common behavior each individual exemplifies based on the challenge we face. Engineering self-driving cars to be safer than human drivers is not a linear problem — it requires the intelligence and talent of individuals from a variety of disciplines and backgrounds. As a result, we needed to create a culture that harnesses the collective genius of thousands of enthusiastic and smart individuals.

Together, our Cruise teams work, teach, and motivate one another to succeed as they accomplish the most important work of their careers. Some Cruisers move internally as they explore their potential, ranging from promotions to working within another team. Others learn and teach within their team to increase performance as a whole.

We also hold each other accountable, push each other to our best self, and collectively raise our performance bar as we learn from one another. We have put mechanisms in place where teams regularly present their progress, future plans, hits and misses to other organizations to ensure alignment, drive transparency, efficiency, and accountability. In these meetings, I remind everyone of our peer-driven culture and encourage comments and participation from all.

Einstein once said, “The significant problems we face cannot be solved from the same level of consciousness that created them.” I believe that building an open environment that nourishes collaboration will give us a much needed high level of innovation amongst our teams.

In this post, I’d like to share two individuals who illustrate the culture we envision at Cruise: Rachel Zucker, a Software Engineer, and Sean Harris, a Senior Engineering Manager.

Individual contributors that teach and learn from their peers

Rachel Zucker, Software Engineer at Cruise
Rachel Zucker, Software Engineer at Cruise

Rachel Zucker is a Software Engineer on our Perception team. The Perception team determines what is happening around the car so it can drive autonomously. Within Perception, she works on the Tracking team, which identifies all of the cars, bikes, pedestrians, and other objects near the car, and tracks their path (including speed, direction, acceleration, turning, etc).

Rachel is an excellent example when it comes to leadership and ownership.

“When starting a project, our team asks, ‘What is the most impactful problem we can solve?’” Rachel explains.

Cruise takes a data-driven approach to inform priorities. We analyze our on-road and testing performance continuously, and dissect it via different dimensions to ensure teams will spend their time on the highest impact areas. Once Rachel and the team identify a problem, they explore various different ways to fix it, deeply investigating each approach.

  1. To identify the best approach, they design metrics to measure success, and then mock up each of their theories to solve the problem.
  2. Next, they look at how well each hypothesis does on those metrics to quantitatively choose the best solution.
  3. Finally, they carefully design and implement the solution. Part of the implementation requires making sure the solution is tested thoroughly using our testing and simulation frameworks. The team ensures the solution drives the right behavior, and that all other aspects of the system still behaves as expected.

“Each engineer does this entire process end to end,” Rachel adds. “We usually have multiple projects going at once within our team, so we take turns leading projects. We carefully coordinate our efforts, communicate early and often, and help each other out.”

“On paper, I didn’t look like a good fit for a software engineer,” she reflects.

Prior to joining Cruise last year, she was designing brain-machine interfaces. Rachel’s strong math and physics background were transferable skills. By joining Cruise, she has been able to share her expertise with others while also acquiring new skills. She also joined employee-led resource groups, such as Empowering Women of Cruise (EWOC), where she has expanded her network and found new ways to partner with cross-functional teams.

“To do Perception, you need to be a roboticist, a physicist, and a software engineer. It’s hard to find the unicorn who has all three, so our team is multidisciplinary. Everyone on the team is coming from different backgrounds. We’re learning from each other’s expertise so we can be more successful.”

As she aspires to be a Senior Engineer, she clearly understands the role’s responsibilities: identify major system weaknesses within her team, write a stellar design proposal, define success quantitatively, write model code, and carry it all the way through quickly. While she’s strong in applied math and physics for object tracking, she knows she still needs to improve her software engineering skills.

“We have very high bars for promotions,” Rachel explains. “I think it’s good. When you get a promotion, it means you’ve achieved huge personal and professional growth, and you’ve really earned it.”

People managers with opportunities to create a lasting impact

Sean Harris demonstrates what it means to work together. As a Senior Engineering Manager within the AV Engineering team, he manages both Individual Contributors and front-line Managers. Not only does Sean think beyond the boundaries of his team’s ability, he also thinks about his team’s long-term career goals.

“I see it as my job to build the people who build our product,” Sean says. “I like to find good people with the right skills and attitude, give them the right tools to further grow those skills, and give them opportunities to acquire new skills.”

One way he helps his team learn and grow is by encouraging each direct report to set their own goals for personal growth. Once each individual identifies what they want to learn, Sean guides them on how to reach those goals, and counsels them on how their personal growth goals ladder up to the team and company goals.

During Sean’s time at Cruise, his position grew from an Individual Contributor to a People Manager. When considering promotions during performance review cycles, Cruise managers assess how an individual on their team is performing instead of evaluating the individual solely on career experience. In Sean’s case, he had a proven record of someone who was performing at the next level.

While he always wanted to be a people manager, it was a difficult decision to transition. “In the beginning, I was still the primary Individual Contributor for the team, but I soon realized that I needed to let go. I had to manage people and oversee 3–4 projects, so I couldn’t go as deep into each piece of work.”

He took a few training courses, read management books, and pulled inspiration from sports coaches. “After a few months, I found the right balance and got comfortable. I still try to apply one new thing from each book that I read to see if it can make me a better manager.”

Recently, he started a manager learning group where other engineering managers in the department meet every few weeks to exchange ideas, share tips, and talk through various management topics. This leadership is typical with Sean. He continually thinks about the greater good of Cruise.

While people leadership is a big focus of his role, Sean also creates mechanisms that ensure technical excellence. One of his recent contributions included solidifying his team’s design process. “We have an exciting mix of research and production work, so we needed a process that was flexible enough to allow both to thrive,” he explains.

Sean leveraged the company’s design process, execution reviews, and other mechanisms to create more open communication amongst teams, build institutional knowledge amongst our expanding teams, and distribute resources more effectively.

A culture where we set each other up to succeed

In an organization that is fast-paced and solving the engineering challenge of our generation, many Cruisers are like Rachel and Sean. They own their work, seamlessly work together, stay humble in favor of succeeding as a team, stay focused on the challenge at hand, and seek to understand when learning something new — all in a respectful, inclusive environment that favors diversity of thought.

As we continue to scale, individuals like Rachel and Sean will serve as culture carriers. If you would like to contribute to our culture, take a look at our job listings and find your fit at Cruise. We’re always looking for motivated, bright individuals to join us on our mission and become the autonomous technology leaders of the future.


We’re building the world’s most advanced self-driving vehicles to safely connect people with the places, things and experiences they care about. Help us solve the engineering challenge of a generation:

Mo ElShenawy

Written by

Mohamed “Mo” ElShenawy is a Vice President of Engineering at Cruise.



We’re building the world’s most advanced self-driving vehicles to safely connect people with the places, things and experiences they care about. Help us solve the engineering challenge of a generation:

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade