What makes great developers?

by Rasmus Hvidberg Josiassen 28. December 2011 22:51

In my previous post on measuring developer performance, I claimed that we shouldn’t look for speed-coding hackers in our attempt to raise developer performance. Well it’s easy to state what we shouldn’t do – and much harder to tell what we should do… So here’s an attempt!

I believe that developer-skills fall into three major categories, which are equally important: technical skills, business skills and soft skills. The latter includes (if not primarily consists of) communication skills.

By technical skills I don’t think of detailed knowledge of frameworks or tools (which, I might add, is what most certifications measure) – that kind of stuff you can look up easily. I’m thinking of knowledge and experience with patterns, practices, code smells and design principles.

Business skills include detailed knowledge and interest in the business domain and the customer’s needs to a level where the developer is able to challenge the customer’s demands.

And finally soft skills include good communication skills and taking responsibility for the entire project’s success (in essence meeting the customer’s needs on time).

Well… I admit, although the above is a definition of craftsmanship, it’s still a bit fluffy… So let’s try to break it down into smaller pieces. Here are ten skills, I think covers it:

1. Be professionally curious and take responsibility for your own learning
Read literature on code, practices and craftsmanship. Attend conferences. Examine new trends and dive into topics of professional relevance within the tools, methods and development principles.
Take responsibility to develop one’s soft and technical skills.
Read and/or contribute to relevant blogs.
Try new features, tools, methods and development principles to improve your skills and to introduce new elements into your organization’s development environment.

2. Contribute to the development platform and develop the group's level of competence is constantly improved.
Share your knowledge of professional trends and new tools, principles and methods with your colleagues.
Participate in efforts to develop methods, skill level, development principles, etc.
Take independent initiative to introduce new methods and principles in his team (Eg TDD, CI and Continuous Delivery)
Contribute to the development of the architecture

3. Write good code
Write understandable, robust, tested code of a high quality
Be experienced in relevant languages and tools for your development platform
Implement practices on Clean Code, Continuous Integration, Test Driven Development, development principles, etc. in your team's daily work

4. Understand and use OO and patterns
Be experienced in the use of the most common patterns and be able to recognize them in the code.
Understand software paradigms (OO, functional, procedural) and have an understanding of fundamental OO (Eg Cohesion and cyclomatic Complexity)

5. Be experienced in estimation and estimation techniques
Have sufficient experience with software development and development methodology to provide thorough estimation where all tasks are taken into account.
Communicate assumptions, uncertainties and risks in your estimates clearly

6. Create trust and be constructive in your communication
Appear trustworthy and be constructive and appreciative.
Strive to be perceived by your colleagues and collaborators as a qualified and competent partner
Be loyal to your colleagues, manager and employer
Be engaged and constructive when new ideas are presented and demonstrates a high degree of readiness for change
Appear sturdy and resilient.
Help others improve their communication

7. Deliver!
Do what it takes to deliver the expected business value in the right quality on time
Get things done! Communicate any deviations concerning scope, quality or schedule in advance.
Take responsibility on the team's behalf for the overall delivery scope, quality and deadline is met.

8. Take responsibility
Take responsibility for the entire project’s success - not only for your own tasks
Understand the project’s goals and how your work contributes to these.

9. Understand business objectives and processes
Demonstrate a keen interest in understanding the business and their needs, so you are able to challenge the customer’s demands
Always think "why" before "how"
Find the right level of ambition in relation to quality and development speed.

10. Thrive and be motivated
Take responsibility for your own performance, job satisfaction and motivation

Tags: , ,

Developer performance | Software craftsmanship

Comments (36) -

 apply for jobs
apply for jobs United States
1/6/2012 1:47:44 PM #

Thanks for the article. It'stough finding good articles for young professionals online. This was a great read.

Reply

Entrepreneur
Entrepreneur United States
1/6/2012 2:54:29 PM #

Thank you for creating this website so easy to find info. great stuff. Saving this one for later.

Reply

Mirian Willadsen
Mirian Willadsen United States
1/7/2012 7:49:16 AM #

