Programmer vs developer: a recruiter’s guide to telling them apart

Programmer vs developer a recruiter's guide to telling them apart

Lion vs. tiger, apples vs. oranges, black vs. white.  These are all things that are easy to tell apart. But if I asked you to tell me the difference between a programmer vs developer, could you do it?  Many people can’t. In fact, the confusion around these names has led to a joke.

“A software engineer, a developer, and coder walk into a bar.

— Here come the programmers! — says the bartender.” (source)

While that might give you a little chuckle, it does bring up an important point. Often times, the differences between the roles in IT aren’t entirely clear.

When deciding whether you should recruit a programmer vs developer, the roles may sound very similar but there are actually important differences. If you recruit IT positions, it’s essential that you get these differences right. If you don’t, you might end up recruiting the wrong person for the job, costing your company time and money you could better use elsewhere.

720 x 90 – download Hack the process

Why you need to know the difference between a programmer vs developer

Why you need to know the difference between a programmer vs developer

Image Source: Grammarly

Would Tom Brady have played 18 seasons in the NFL if he had been a defensive tackle? Would Leonardo DiCaprio have won the Oscar if he had been in the Avengers sequel instead of The Revenant? I think we can safely say that neither of them could or would have.

To get excellent results, it’s important to get the right person for the job with the right experience. To do that, you need to understand the difference between the different roles in IT such as programmer vs developer. This knowledge is essential to effectively understand a candidate’s CV and hire the right person to fill the position. Looking more closely at a programmer vs developer, they do some of the same things. That said, they still fill distinct roles. Each of these roles requires their own unique skills. In other words, you don’t want to hire a programmer to do a developer’s job.

In this post, we will be answering the following questions

  • What does a computer programmer do?
  • What does a software developer do?
  • What is the difference between seeing programmer vs developer on a CV?
  • What positions can do more than a developer?

What does a computer programmer do?

We’ve already talked on this blog about how a programmer is like a reasonably competent cook. They can effectively use any instructions given to them and often put a bit of forethought into deciding how they’re going to structure and write the feature that they’re creating.

Just like a competent cook can really turn a recipe into a great meal, programmers translate ideas taken from other people and turn them into clean and efficient code. Think of programmers as the technicians of the software development process.

According to Sokanu, they are responsible for, “writing, testing, debugging/troubleshooting and maintaining the source code of computer programs.” You often find them using different resources like libraries and frameworks. These help them build their applications more efficiently with few bugs.

Programmers are also responsible for doing frequent testing of the code they write. This is so they can make sure that it doesn’t conflict with what their teammates have written. At the end of the day, clean well factored and error-free code is very important and is the main focus of a programmer. That is as long as the job gets done. But when comparing a programmer vs developer, a software developer can do all of this and more.

What does a software developer do?

programmer vs developer: What does a developer do?If a programmer is like a reasonably confident cook, a software developer is more like a professional chef. Not only can they cook to a high standard, but they can take a more creative and conceptual approach to what they’re making. This means finding out what their target market wants, creating a plan for how to make it, and coming up with a series of instructions that they can give to other cooks. Chefs do this for restaurants and software developers do this for programmers.

Depending on the company, a software developer’s job starts by talking to users to analyze their needs. They use this information to create and test, software specifically in the context of solving their user’s problems. At smaller companies, they will then also take on the role of the programmer an put their ideas into code. At larger companies though, they act more like project managers, coming up with the concept behind the software. They then giving those specifications to programmers to turn into a product. As Brad Cypert says,

I fully expect a Software Developer to be able to build a non-trivial piece of software from the ground up and see it through to completion.

But regardless of where they work, software developers are responsible for the design and architecture of a software component as well as the rating of the technical documentation and liaising with relevant stakeholders. In this way, they combine the skills of a programmer, analyst, architect, and tester. From a project management perspective, they should also be able to structure the project and reasonable manner, understand its scope, and be able to guide other contributors.

What is the difference between seeing programmer vs developer on a CV?

It’s good to think of software developers as project managers who can code while programmers are technicians. When comparing a programmer vs developer, a software developer should be able to code as well as a programmer does but their main job is finding ways to solve problems. To do this, they need to figure out what those problems are and then figure out the technical framework for solving them.

