Three most critical programming concepts

Posted by Todd on Stack Overflow See other posts from Stack Overflow or by Todd
Published on 2009-04-23T13:27:23Z Indexed on 2010/05/12 20:14 UTC
Read the original article Hit count: 229

I know this has probably been asked in one form or fashion but I wanted to pose it once again within the context of my situation (and probably others here @ SO).

I made a career change to Software Engineering some time ago without having an undergrad or grad degree in CS. I've supplemented my undergrad and grad studies in business with programming courses (VB, Java,C, C#) but never performed academic coursework in the other related disciplines (algorithms, design patterns, discrete math, etc.)...just mostly self-study.

I know there are several of you who have either performed interviews and/or made hiring decisions. Given recent trends in demand, what would you say are the three most essential Comp Sci concepts that a developer should have a solid grasp of outside of language syntax?

For example, I've seen blog posts of the "Absolute minimum X that every programmer must know" variety...that's what I'm looking for.

Again if it's truly a redundancy please feel free to close; my feelings won't be hurt. (Closest ones I could find were http://stackoverflow.com/questions/164048/basic-programming-algorithmic-concepts- which was geared towards a true beginner, and http://stackoverflow.com/questions/648595/essential-areas-of-knowledge-which I didn't feel was concrete enough).

Thanks in advance all!

T.

© Stack Overflow or respective owner

Related posts about computer-science

Related posts about self-teaching