Absolutely! I am a novice but these sound like very wise words Bryony! Congratulations and wishing you continual success, I hope I can aspire to keeping my audience engaged as you do so well. Thanks for the captivating read : )

Reply

Alphonse Hintze
Alphonse Hintze United States
1/7/2012 2:43:01 PM #

Greetings to you. I stumbled on your personal webpage here basically surfing around the internet. I enjoyed the amount of time and energy you took to contribute some ideas with your visitors. Keep up the fine job!

Reply

Marylouise Boehner
Marylouise Boehner United States
1/7/2012 3:30:29 PM #

It is highly helpful for me. Huge thumbs up for this blog post!

Reply

Kielce Praca
Kielce Praca United States
1/8/2012 6:46:00 AM #

I always spent my half an hour to read this blog’s articles every day along with a cup of coffee.

Reply

Michell Stolsig
Michell Stolsig United States
1/10/2012 1:00:57 PM #

Please, can you PM me and tell me few more thinks about this, I am really fan of your blog...

Reply

Alissa Heymann
Alissa Heymann United States
1/13/2012 4:39:21 AM #

WOW I am speechless… you ROCK. I hope this goes far and wide, you deserve it.

Reply

runescape
runescape United States
1/13/2012 5:02:53 PM #

Regards  for this post, I am a big  big fan  of this  internet site  would like to  continue  updated.

Reply

Marketta Howorth
Marketta Howorth United States
1/13/2012 7:56:49 PM #

Thats a really nice post with necessary Information. Thanks for your help.

Reply

john
john United States
1/15/2012 5:22:57 AM #

thanks for this

Reply

Writing a Will
Writing a Will United States
1/18/2012 7:02:30 PM #

You made certain good points there. I did a search on the subject and found most folks will go along with with your blog.

Reply

Ashlie Sevcik
Ashlie Sevcik United States
1/19/2012 2:51:42 AM #

Useful info. Lucky me I discovered your website accidentally, and I'm surprised why this coincidence did not came about earlier! I bookmarked it.

Reply

Grace Finely
Grace Finely United States
1/19/2012 7:31:32 PM #

Applause. Keep up the good work and I'm looking forward to the finale XD.<br />Also, big fan of yours.

Reply

Ludie Traeger
Ludie Traeger United States
1/20/2012 9:10:56 AM #

Thanks a lot you guys: another really awesome great lesson in every respect!

Reply

Arleen Eldreth
Arleen Eldreth United States
1/21/2012 3:26:13 PM #

It is highly helpful for me. Huge thumbs up for this blog post!

Reply

Valorie Melgoza
Valorie Melgoza United States
1/22/2012 4:32:55 PM #

Very   great  visual appeal on this  web site , I'd  value it 10 10.

Reply

愛鄰搬家
愛鄰搬家 United States
1/22/2012 5:46:06 PM #

Hello! Very helpful tip on this post! It is the little adjustments that create the biggest changes. Thank you so much for sharing!

Reply

marketing
marketing United States
1/23/2012 8:27:08 AM #

Can I get an "Amen!", somebody? 2 likes

Reply

Gisele Varno
Gisele Varno United States
1/24/2012 8:49:10 AM #

Sometimes I contemplate if folks truly take time to write something original, or are they only just dishing out words to fill a site. This surely doesn't fit that mold. Thank you for taking the time to write with awareness. Once In A While I look at a page and question whether they even proofread it.Fantastic work with this article.

Reply

Tu Gural
Tu Gural United States
1/25/2012 2:24:45 AM #

You have a lot of useful pointers on this site. This is a well written article that I have bookmarked for future reading. Have a fun.

Reply

 portable
portable United States
1/25/2012 7:50:14 PM #

Nice post. I was watching continuously this site and I'm impressed! Extremely useful info specifically the last part I care for such info much. I was looking for this particular info for a long time. Thanks and best of luck.

Reply

Verlene Onyeanus
Verlene Onyeanus United States
1/28/2012 9:27:01 PM #

