What Makes a Great Software Developer?

people-skills

According to an article by developer Michael O. Church, developers who want to compete in a highly competitive industry should be unafraid to learn on the job; manage their careers aggressively; recognize under- and over-performance (and avoid both); know the politics of software development; avoid fighting other people’s battles; and physically exercise as often as possible.

  1. Don’t be afraid to learn on the job.
  2. Manage your career aggressively. Take responsibility for your own education and progress.
  3. Recognize under-performance and over-performance and avoid them.
  4. Never ask for permission unless it would be reckless not to.
  5. Never apologize for being autonomous or using your own time.
  6. Learn CS666 (what I call the politics of software development) and you can usually forget about it. Refuse to learn it, and it’ll be with you forever.
  7. Don’t be quixotic and try to prove your bosses wrong.
  8. Don’t fight other peoples’ battles.
  9. Try to avoid thinking in terms of “good” versus “bad.” Be ready to play it either way.
  10. Never step back on the salary scale except to be a founder. As a corollary, if you step back, expect to be treated as a founder.
  11. Exercise.
  12. Long hours: sometimes okay, usually harmful.
  13. Recognize core technological trends apart from fluff.
  14. Finally, learn as much as you can. It’s hard. It takes work.

His full article has all the details.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s