STAY POSITIVE AND
PATIENT
A great programmer
cares about the end-user and how the product serves them. Their dedication to
the user shines through their work. They are positive and patient enough to
work through the most boring and difficult problems. They take pride in their
code and enjoy polishing it. Cutting corners just isn’t their style. When the
occasional urgent deadline occurs, a great programmer will prove their
dedication and step up to the challenge. (Although it’s fair to say that
frequent unrealistic deadlines will exhaust any engineer)
EXCELLENT
COMMUNICATION SKILLS
Good communication
skills directly correlate with good development skills. A great developer is
able to understand problems clearly, break them down into hypotheses and
propose solutions in a coherent manner. They understand concepts quickly, or
ask the right questions to understand, and don’t need to have everything
written down in a specification document.
GREAT AT TIME AND TASK
MANAGEMENT
Great developers are
highly reliable and respect deadlines. They understand that humans are terrible
at predicting the effort and time required to complete large complex projects,
so they use tools and strategies (like Agile Points) to help them.
I find that
exceptional developers are great at managing their clients or leaders instead
of the other way around. They make life easier for everyone they work
with.
QUICK LEARNING ABILITY
The best skill anyone
can have knows how to learn, and great developers have mastered the skill of
self-learning. This usually comes from a love of knowledge, reading, problem-solving and learning in general. New technologies excite them and they have the
ability to pick them up quickly. The way a great programmer will pull disparate
bits of information and process information on the fly, always impresses me.
While every programmer will experience a situation where he or she doesn’t know
the answer. Great programmers will find different resources, talk to the right
people and find the solution no matter what.
TECHNICAL PROGRAMMING
SKILL AND EXPERIENCE
Great developers are
experts in a handful of programming languages and are competent in many others.
They have developed the ability to predict and recognize coding problems.
Great software developers follow coding standards and write
documentation so their work can be passed on to someone else easily.