What do you think: what sets a great developer apart?
Follow the DEVteam for more discussions and online camaraderie!
For further actions, you may consider blocking this person and/or reporting abuse
What do you think: what sets a great developer apart?
Follow the DEVteam for more discussions and online camaraderie!
For further actions, you may consider blocking this person and/or reporting abuse
Ben Halpern -
Jen Chan -
Ashish Patel -
Murtuzaali Surti -
Top comments (6)
That would be my answer
This idea that there a global meritocracy of developers who are better or worse is an illusion.
A developer may be very knowledgeble but working at Facebook where he helps even more people waste even more time and attention on a single website who wants to sell more ads.
Or a developer may be novice but happens to set up a website that helps some scientists do to his important work.
The second developer does something more meaningful to me.
TLDR: We are problem solvers and we are all solving different problems.
A good developer thinks on build the functionality and writes code that machines understand.
A great developer thinks on product or business and writes code that everyone can understand without an explanation. Code is easy to read and mantain.
This has been coming up a bit for me lately, and I think some of the answers I see here are very insightful. In general, I say that it depends. In some environments, one type of developer works well. In other environments, a very different type of developer is called for.
There are attributes that appear to be universal, such as problem-solving and understanding tools and technologies, but then there are things that matter more in some environments and less in others.
I've been at large companies where the best developers were those who could:
Conversely, I've been at many startups over the years, and people who have done well with all of those attributes may not contribute what a startup needs. In that environment, the more successful developers demonstrate:
Depending on the stage a startup has reached, a developer may need a greater ability to communicate, and to lead and teach others. The very best people can make this transition, but even those who can't may still do impressive things early on in a startup's life.
I've seen how curiosity and a desire to try new things can be an impediment in a large organization. Conversely, the people who have the skillset to build robust, reliable systems over time may try to overengineer systems in a startup environment where speed and ability to pivot may be key.
Of course, there are more scenarios than just those represented by corporate vs startup life, and in each one a different set of attributes will make a person stand out. So whatever you're looking for in a developer, you need to consider the current needs of the environment, and how you expect it to evolve over time.
The difference between a good developer and a great one is about more than just coding skills. Both can write code, but a great developer has some extra qualities:
Problem-solving: Good developers can solve problems, but great ones can handle complex issues and think creatively to find solutions.
Communication: Great developers can explain things clearly to teammates and clients, while good ones might struggle to communicate technical ideas.
Learning: Great developers are always learning new things, staying up-to-date with the latest technology. Good developers might stick to what they already know.
Attention to Detail: Great developers pay close attention to small details in their code to make sure it's clean and easy to understand. Good developers might miss some of these details.
Adaptability: Great developers can quickly adjust to changes in a project, like learning a new programming language or working with a new team. Good developers might find it harder to adapt.
Empathy: Great developers understand the needs of others, like users or teammates, and design solutions with them in mind. Good developers might not think about this as much.
Leadership: Great developers can lead a team, helping others learn and grow. Good developers might focus more on their own work without helping others as much.
So, while both good and great developers can write code, great developers have extra skills like problem-solving, communication, continuous learning, attention to detail, adaptability, empathy, and leadership.
A good developer writes code that machines understand.
A great developer writes code that both machines and humans can understand
and occasionally, even their rubber duck sitting near your desk can understand during those intense debugging sessions.
GIF by Disney - Find & Share on GIPHY
Discover & share this Disney GIF with everyone you know. GIPHY is how you search, share, discover, and create GIFs.
In my opinion, a good developer is the one that knows how the things work and follows very well a known-path. Meanwhile, a great developer is an innovator πΊ