At Screenmedia our programmers do more than just write code that works, they’re a bunch of well presented, articulate team players.
When recruiting new programmers for the Screenmedia team, regardless of experience or speciality, we’re always looking for five specific attributes that we believe every good programmer must have.
1. Humility
Humility is accepting that you don’t know everything there is to know about .NET, Haskell, or Linux. It’s acknowledging that even if you’re an expert in one particular area, there is still much to learn.
2. Curiosity
Curiosity should be a priority. Changes are happening constantly in our industry, if you aren’t curious then you won’t be able to keep up!
3. Intellectual Honesty
Intellectual honesty manifests itself in several ways:
- Admitting that you don’t know something and refusing to pretend you’re an expert when you are not
- Readily admitting your mistakes
- Trying to understand errors rather than suppressing the message
- Clearly understanding your code – not just compiling it to see if it works
- Providing realistic status reports
- Providing realistic schedule estimates and holding your ground when Project Managers or management ask you to adjust them. This is crucial when working in an agency where every project has a budget and deadlines to be met.
4. Communication and Cooperation
Truly excellent programmers learn how to work well and play well with others. Programming is communicating with another programmer first and communicating with the computer second. This is why writing readable code in itself is an integral part of being a good team player.
5. Discipline
Within computing there are many industry standards and conventions that, as responsible programmers, we must follow in order to successfully write readable, maintainable and saleable code. Without them, completion of large scale projects would be impossible.