web development, there are three kinds of programmers. They back end developers, front end developers, and full stacks, who can do both. If you are reading this tutorial, you’re probably interested in the back end of a website. Good for you because you will soon know what is a back end developer and how to start the journey to become one.
Table of Contents
- 1. What is a back end developer?
- 2. Back end developer responsibilities
- 2.1. Server-side logic
- 2.2. Automatic notifications
- 2.3. Data Validation
- 2.4. Database Access
- 2.5. APIs
- 3. The Tools You Need for Back End Development
- 3.1. Server-side programming language
- 3.2. Database system
- 4. Okay, but how much can I make?
- 5. In Closing…
What is a back end developer?
A back end developer is a person who specializes in back end web development as it’s sometimes called. If you are interested in making things work, couldn’t care less about how they look and thrive with a puzzle to solve, you should consider becoming a back end web developer.
Latest Deal Active Right Now:
GET 50% OFF
DataCamp Black Friday Sale
During this DataCamp Black Friday, you can access the top-rated courses with a 50% discount. Enroll now for way less!
We first need to look at how websites work to explain the role of a back end developer properly. There are two places where the code does work to make things happen: the client-side and the server-side.
Client-side coding is the sole domain of front end developers. They create the structure of the web page using HTML, CSS, and JavaScript, make transitions smooth as butter, and make buttons clickable and text fields editable.
All of it is useless without back end developers, who make the whole thing work on the server-side. The work is complicated and requires you to take responsibility for critical parts of the website. On the other hand, the back end web developer salary you can expect is also considerably higher than the national average in most countries and even in the whole web development field overall.
Let’s take BitDegree as an example.
When you decide to sign up for BitDegree, you click the Sign-Up button. Then, the website redirects you to the sign-up page, where you enter your information and continue the process.
A back end web developer figured out the best way to store your account data, verify that it’s correct (a valid email address and a confirmation email to prove that the address is truly yours) and call up the relevant information (username and password) when you log in the next time.
When you browse our course pages, you see buttons that will allow you to enroll in a course if you aren’t enrolled already. When you click that button, the code front end developers wrote calls the function written by our back end guys to enroll you in the course.
Essentially, a BitDegree back end developer wrote all of the functionality that goes into running the website on the server-side, while front end wizards make the website beautiful and connect the elements you see to their functionality, which was set up on the server-side.
Back end developer responsibilities
Hopefully, you now know a bit about what is a back end developer and how his job is different from what front end people do. But what is a back end developer responsible for?
Server-side logic
The best way to answer when asked, “What is a back end developer?” is to say that it’s a developer who’s responsible for programming the actions the website performs on the server-side.
Your bread and butter will be:
- User authentication. Making sure that the user’s account details are correct, that he has the necessary permission to see what he’s about to see, etc.
- Order handling. How an order you make on the website is processed to make sure that there aren’t any mistakes.
- Optimization. Making sure that every piece of functionality the website has not only works but does it in the fastest way possible.
Automatic notifications
It’s said that if you have to do a task repeatedly, you should find a way to automate it. This couldn’t be more true for website development and precisely one of the ways to answer the question What is a back end developer responsible for?
For example, when you sign up for an account on BitDegree, you receive an automatic email to validate your address. The same is true when you try to recover a password or perform any number of other maintenance tasks.
What is a back end developer in the grand scheme of automating? He’s the person to write the code that makes this process work. Imagine what would happen if there were thousands of users online 24/7 and we had to manually send emails. You would have to wait days for a simple validation email.
There are also automatic notifications in-site, informing you about new features and offering services you might be interested in. All of this is taken care of by back end developers too.
Data Validation
Aside from coding the server-side logic, another answer to the “What is a back end developer” question could also be: the guy who secures the system. The part of the website you see on the front end can be changed in the browser by editing the HTML and CSS you see when inspecting (F12 on Google Chrome). These changes last until you reload the page.
If the whole website was this easy to change, banking online and even BitDegree would be impossible and extremely vulnerable to hacking attempts. Thankfully, that’s not how it works or the whole world would be in trouble.
All the data you can imagine a website needs is stored in databases. When your browser generates the page you’re going to see, it calls the data values it needs, like prices, number of items in stock, etc., from a database. When you enter information, a proposal to update the database is made.
What is a back end developer? The poor guy who has to create the processes which make sure that the data entered is valid before making server-side adjustments.
The simplest case to show you how the process works is a simple login procedure.
Let’s say you enter this email address: [email protected] with the password: $uPer$eurr£a$$512.
When you click login, this action triggers a request to see if there’s an account with the email of [email protected]. If there isn’t you get a notification that the login details you entered are incorrect. If there is an account with that email address but the password recorded doesn’t match what you entered, you also get an error.
To put it simply, any information you enter on the website has to be validated by the code written by a back end developer before it can become a part of the database.
Database Access
While it’s similar to the previous point, it’s worth splitting it off. As a back end developer, it’s your job to access the various databases maintained by the website to make the system do what it’s supposed to. You and your code is the critical point of failure in making sure that the website remains secure and works as intended.
Also, it’s your responsibility to streamline the process of accessing databases in such a way that the website loads as fast as possible and its functionality is carried out as quickly as possible as well.
APIs
Some people need third-party APIs to work properly. What is a back end developer? The lucky guy who gets to make sure everything’s alright! You might get to write the API for other websites to use your site’s functionality too.
Working with and creating APIs could be a big part of your job as a backend web developer, so it’s a great idea to get comfortable with them. Fortunately, they can be mind-blowingly fun to work with because they save you loads of time. Or a splitting headache when you have to code a complicated system from scratch.
Sometimes, however, APIs can be annoying and difficult to work with because of the decisions made by the people who coded them.
Better be good, son!
The Tools You Need for Back End Development
On your way to figuring out what is a back end developer, it’s great to know everything we’ve discussed above. You need to know what back end developers are and are not responsible for, what the job involves.
It doesn’t help you to become a back end developer, though. What is a back end developer? The guy who knows the following tools inside out:
Server-side programming language
While you do need to know the basics of HTML and CSS as a back end web developer, most of your work will be done using an actual programming language. PHP, Node.js (enables JavaScript for back end programming), Python and others can all be used for server-side coding but it’s important to know which one to choose.
The problem is that different employers will require you to know different languages. After all, you can’t start working in a company that uses Node.js to enable JavaScript as its server-side programming language if you only know PHP.
Let’s go over each of the top 3 most popular server-side programming languages in more detail and no particular order:
PHP
This programming language has been there forever but it shows signs of being out. While it’s true that you can do a lot of amazing things with PHP, critics of the language point to it being a structural mess.
It’s understandable because PHP wasn’t built as a complete language. Its creator didn’t even set out to create a proper programming language. As time passed, more and more people picked up PHP and started adding to it. The result is that it’s not consistent.
The number of PHP job openings has significantly dropped down from what used to be normal too, which would mean steeper competition if you tried to get into PHP back end development right now and took a while learning it to professional standards.
Node.js
When people hear about Node.js and what it’s used for, they often get their minds blown. For a long time, it was the gospel that JavaScript the programming language for the front end of a website but you use a proper one to code the back end. With the introduction of Node.js, that is no longer the case.
Technically, Node.js isn’t a programming language, it’s a run-time environment, which lets you use JavaScript for server-side applications. For purists, this is pure heresy.
Even last year, there were still more job openings for PHP developers than Node.js. On the other hand, while PHP demand is steadily falling, Node.js is likely to rise.
If you can wrap your mind around the fact that JavaScript can be used for server-side programming, it may be a great idea to learn it. Learning Node.js as your first back end development tool could help you support yourself while getting ready to work for a serious company too.
How?
Even if you’re planning to specialize in back end development, you will still have to be decent at HTML, CSS, and JavaScript to understand what the front end plebs are doing. If you focus on Node.js, you will be able to step into the shoes of said front end plebs to freelance as a website designer. After all, freelance clients won’t care what you don’t know if the simple website you make for them works and looks great.
Python
Python is one of the hottest programming languages in the world at the moment, albeit for machine learning purposes instead of back end development. With that said, it’s a well-made language, learner-friendly, fun to work with, and extremely powerful.
Its strongest pro in Python’s ability to handle huge amounts of data. If you want to work on projects with big data applications, Python is your best bet.
If you want machine learning in your back pocket, Python is a great language to learn too, in case you decide that being a back end web developer is not for you after all.
- Easy to use with a learn-by-doing approach
- Offers quality content
- Gamified in-browser coding experience
- Free certificates of completion
- Focused on data science skills
- Flexible learning timetable
- High-quality courses
- Nanodegree programs
- Student Career services
- Nanodegree programs
- Suitable for enterprises
- Paid certificates of completion
- A wide range of learning programs
- University-level courses
- Easy to navigate
- University-level courses
- Suitable for enterprises
- Verified certificates of completion
Database system
As you might have noticed from previous sections, working with databases will be a big part of the complete answer to the What is a back end developer? question.
While we’re all for freedom, your choice of the programming language is likely to decide for you when it comes to choosing a database system to learn, especially when you account for popular stacks (or technologies which are used together) in your decision.
If, for example, you decide to learn to code the back end using JavaScript with Node.js, you should learn to work with MongoDB databases. On the other hand, if you choose the PHP programming language, there’s a good chance that you will need to learn to work with MySQL or other SQL-based database systems to stay consistent.
Frameworks
Before we talk about the web frameworks you may wish to learn to work with, we have to define what a web framework is. In simple terms, a web framework is a frame on which your web application is built.
It’s the tool that defines the structure of your website, allows you to build APIs (Application Programming Interfaces, which allow your product’s features to be used in other products) and reuse code in different places.
For Node.js
If you decide to go all-in on the JavaScript ecosystem (and there aren’t many reasons you shouldn’t because it’s awesome), Express.js is probably the web application framework you’re going to use. There are some other options but Express is the most popular.
For PHP
There are two frameworks and a CMS (Content Management System) built on PHP, so you may have to know it if you ever apply for a job using these systems. If the job advert mentions Symfony or Laravel, know that the job will require PHP.
If the website you are going to work with involves WordPress, you may need some PHP in case custom plugins are needed. WordPress was written with PHP, after all.
For Python
If you choose Python, there’s a very good chance that you will have to learn the Django web framework. It’s best at easing the process of creating complex websites driven by the extensive use of databases and works to Python’s data-handling advantages over other languages.
For C#
By settling on C#, you sign up for the Microsoft ecosystem, which makes it mandatory to know how to work with the .NET Framework.
Okay, but how much can I make?
The back end web developer salary question is very important when making a future career decision. It shouldn’t be, though.
What is a back end developer? A guy who makes Internet stuff work on the server-side. The answer isn’t and should never be something like, “The guy who makes the big bucks!”
No matter how much you get paid, it will all be worthless if it’s a slog to get through the day. Before you consider the back end developer salary factor, figure out if back end coding is even something you would enjoy doing.
Making the server-side logic of huge website work, securing back end operations, working with APIs and being responsible for the integrity of your databases are extremely important duties. Carrying this responsibility has to be reflected in the back end web developer salary you are offered. On the other hand, don’t expect to make a fortune as a Junior developer. At this stage of your career, you still have a lot to learn before you can be trusted with the responsibility, which brings in the generous compensation packages.
In the parent field of web development, the back end development salary is the highest overall. You can expect to make upwards of $100,000 a year in New York City, for example. In other countries and cities, this figure may be quite a bit lower but then again, the cost of living in these places is appropriately lower in most cases.
The back end developer salary also varies by country. In some lower average income countries, the back end developer salary you can expect is significantly lower than the New York City figure but still amazing when you take into account the national average. It’s almost guaranteed that you will pay the bills and have plenty left over if you make it in back end web development.
With that said, remember that back end development and programming overall is a tool to solve a problem and build things. Don’t pursue this career for a paycheck, do it because you love it. Build things, solve problems, be happy. Don’t do what you hate for a fat paycheck.
Did you know?
Have you ever wondered which online learning platforms are the best for your career?
In Closing…
At this point, you should understand what is a back end developer pretty well. You roughly know what you might end up working with. You have a general idea about the tools you should learn to use. Now, it’s time to take action! Not tomorrow, right now.
Sit down, think carefully about the tech you want to use and start learning. The best place to start is the front end side because you need to understand it to grasp the concepts in more advanced subjects.
So, start simple, with HTML, CSS, and JavaScript. Once you’re competent with that, you will hopefully be able to decide the rest. We have a great interactive HTML and CSS course to get you started. And also, if you find some courses that are currently out of your reach financially, apply for a scholarship to get the fees funded.
Good luck and happy coding!