Computer Code

Difference Between Software Developer vs. Programmer vs. Software Engineer

I had a conversation last week about the difference between being a “programmer” and being a “software developer” and being a “software engineer”. Just so everyone understands the difference: A programmer is a puh-tey-toh. A software developer is a puh-tah-toh. A software engineer is a potato (in some states, a certified potato).  Got it?

Ok, so you say, “real programmers implement sophisticated algorithms.”
Inigo Motoya says, “You keep using that word. I do not think it means what you think it means.” Algorithms are just a set of instructions to solve a problem in a defined number of steps. Only programs that accept no input AND have no output do not implement algorithms. It is literally impossible to develop useful software without implementing some kind of algorithm. And it doesn’t matter if a programmer, software developer or software engineer creates the algorithm.
Business people and marketers somehow latched on to “algorithm” as some way of saying something was “smart” a few years back. Now people think that somehow algorithms are some kind of deep magic when in fact they are just logic that accepts input and produces the desired output. So software that was marketed as having “fuzzy logic” in the 80s, “artificial intelligence” in the 1990s now has “sophisticated algorithms” that ensure your paradigm is properly synergized with robust industry-wide buzzwords… or something like that.

One thought on “Difference Between Software Developer vs. Programmer vs. Software Engineer

  1. For me it’s similar to hackers… 3 types blackhat, whitehat and script kiddie. script kiddies use scripts creatd by professional hackers bcuz they cnt code it themselves. so there u have it programmer prefer programming… developer doesn’t necessary means the programmer of the soft. probably combine diff. frameworks. software engineer is just a generalization of both.

Leave a Reply

Your email address will not be published. Required fields are marked *