Programmers, on the other hand, are all about code. It is their job to take the specifications given to them by a developer and turn them into a functioning application. To do this they put the developer’s ideas into a language that the computer can understand and follow.

But often, the distinction between a programmer vs developer is blurred and you find them working closely together.  As the Bureau of Labor Statistics says,

Developers usually work closely with computer programmers. However, in some companies, developers write code themselves instead of giving instructions to programmers.

In other words, a programmer should be adept at coding within a specific technical environment. If you see that someone has had a developer role before, they should have well-developed project management and soft skills in addition to their coding skills. If someone has had programming roles, they have mainly been concerned with turning specifications into code.

What positions can do more than a developer?

programmer vs developer: do moreYou probably remember that a programmer is like a competent cook, and a software developer is like a chef. But what if you want someone to create and lead a team that implements an amazing restaurant menu day in day out? Then you’ll need somebody with an extra set of skills.

And in the same way, there comes a time when you’re going to need someone more than a software developer. That person is going to be a software engineer, someone who can manage the entire process of conceiving of and building enterprise applications.

Image credit: Mimi Thian on Unsplash

720 x 90 – download Hack the process
Share the article ...
Share the article ...
  • Nick Krastev

    Actually, the field is full of self-thought semi-professionals, who “know how to code”, but also “can talk with the business”. This is the next iterration of the naïve, concept of analyst-programmer from the 90s, translated to the current LEAN culture. End-customers, laymen and top managers love the role of generalist developers, because they don’t have talk with techy people. Dual purpose : those smart people will take care of everything, right?

    In reality after working for 16 years in various projects with hundreds of professionals, I have never seen a person who can do competently both programming and business analysis. Each of those professions takes many years of training and completely different, mind-set. Even if it was possible to find individual with both trainings and skill-sets, it still a source of errors, as asking a programmer to QA their own work. Developers tend to compromise with requirements, to fit whatever their limited programming skills allow them to produce.

    On the other hand the issues with real specialist programmers are:
    a) they are becoming very hard to find these days
    b) they are expensive and have dedicated great deal of their life into becoming professionals
    c) they are harder to manage and use efficiently (require professional IT managers, architects etc).

    However, professional programmers know how to manage software entropy, how to write efficient solutions, avoid trench-warfare of cascading bugs etc. and most importantly deliver to a specification. In terms of efficiency, I would like to give an example: in a single night a good old-school programmer managed to re-write, from scratch, an entire project, on which a team of 6 generalist developers had worked for 3 months… and it worked perfectly, compared to the scotch-taped monster delivered by the developer team.

    Professionals use professional methods, tools and study hard to acquire niche skills. Amateurs look for a hammer to nail problems, without having to do too much management or thinking about it.

    Technology is complex. There is no easy way around it, or two weeks course that will teach you the “new simple way of doing things”.

    • Jakub Kubrynski

      Hey Nick,

      Developers who can do both programming and business analysis do exist but they are not common. Joel Spolsky, Ted Neward, Martijn Verburg, and Lukas Elder are just a few people who can do both well to the point that they even run their own businesses and they aren’t the only ones.

      People who started their careers as programmers are starting to understand the business requirements of what they are doing. We now see that a good portion of these people have switched from test-driven development to acceptance TDD or even behaviour-driven development. This is because people are focusing more on what the code should do in business terms rather than simply implantation. At this point, It would be more accurate to call these people developers.

      I do agree with the issues that you mention about specialist programmers with the on proviso that while they are harder to manage to use efficiently, the whole point of hiring an effective self-starter is that you don’t need to manage them as closely.

      In fact, the skills that you ascribe to a good old-school programmer are the same ascribed to a 10x developer. This post talks all about it.: https://devskiller.com/hire-10x-software-developer/ .

      The point of this post is to explain the differences between programmers (people who focus solely on code) and developers (people who are involved in the greater software development process). I think the distinction you are making is between good and bad developers or programmers which is a separate issue entirely.

      Best regards,
      Jakub

  • Brad Cypert

    Hi! Thanks for mentioning my article in yours! I sincerely appreciate it! Can you do me a favor and change the spelling of my last name from “Seibert” to “Cypert”?

    Thank you!

    • Lewis Stowe

      My mistake Brad. Sorry about that and thanks for bring it to our attention. It has been fixed.

The AI Benchmarking Engine is here!
Predict your candidates’ success with 85% accuracy.
Read More
+