Over the years in my software engineering career I have had opportunities to work with many great engineers. Apart from their in depth technical knowledge, they possessed a set of soft skills that made them truly exceptional, well respected, and trustworthy. Unlike technical skills, which are discussed most of the time, soft skills lack the attention and appreciation they deserve. Here is my list of such skills that can transform an engineer from good to great.
Press enter or click to view image in full size
Ownership
Great engineers own the problem they are solving, end to end. Their work does not end with the feature release. They closely monitor production behaviour, proactively tune and maintain their solution, document what is required, ensure high quality and standard, and much more without ever being explicitly asked.
Responsibility and Teamwork
Great engineers strive for team’s success. Tasks which are blocking other team members are always first in their todo list. They cultivate the culture of collective success, over individual, by going out of their way in helping peers to ensure team accomplishes the desired goals.
Communication
Great engineers communicate clearly and crisply. Whether the medium is an email, a presentation, a video call, an in-person team meeting, or even some documentation, they are able to deliver their thoughts in a way that is optimized for the audience. They are not afraid of over communicating so everyone is on the same page.
Sanctity of Commitment
Great engineers are reliable, they deliver what they promise. Most of the times it involves smaller stuff, like showing up for meeting on time or sharing information discussed in a meeting before getting a reminder on it. They are not hesitant in going extra miles in order to meet the committed deadline and to fulfil the agreement.
Understanding the Big Picture
Great engineers understand the problem their product is trying to solve and their knowledge about the domain is not limited to task assigned to them. They understand how their specific task fits into the bigger solution and what impact its success and failure can make.
Learning and Sharing
Great engineers are always curious, eager to learn, and not afraid to unlearn and relearn. They make an effort to share their learnings, are happy to mentor juniors, and feel no hesitation in sharing the mistakes they have made.
Taking Initiatives
Great engineers take initiatives in order to improve the efficiency and effectiveness of team, product, and organization. They have the ability to take a step back, see the bigger picture, to suggest and implement ideas that increase overall productivity and profitability.
Get Haris Hasan’s stories in your inbox
Join Medium for free to get updates from this writer.
These traits might sound simple and common sense to many but are extremely valuable and rare to find. Added challenge is to come up with an interviewing process that can evaluate a candidate along these lines.