Thursday, August 17, 2006

Common programmers' personality


A computer programmer may have a character different from a normal person. Oh! I am sorry, he is a normal person but, I mean a person at other work.
Note: This article doesn't reflect my personal opinion but some statistics collected on software programmers especially engineers.

Common programmers’ character:

The following personality is common among programmers:
  1. Can concentrate 12-16 hours at a time.
  2. When interrupted responds violently.
  3. Use only his head and hands.
  4. Less adaptive and have small social activities. Even concerned with computer. e.g.: chat, mail groups, forums, etc.
  5. Quiet serious and shy.
  6. Practical and logical.
  7. Low motivation towards management responsibilities.
  8. Loyalty to the profession rather than the employer.
  9. Optimism regarding time estimates.
This personality traits was applied to programmers despite their particular work(system analysis, design testers ,etc..).

MBTI Results for Software Developers

A common mean of categorizing personality was developed by Katherine Briggs and Isabel Briggs Meyers and is called the Meyers-Briggs.
Table -1- Personality Type of MBTI test

  1. Expressive, Process by talking
  2. Speak before they think
  3. Need contact


  1. Can’t process while anyone is talking
  2. Think before they speak
  3. Need time alone
  1. Observant
  2. Experiment
  3. Attention to detail


  1. Imaginative
  2. Theory
  3. Bored by detail

  1. Practical
  2. Objective
  3. Being right


  1. Personal
  2. Sympathetic
  3. Values and feelings


  1. Scheduling
  2. Love to make plans and stick to them
  3. Hate to change them
  1. Probing
  2. Can’t stand plans
  3. More flexible

Two large studies have found that the most common personality type for software developers is ISTJ (introversion, sensing, thinking, and judging)
  • Introverts are more interested in the inner world of ideas. Not oriented towards people.(54%)
  • The sensing person focuses on known facts, concrete data, and experience. Not concepts and theories.(57%)
  • The thinker makes decisions based on objective analysis and logic and never relies on his emotions.(81%)
  • The judging person prefers order and control, not possibilities and flexibility.(54%)

A try to analyze these results

May be reasons to this character is education. Programmers are highly educated and almost got pressured.

Software programming career

About 60% of software developers have a Bachelor's degree or more.

Programming job is highly rated in terms of salary, working conditions (air conditioned well lighted offices) job security (almost no risk).

A study at IBM found that the average programmer spends only about 30 percent of the time working alone. The rest is spent working with teammates, with customers, and on interactive activities.

Challenging projects extend programmer’s capabilities, test his limits and apply practices. A challenging project may take from 2 weeks to years. Challenging projects generally done lonely.

A programmer can sacrifice his life to programming challenge especially during 20s. This fact bec0mes harder to justify when he marries and gets children move into their 30s, 40s, and 50s.
As he grows older. He relies more on working smart than on working hard. Software developers will become increasingly interested in the practices that allow them to complete their projects as promised and still be home in time for dinner(only dinner). They become interested more in software engineering professionalism.
Table -2- Percent of Software Developers Education in U.S

High school graduate or equivalent or less10
Some college, no degree21
Associate's degree10
Bachelor's degree45
Graduate degree14

Table -3- Worldwide Software developers grow

Table -2- shows education of software developers’ ratios in U.S.
While Table -3- shows population of software developers from 1960 to 2020


Do you think this article applies to you??


A research done by Ian Barnes from The Australian National University on personality type and software development

A comparison between the personalities of software engineers students and engineers in general. Above statistics were done on software engineers not students.