Manual for IT Recruiters - III. Types of programmers

In the previous section of the Manual, we explained individual roles within the development team. Now we shall endeavour to differentiate different programmers according to the technologies they utilise. The following division is purely my own perspective, and it should not be taken as dogma. As the title suggests, this is more a list of types of programmer, rather than separate positions.

Depending on what part of the software the developer is working on, we can describe them as either backend of frontend developers. Backend means that part of the app which ensure functionality or which works with data, stores it, processes it (or in lay terms also the “guts” of the app). In contrast, the frontend is that part which we see and which we interact with – forms, photo galleries, interactive drag and drop, etc. Different technologies are used in the backend development than in frontend development.


Backend developer

Most commonly used in backend development: Java, PHP, Node.js, C#, .NET, Ruby on Rails. It is not normally within the power or interest of the programmer to learn and use all programming languages, and as such we encounter experts/positions such as:

  • java programmer
  • php programmer
  • c# programmer
  • .net programmer
  • and others

If a programmer profiles him/herself as a backend developer, they may be able to handle a number of programming languages. They are implying that it doesn’t matter to them whether they are going to be developing software, e.g., in Java or C#. If, instead, the candidate CV states “Java developer”, it is basically pointless to offer them a position in .NET, even where this technology is stated elsewhere.


Frontend developer

In frontend development, the well-known HTML and CSS and now also modern javascript frameworks are used - Angular, React, Coffeescript, Vue.js and dozens of others. Like for backend, we encounter specialists such as:

  • Angular developer
  • React developer
  • Vue.js developer
  • and others

The same parallel applies with position titles as for backend. If the developer’s CV states he/she is a Frontend developer, this may mean he/she works with a number of frontend technologies. The CV should be further investigated to ascertain what specific technologies he/she handles, and at what level.

 

Full-stack developer

The term “full-stack developer” means someone who can handle a combination of technologies used at both frontend and backend. This may involve a combination of Java + Angular, .NET + React, PHP + Javascript or others.


Mobile developer

Another “category” is mobile developers. The most widespread type of programmers who specialise in mobile development are iOS developers and Android developers. Swift or the older Objective-C are used to develop iOS apps, while Java SDK is used to develop Android apps. Hybrid frameworks are also sometimes currently used. The advantage of these is that one piece of source code can be used to “generate” both apps – for both Android and iOS. This approach has both pros and cons. It is important to remember that one of these frameworks is, e.g., Ionis.


Embedded developer

Embedded developers are most commonly involved in developing control units. These may be control units for navigation devices, air-conditioning, auxiliary engines, dashboards, etc. It always involves so-called software within hardware – hence the word “embedded”. This type of software is most commonly written in C/C++.

Entry image
  • Java
  • Javascript
  • PHP
  • programming languages

What frameworks are, and the most commonly used ones

Besides requirements for knowledge of programming languages in job vacancies, there are also often requirements for knowledge of a particular framework. But what exactly is a framework? It is a programming language add-on, or one might say a package of components which makes programming in a particular language easier. Every programming language has a large number of frameworks. Let’s look at so

Vojtech Zahorsky
Entry image
  • Java
  • Javascript
  • backend
  • programming languages

Manual for IT Recruiters - V. Java and Javascript: the difference between them

One of the most common errors made by recruiters is mixing up Java and Javascript. These words are very similar, but their meaning and uses are entirely different. As we know from Chapter 3, Java and Javascript are two different programming languages. Java is most frequently used to develop backend parts of apps (that part which ensures functionality). In contrast, Javascript is used to develop th

Vojtech Zahorsky