By Sarah June FischerDecember 12, 2016

The 6+ Skills Every Developer Needs (and How to Test for Them)

Exploring a new career is daunting. You probably have a thousand questions, starting with “Can I even do this?” While anyone can be a successful developer with hard work and the right training, there are a few things you can test (and be working on) that will help you decide if a development career is the right fit.

Core Skills

JavaScript developer Eric Elliott recently published an article that tries to answer the question, “Are programmer brains different?” His analysis starts with an outline of the nine skills that are fundamental to software development:

  1. Analysis
  2. Creativity
  3. Communication
  4. People Skills
  5. Learning
  6. Detail Oriented
  7. Big-Picture Oriented
  8. Math & Abstraction
  9. Logic

While it’s helpful to have these skills early on, they can all be learned and strengthened over time. Plus, these skills don’t exist in a tech industry vacuum. They are all—in different forms and combinations—required in other disciplines, and lend themselves well to the cognitive requirements of writing code.

Elliott concludes with this:

“Are programmer brains different? Evidence from related studies support the idea that programmers may have enhanced working memory capacity, heightened language processing skills, stronger analytical skills, and possibly enhanced hippocampus capacity.”

Interestingly, in his conclusion, Elliott notes that if a programmer’s brain is different, it’s because they’ve adapted and grown as a result of the task at hand—not because of a predetermined ability that only exists in certain people.

So even if you don’t identify with all the skills in the above list, you can learn and develop them with time and practice.

Emotional Intelligence

While STEM majors may generally have higher IQs, success in the field isn’t necessarily dictated by brain power, but rather emotional intelligence. Traits like openness, emotional stability, and conscientiousness (among others) are developed in real-world relationships, challenges, and work environments, and help you be more successful in the long run.

Curious about your EI? There are a lot of different ways to test your emotional intelligence (and many free options on the web). Take a free online EI test »

If you want to dive in deeper into studying your emotional intelligence, check out the Mayer-Salovey-Caruso Emotional Intelligence Test (MSCEIT).

Growth Mindset

If you’re learning to code, you have to be prepared for the inevitable roller coaster:

Scale of learning to code journey

Everyone hits the desert of despair at some point in their learning process. The only way you’ll get past this valley is by developing a growth mindset.

A Growth Mindset (vs. a Fixed Mindset) knows that skills can be learned and challenges overcome—just because you don’t understand something now doesn’t mean you’ll never understand it. A lot of people get hung up in a fixed mindset when they’re learning to code because they assume or hope that it will come naturally, and when the hit a wall, they decide it’s “just the way it is.”

Growth mindset vs. fixed mindset

If you’re learning to code (or learning anything new, really), it’s crucial to develop a growth mindset to surpass the hurdles and keep pressing forward.

Test your mindset »


You’ve heard it (and we’ve said it) a thousand times. Software development is hard. Bootcamps are a great way to get development skills quickly, but don’t be mistaken: the only way the curriculum fits into months—and not years—is by delivering a lot of information every single day. Our students are on campus 60 to 80 hours a week, a pace that only slows down—slightly—when they land their first job after they graduate.

Anyone who joins a bootcamp expecting to glide through is in for a very rough ride, both in the program and in the industry as a whole. In short, it takes grit to learn to code—a process that never ends, thanks to new technology, languages, frameworks, industry standards, etc.

Want to test where you fall on the grit scale? Take the quiz »

Familiarity with the Computer

There are also a lot of tangible skills (outside of actually coding) that every developer needs. The first thing you’ll need is familiarity with the tool you’ll be using: your computer.

Software developers rely heavily on their keyboard, since every movement from keyboard to mouse, back to keyboard expends time. Using your mouse may seem easier at first, but soon you’ll find that keyboard shortcuts help you navigate your computer much faster. Check out these shortcuts to improve your keyboard prowess.

General keyboard shortcuts for developers Keyboard shortcuts for Firefox Keyboard shortcuts for Chrome Keyboard shortcuts for Safari

Typing Speed

The average person types around 40 words per minute, and the average working professional can type upwards of 75 words per minute. While there’s no “minimum speed requirement” for software developers, you should aim to be somewhere in this range to be productive when you’re coding.

Test your typing speed »

If needed, brush up on your typing skills.

At Code Fellows, you can try out a coding career for a day! You’ll write some code, hear from professional coders, and learn about the vast career possibilities for developers. Join us for an upcoming Code 101 »