Back to resources

Leveraging Professional Strengths to Overcome Personality Differences

Different Skillsets
Productivity

17 May, 2021

Ben Coats
Ben Coats

Vice President of Technology at Quest Mindshare

Ben Coats, Director of Technology Operations at Quest Mindshare, recalls alining four incredibly bright, yet profoundly different engineers and leveraging their distinct strengths to develop a brand new API.

Problem

I once was presented with the task of spearheading a design/R&D effort to develop a brand-new, public-facing API that would drastically change our public API offerings to-date and allow us to innovate in the market. I was given a team of four developers for a period of one week to see what we could come up with. The deliverable was to be an API specification, and some functional-but-incomplete PoC code to demonstrate usage of the proposed API.

Actions taken

This team I was given consisted of:

  • One very senior abstract thinker who could debate designs all day, but didn't tend to really get much code written;
  • One senior cowboy type who didn't participate in collaborative discussion much at all, but would walk away from meetings and write a prolific amount of code (which often didn't align at all with agreements between the other team members);
  • One mid-level engineer who had a lot of product experience and insight to offer due to his exposure to customer implementations, but was too intimidated by his perceived lack of experience to join in the debate;
  • One bright young man, mid-career proficiency-wise, who was not afraid to voice his opinions, was very good, and was plenty self-assured; but simply didn't have the product experience to back the things he'd disagree on.

All four were incredibly bright. As you can imagine, for the first two days not much was accomplished. The first individual came up with part of a specification on his own which was entirely at odds with the parts we had reached some consensus on. The second individual above came up with no spec, but volumes of code that either didn't align with overall project goals or were in opposition to the parts we'd agreed upon. The third paired with the fourth but was afraid or unwilling to contribute much of the product experience which the fourth sorely needed. The fourth came away with a mostly-complete spec that didn't solve the fundamental customer needs and didn't take some of our guidance into account.

Two and a half days in, it was obvious that we would have no deliverables if something didn't happen, and quickly! My assessment was that, unless there was something to focus the discussions around, we would get nowhere. I took that afternoon and evening to put together a nearly complete draft specification that accomplished the project goals in the way I would do it. The next morning we met and - after making it abundantly clear that this was a starting point around which we could center our discussions - walked through the spec, we debated, and I opened a PR. Finally, we were getting somewhere!

  • The first individual now had concrete points to argue, and would not waste entire meetings debating abstract concepts which may or may not even be applicable.
  • The second had something which captured our working decisioning "on-paper", and so he put his talents to use writing volumes of code which were (mostly) in line with what was there.
  • The subsequent lessening of super-advanced, animated technical debate in meetings - when coupled with the "nudging" I was giving him - made the third individual less timid about jumping in and contributing his product knowledge.
  • The (focused) code which the second individual wrote, gave the fourth individual a better understanding of how the product worked, and - together with the draft spec I put together - gave him a concrete view into where and why some of his strong disagreements were "wrong" - namely, impractical in the scope of our product.

Lessons learned

We were able to provide the deliverables, and a year later the production implementation took place. Not one of us could have devised something as sound on our own; but once the “sweet spot” was found which would augment weaknesses while leveraging strengths, we became very effective.

Discover Plato

Scale your coaching effort for your engineering and product teams
Develop yourself to become a stronger engineering / product leader


Related stories

Myth Busting

10 December

Supporting principles on why being data led (not driven) helps with the story telling.

Alignment
Managing Expectations
Building A Team
Leadership
Collaboration
Productivity
Feedback
Psychological Safety
Stakeholders
Vikash Chhaganlal

Vikash Chhaganlal

Head of Engineering at Xero

How to measure Engineering Productivity?

30 November

When you grow fast, its normal to focus on Value delivery aka "Feature Releases". Too many releases too soon will inevitably lead to piling tech debts and before you know, inefficiencies creep in, performances goes down, and ultimately any new release takes too long. Sounds familiar? Then read on..

Productivity
Prioritization
Performance
Ramkumar Sundarakalatharan

Ramkumar Sundarakalatharan

VP - Engineering at ITILITE Technologies

Mindsets of High Performance team

14 October

Teams have tremendous impact on the products on they build. T.E.A.M definition - Together Everybody Achieves More is true. A collaborative and empowered team builds great product versus the good ones.

Innovation / Experiment
Mission / Vision / Charter
Building A Team
Productivity
Feedback
Motivation
Praveen Cheruvu

Praveen Cheruvu

Senior Software Engineering Manager at Anaplan

Assessing the Performance of Your Team

20 August

Parallels between Work and Sport.

Goal Setting
Different Skillsets
Coaching / Training / Mentorship
Performance
Ron Pragides

Ron Pragides

SVP Engineering at Trustly Group AB

Building Up Your Technical Skills in a Fast-Paced Industry

8 July

Otavio Santana, Distinguished Software Engineer at Zup Innovation, shares his best practices for upskilling without stretching yourself too thin.

Different Skillsets
Personal Growth
Prioritization
Otavio Santana

Otavio Santana

Java champion, software engineer, architect, and open-source Contributor at Independent Technical Advisor