JavaRush /Java Blog /Random EN /Soldiers of the invisible front. Who is a Backend Develop...

Soldiers of the invisible front. Who is a Backend Developer and how to become one?

Published in the Random EN group
We continue to talk about the main specializations that are related to programming. We have already covered a number of positions, including full stack developer , tech lead , team lead and QA engineer . Now the turn has come to an important and broad specialty - Back-end developer. Soldiers of the invisible front.  Who is a Backend Developer and how to become one?  - 1

Who is a Back-end Developer?

A backend is a combination of technology and software code that powers a website or application while remaining invisible to the end user. The backend consists of three basic components: a server, a database, and a software application. Thus, the task of a backend developer is to create and maintain a technology platform that powers the part of a website or service that is visible to the end user, that is, the frontend. The essence of the work is to create a working “server-application-database” combination by writing code that runs on a server - physical or cloud. To do this, backend developers use a number of languages, including Java, as well as PHP, Ruby, Python, .Net and a number of others. Additionally, a backend developer needs database tools such as MySQL, Oracle, Microsoft SQL Server and PostgreSQL to manage databases. Backend developers are responsible for creating efficient and fast technology solutions that help convert data into frontend code that the user can interact with on their end - in the form of filling out a form, creating a profile, making an online purchase, etc. Typically, backend developers work in groups or as part of a team that deals with the backend, although in large companies they can be part of a team of developers of different profiles, including frontend specialists, QA specialists, UX architects, and so on. Soldiers of the invisible front.  Who is a Backend Developer and how to become one?  - 2

Back-end developer skills

What skills should a backend developer have? Let's briefly go through the main ones.
  • Deep knowledge of backend programming languages ​​(Java, Ruby, PHP, .Net, Python as the main ones) and those frameworks used by the company or project.
  • Understanding of key frontend technologies such as HTML, CSS and JavaScript and others in order to effectively interact with those coders who are responsible for the frontend.
  • Ability to configure and manage hosting, which includes database administration, scaling applications when load changes, etc.
  • Knowledge of web server technologies.
  • Understanding of the operating principles of cloud services (AWS, Azure, Google Cloud, etc.) and the ability to configure them.
  • Understanding of the basic principles of developing, implementing and maintaining content management systems (CMS).
  • Proficient in API integration skills.
  • Knowledge of basic cybersecurity principles and measures to prevent hacker attacks or data leaks.
  • Ability to prepare reports and analyze statistical data.
  • Knowledge of technologies for creating backups and data recovery, including website code and databases.
  • Experience with product version control systems such as Git.
Soldiers of the invisible front.  Who is a Backend Developer and how to become one?  - 3

How to become a Back-end developer?

Learning the basics of backend development will be useful even if you don't intend to work in this specialty. So, what should you learn to improve your skills in backend development?
  1. Learn the basics of data structures and algorithms.

    Often developers skip this step and immediately start learning frameworks. However, experts advise first learning the basics of data structures and algorithms, at least superficially. They also recommend understanding hashing, sorting and searching algorithms, and algorithm stacks.

  2. Learn a programming language and choose a framework(s).

    Since different programming languages ​​are used in backend development, it is better to decide from the very beginning on the language or languages ​​(no one forbids learning several at once) in which you will specialize. In addition to Java, people most often start by learning C, Python or PHP. JavaScript would also be a good option for additional development.

  3. Learn SQL and the basics of database management.

    The next logical step on the path to becoming a backender is learning the SQL language and the basics of database management. There are now many convenient and relatively simple database management systems from which you can choose one or two. And knowledge of the SQL language will help you easily understand similar systems and write SQL queries. Since all websites today use databases in one way or another, this skill will be useful in any case.

  4. Explore frameworks.

    The choice of framework will, of course, depend on the programming language. Since most frameworks, such as Spring, use the same architectural pattern - MVC (model-view-controller), knowing one framework makes it much easier to learn and use other sets of software solutions in the future. Don’t underestimate the importance of using frameworks and their convenience, because with them you can significantly reduce the amount of code written.

  5. Start applying the acquired knowledge in practice.

    Practicing the application of knowledge in backend development also plays a huge role. So start by working on small projects and/or tasks, such as creating a simple blog, basic image viewing or project management applications, todo lists, and so on.

  6. Learn to work with cloud services.

    Another fairly important step is to learn how to deploy your software products on cloud service platforms. The main cloud platform options are AWS, Google Cloud, Azure and Heroku.

Is it worth becoming a Back-end developer? Opinions

“I hope your main motivation for learning web development is not money. Yes, web development is a fairly popular and in-demand field, but it is now very highly competitive, even compared to how things were ten years ago. Therefore, it will take even more effort from new developers to stand out from the crowd of competitors and find work. Also remember that knowing how to write code alone is not enough to be a good backend developer. Don’t forget that the work of a backend developer is much more often abstract in comparison with the frontend and takes place without a full understanding of the future result, because they often do not have quick feedback, both from front-end developers and users,” said Kendrick Vezina (Kenrick Vezina), computer science teacher and writer. “The good thing about backend development is that it gives you a range of options or avenues to choose from. For example, I started with PHP when it was a very popular and at the same time easy-to-learn backend development language. To make a decision about what to study first, you need to understand what you plan to develop. For simple blogs, knowledge of PHP should be enough; for creating real-time applications, Node.js is good, while larger applications require knowledge of Java, Groovy, etc. Learning will be easier if you decide right away what projects you want to work on,” advises Lawrence Adu, lead web developer at Qodehub. “One of the advantages of backend development is the fact that this field does not change as quickly as others. If you learn SQL, one of the main programming languages ​​and a couple of frameworks, this should be enough to provide you with a job for ten years, or even more. Whereas in the front-end area everything changes much faster, significantly. Front-end developers need to know more technologies and stay on top of their developments and changes,” said John Allred, a web developer with more than a decade of experience. Soldiers of the invisible front.  Who is a Backend Developer and how to become one?  - 4

Salary and career prospects

And finally, let’s look at the salary and career prospects of backend developers. According to the authoritative resource Glassdoor, the average salary of backend developers in the United States is $101 thousand per year. Recruiting portal PayScale gives a more modest amount - $73 thousand per year on average, with $49 thousand per year as the minimum average salary and $118 thousand per year as the maximum. As for the salaries of backend developers in different countries, according to this source, in Britain they earn an average of $37.5 thousand per year, in Singapore - $36 thousand, in Australia - $48 thousand, and in Canada - $49 thousand per year. year. As for “our” countries, in Ukraine, according to the recruiting resource Work.ua, the average backend developer earns a little more than $1,300 per month. In Russia, according to this data , backend coders receive on average a little more - about 100 thousand rubles. (about $1400) per month. The salaries of Belarusian backend workers are at approximately the same level. This is if we take it from the available average data for backend employees in general. If you look at developer salaries depending on the programming language, the figures turn out to be somewhat more optimistic (for such popular languages ​​as Java, of course). Thus, in Ukraine, a Java developer receives on average about $2000-2500 per month. In Russia, according to this data , Java coders earn on average 230-250 thousand rubles. (about $3200-3500) per month. As for career prospects for backend developers, they are generally quite broad, and knowledge of backend technologies, as we have already said, can be useful for many different positions in development and the IT industry as a whole. Most often, backend developers move to management positions, or to higher technical positions, such as software architect, tech lead, team lead, and so on.
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION