This article: 10 Concepts Every Software Engineer Should Know, is worth taking a look at if you are a developer.
I thought about it for a minute, trying to think of something important that they didn’t touch on in this article, and I think the only major thing I would argue for would be entity relationship diagramming: the ability to turn a problem domain into a set of entities and relationships.
Other topics I would have considered: Regular Expressions, code documentation, project estimation, and maybe unit testing.