Backend Developer

A backend developer develops what is "under the hood" of an application or website, the part invisible to visitors. Companies usually don't post jobs simply for a "Backend Developer", but specify the technology in the title of the position ( for example, PHP Developer or Ruby Developer).

Backend developers work with databases, web servers, server scripts, and APIs. These specialists are also responsible for integrating most of the services with your website. It is thanks to backend developers that things such as sharing on social networks, reCAPTCHA, online payment, and the ability to check card balance work. It is in the backend where processes are automated. In general, only a very simple static website can be built without a backend developer.


Job responsibilities

  • Develop and optimize the logic and algorithms of web or mobile applications, their architecture
  • Ensure the correct operation of the website computational logic
  • Optimize server code for better speed 
  • Design and manage databases
  • Integrate external services
  • Develop a service's API so that it can integrate with other websites
  • Cover backend code with tests
  • Ensure/improve the security of the service 


Skills

What should a backend developer know?

  • One or more server-side programming languages – this can be PHP, Python, Java, Ruby, or Perl ( Node.js runtime environment is also frequently used) 
  • Database management systems: MongoDB, MySQL, PostgreSQL, etc.
  • AJAX, the technology for updating data in the browser without reloading the page
  • Frameworks, to solve project tasks faster and more efficiently – for example, Django ( Python), Rails (Ruby), Laravel (PHP), and Spring (Java)
  • The basics of the frontend development, to better design applications and interact with frontend developers 
  • The principles of operation of web servers such as Apache, NGINX, and IIS 
  • Version control systems, such as Git, Mercurial, CVS, and SVN


It would be a plus if the specialist understands the principles of UNIX systems and can draw up technical specifications. 


The set of skills depends on the tasks. On a small project, it may be sufficient to know PHP (or even Node.js) Ajax and be able to work with a single DBMS. For a large online store, you need a mastery of technologies such as Docker, Kubernetes, experience with high loads, and knowledge of the monitoring systems.

FAQ

We have collected answers to the most common questions from companies that are looking for backend developers. If you still have any questions, the experts at INDIGO Tech Recruiters will be happy to answer them.

1. If my budget covers the cost of only one programmer, is it better to hire a backend or frontend developer?

Ideally, you need a full - stack developer. Backend and frontend developers usually work as a team. But, if you are developing an app, you can start with a backend developer who will develop the functionality. At the very least, they may be able to create a basic frontend to start with.
Everyone who has a project that is more complex than a basic static website.
Define the tasks and create a well thought-out job description. Experienced developers usually don’t post their resumes on job boards and hardly ever have to look for a job at all. At best, they may consider selected opportunities. You can find a backend developer on LinkedIn, connect, and ask them to consider a vacancy. You have to make an effort to attract a specialist and show the advantages of the project or company. It's best to entrust the search for such a developer to professionals.
Knowledge of at least one server-side programming language (for example, PHP, Python, Java) and experience with necessary database management systems.