The 10x Engineer
What makes someone a ‘10x engineer’?
This question, or something along these lines, tends to pop up every now and then — either from managers looking for their ‘unicorn’ or sometimes even software engineers themselves looking to hone their craft.
Some of the skills and qualities that I think make a good software engineer are:
- the ability to understand and break down a given issue or idea
- the ability to communicate the breakdown to both technical and non-technical people
- they write simple, clean, readable code with no crazy bit-shifting magic or shortcuts
- they write just enough tests to offer confidence in the code
- they write excellent docs, notes and summaries for all of the above points
- they deliver their work at a consistent pace, and their code is mostly working (some bugs are expected!)
- they get along well with their colleagues, and are happy to help others succeed
- they raise any concerns early
- they understand the big picture in terms of both product and people, with the ability to empathize with the restrictions / limitations on and from both.
Of course, folks will have differing definitions of what a ‘good’ or ‘10x’ engineer means for them. If an engineer with the above qualities is in my team, I’ll be doing any and everything to help them, and hope they stick around for a while.