The brand page becomes a touching off point much like conducting a search, although perhaps more controlled.

Reply

Richard Mavins
Richard Mavins United States
2/6/2012 7:45:48 AM #

Hey There. I discovered your page searching with yahoo. This really is a particularly perfectly developed guide. I'll you'll want to bookmark it and return to browse much more of the practical information. Thank  you for sharing it. I will absolutely be back again once again.

Reply

Lashandra Stencel
Lashandra Stencel United States
2/7/2012 8:41:57 PM #

Wow! I knew that before but this blog had helped me to understand more about Web Development as Part of the Growing IT Outsourcing Services!!!

Reply

reusable diapers
reusable diapers United States
2/15/2012 9:27:32 AM #

You have a lot of useful pointers on this site. This is a well composed article that I have bookmarked for future reading. Have a fun.

Reply

Hermelinda Schulke
Hermelinda Schulke United States
3/17/2012 1:35:09 AM #

In March 2003 I was hospitalized because of respiratory failure due to severe asthma attack. I was admitted on Saturday evening at 3:45, Sunday morning my condition became life threatening when into severe respiratory distress. I woke the following Wednesday afternoon. I was hooked up to a breathing machine. I was in the hospital for three weeks.

Reply

Valeri Gehman
Valeri Gehman United States
3/24/2012 10:08:27 PM #

Hmm Well I was just searching on yahoo and just came across your blog, generally I just only visit blogs and retrieve my needed info but this time the useful info that you posted in this post urged me to post here and appreciate your diligent work. I just bookmarked your site. Thank you again.

Reply

Elfriede Pisani
Elfriede Pisani United States
3/30/2012 4:46:56 PM #

http://MyPriceLine.info - My PriceLine For Comparitive Pricing / Compare Before You Buy ! - http://MyPriceLine.info

Reply

Chan Vollucci
Chan Vollucci United States
4/12/2012 4:38:14 AM #

This reminds me of Facebook suing Teachbook, though I guess there is more merit to 32Red's lawsuit, since they're both targeting the same audience.

Reply

Perry Hooten
Perry Hooten United States
4/14/2012 9:22:00 AM #

Hi there! I simply wish to give an enormous thumbs up for the nice info you might have right here on this post. I might be coming again to your weblog for extra soon.

Reply

Jama Jasionowski
Jama Jasionowski United States
4/26/2012 1:22:31 PM #

How long before DARPA get their hands on this and puts a gun on it.Imagine climbs wall and goes into office and waits, bang. And best of all it can leave afterwards. We're all doomed I say dooooooomed

Reply

 home wind power
home wind power United States
5/6/2012 4:10:43 PM #

thanks, very well written post, found it through a random google search and i shared it on my digg account

Reply

Shawnta Fambrough
Shawnta Fambrough United States
5/10/2012 1:42:22 PM #

I have always wanted a little courtyard area. It makes me thing of a Tuscan villa. It's amazing what a transformation the resurfacing did. The look of stone pavers really ads a touch of character to the space. I can't wait to see what it looks like once you move all the furniture back into place. I'm happy you go the transformation you have been waiting years on.

Reply

Pearle Boatman
Pearle Boatman United States
7/4/2012 3:32:59 AM #

This is the best site for anybody who desires to find out about this subject. You notice so much its nearly onerous to argue with you (not that I truly would want...HaHa). You undoubtedly put a brand new spin on a subject thats been wrote about for years. Nice stuff, simply nice!

Reply

Carri Groot
Carri Groot United States
8/28/2012 12:21:04 PM #

Thank you Gisele!<br />That's an awesome collection of emerging trends. Can't wait to go back to my bookmark.<br />Cheers.

Reply

Pingbacks and trackbacks (1)+

Add comment

  Country flag

biuquote
  • Comment
  • Preview
Loading

About the author

I'm a software craftsman who ended up as manager and now is trying to get a grip on what makes good developers and how to establish a high performing developer environment in regards to people, processes and tools.

LinkedIn Profile

RecentPosts

Month List