Why Some Software Engineers Become Great (And Others Stay Good)

When I first started leading teams, I tried to observe what made a great software engineer. What characteristics should I focus on while mentoring to help my team level up? I came across many observations. In this article, I am highlighting the common skills I found in great engineers I have known throughout my career.
The Outcome-Oriented Engineer
A good engineer focuses on meeting requirements, writing code, and delivering functionality. While these tasks are important, they don’t always address the core question:
Does this work create value?
Great engineers, on the other hand, look beyond the immediate deliverable and consider the broader impact. They ask:
Why does this feature matter to the user?
How does it align with business goals?
They view their role not just as problem-solvers but as value creators. These engineers are always curious to understand the problem they are solving beyond the minimum required to deliver the ticket. This curiosity drives great engineers to observe their stakeholders, understand their needs and pain points, and contribute by designing systems and creating solutions that address these challenges.
What makes great engineers stand out is their customer-centric approach. Whether serving internal customers like product managers and quality assurance teams, or focusing on end users, they always consider the broader impact of their work. Their curiosity to understand the problem they are solving, paired with technical expertise, drives their ability to add value and be outcome-driven engineers.
“We’re not competitor-obsessed, we’re customer-obsessed. We start with what the customer needs and we work backwards.”
— Jeff Bezos
At Amazon, the concept of “two-pizza teams” exemplifies this mindset. These small, autonomous groups are structured to ensure accountability and ownership over entire projects. For example, the team responsible for Amazon Prime Video tracks metrics like video streaming quality, playback speed, and user retention, integrating these metrics with technical aspects such as performance and downtime. By focusing on outcomes, engineers ensure their work aligns with business objectives and enhances customer satisfaction.
Looking at the big picture
Great engineers think about problems in terms of the system as a whole. They know that no component of a system stands alone and realize that to create scalable, maintainable solutions, they need to consider how each part interacts with other systems.
System thinking is at the heart of this approach, where the focus shifts from optimizing isolated features to ensuring that the system, in its entirety, will work seamlessly — even while growing or changing.
I remember when I started working as an engineer, I was often focused on solving the immediate problem in front of me — fixing a bug or optimizing a feature. As I gained more experience, I realized that this approach was not enough. The more I worked with complex systems, the more I understood how individual parts are interconnected, amplifying or reducing issues across the system. It was then that I understood how important it is to think of how each component works together as part of a cohesive whole to build something truly scalable and maintainable.
Netflix invested in this concept by introducing Chaos Engineering, which pushes system thinking to the next level. They introduced tools like Chaos Monkey, which purposely triggers failures in their systems, simulating real-world disruptions. This kind of stress testing has made Netflix’s architecture remarkably resilient. It pushed their engineers to think: How will my change react to surprises and unexpected scenarios?
Looking at the big picture doesn’t just apply to technical solution design. It also means being adaptive to change and understanding the broader vision.
Adapt and Anticipate
In 2008, Netflix faced a major database corruption that prevented them from shipping DVDs to customers for several days. This experience led them to realize they needed to migrate from using their own data centers to AWS.
The migration took seven years to complete. They could have moved their data centers directly to Amazon as-is, cutting down effort and time. Instead, they anticipated the need for future scalability and rebuilt their infrastructure to support the scale they now operate at, which is ten times the size it was in 2008.
Great engineers know that problems never exist in isolation. They focus on the bigger picture and the impact of every part of the system — how they relate and how to prioritize efforts based on the system’s needs. It’s about designing for resilience, scalability, and flexibility. Building solutions that not only work now but can adapt as the system evolves.
Whether developing a product, scaling architecture, or leading a team, this way of thinking makes the difference between a mediocre product and a great one. A great engineer owns the product and understands that combining technical expertise with soft skills and collaboration allows them to influence engineering excellence.
Collaboration and Influence: The Multiplier Effect
Engineering isn’t a solo pursuit.
The best engineers understand that great things happen when they collaborate. They don’t just write code in isolation; they connect with teammates, share ideas, and build trust to create amazing products.
Great engineers lead without a title but with influence. Instead of relying on hierarchy, they guide the team by encouraging open communication, sharing insights, and ensuring alignment on the same goal. They build trust by being approachable, inclusive, and credible. They share knowledge and help others without blame or judgment.
Psychological Safety in Teams
The impact of these traits is significant — they strongly affect overall team performance by increasing psychological safety. This was proven in Google’s research, which found that psychological safety is the foundation for great teams. This is why these engineers are indispensable; their multiplier effect enhances their peers and stakeholders alike.
This is why it’s essential to engage in constant communication. Regularly check in with your teammates — whether they’re engineers, designers, or product managers. Make sure you are moving in the same direction. The more you share, the clearer the collective vision becomes. When you work closely with others, you create a stronger, more unified approach to solving problems.
Whenever possible, talk to your colleagues in other roles regularly. Ask questions, share challenges, and collaborate to align on priorities. This ensures everyone is on the same page and avoids miscommunication that could derail progress.
Conclusion
Engineers should adopt the traits discussed above by asking the right questions and building meaningful connections with their teams and stakeholders. This will not only elevate their own capabilities and keep them motivated as they add value, but also make them indispensable to their teams.
TL;DR:
Collaborate effectively: Build trust, communicate openly, and foster psychological safety within your team. Diverse perspectives lead to better solutions.
Deliver measurable value: Go beyond shipping features — focus on solving real problems and ensuring your work creates meaningful impact.
Adopt system thinking: Design scalable, resilient systems that consider future growth and the interconnectedness of all components.
Be outcome-oriented: Align your work with business goals and user needs, ensuring it delivers tangible results.