What Differentiates Exceptional Software Engineers


Career advice from Timothy James, an instructor at Pitt and manager at Google.

What is the difference between an average software engineer and an exceptional software engineer? Communication is a good start, but there are many differentiators.

Intellectual Curiosity

  • An average software engineer is OK to get what they need from an API and assume that what's underneath is magic.
  • An exceptional software engineer wants to know how and why it works and how those constraints and nuances affect the system.

Quality

  • An average software engineer is ok to use something like PHP that lets them get the job done quickly.
  • An exceptional software engineer wants to build something that will last and is willing to take a bit more time to do it.

Constructive

  • An average software engineer is critical.
  • An exceptional software engineer is constructive.

Role

  • An average software engineer thinks about their own part and delivers it.
  • An exceptional software engineer thinks about how it fits into the rest of the team's work and makes decisions on that basis.

Uplift Others

  • An average software engineer works the best they can to deliver their own work.
  • An exceptional software engineer works the best they can to make everyone around them better.

Product Sense

  • An average software engineer builds to the written requirements.
  • An exceptional software engineer builds to the actual needs.

Skillset

  • An average software works in code.
  • An exceptional software engineer works in code, design docs, collaboration, whiteboard, testing, monitoring, and other media.

Showing Up

  • An average software engineer does what they need to do.
  • An exceptional software engineer steps up when the team needs it.

Humility

  • An average software engineer hopes they don't get asked about something they don't know.
  • An exceptional software engineer takes ownership of what they don't know and therefore gets approached a lot.

Wisdom

  • An average software engineer wants to be an exceptional software engineer.
  • An exceptional software engineer knows when it's appropriate to be an average software engineer.