Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

I am currently working as a software developer and am getting by ok, but feel that there is something missing from my skillset.

Looking at job interview questions and processes of some of the big tech companies there is definitely an emphasis on problem solving and creativeness when tackling software problems.

Some of the examples I would not have any chance at all solving.

How can these skills be improved/learned? Or is this is simply a natural thing that cant be learned?

share|improve this question

marked as duplicate by Robert Harvey, MichaelT, gnat, Kilian Foth, Jalayn Jun 7 '13 at 12:18

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

How can these skills be improved/learned? By gaining experience. You get that by writing code, reading books and blogs, listening to podcasts, the usual stuff. See also sijinjoseph.com/programmer-competency-matrix –  Robert Harvey Jun 6 '13 at 23:14

1 Answer 1

up vote 2 down vote accepted

Everything can be learned, as long as you're willing to apply yourself and commit to it.

Those are two very different skillsets though (logic and creativity, from your original question's title). You could be a very logical yet totally non-creative person.

Improve your Creativity

The best way to work on your creativity is to try new things, and to get out of your confort zone.

As an aside: creativity is a way more complex concept than one may think, and attempts at measuring it and developing it have been around for quite some time.

Improve your Logic Skills

Take Courses in Formal Logic Theory

I was already a pretty decent programmer when I was invited to follow another master's coursework which included a course on formal logic. Being not really a "formal CS theory guy", that made me discover and completely new side of the field.

What about following the next sessions of these online courses? (amongst many, many others, some taught by famed professors... or their TAs)

Books, TextBooks and Research

  • Introduction to Formal Logic - Peter Smith
  • Agorithms - Robert Sedgewick

Programming Exercises and Code Katas

Coding Challenges

Practice, Practice, Practice

"Good judgment comes from experience, and a lot of that comes from bad judgment."

- Rita Mae Brown, Jim Horning, Will Rogers (not sure who's the original, I've seen attributions to all 3 of them)

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.