What is a Back End Developer + What Skills Do You Need to Be One?
So THAT’S what a back end developer is!
![front end developer portfolios](https://d1le3ohiuslpz1.cloudfront.net/skillcrush/wp-content/uploads/2019/07/Blog_Back-End-Developer.jpg)
You probably know that web developers are programmers who build websites and mobile web applications. Buuut like most things in tech, job responsibilities are never that straightforward.
Under the big umbrella of web development, there are different developer roles and responsibilities—sort of like how your college Literature professor specialized in themes of melancholy in Shakespearean sonnets or whatever.. Anyways. Generally speaking, web developer roles are divided into two broad camps:
- Front End Web Developers
- Back End Web Developers
If you’re just getting familiar with tech roles, front end developer jobs are probably what you’re picturing when you think of web development. Front end developers use languages like HTML, CSS, and JavaScript to build the web pages you see in your browser when visiting a web site. While front end development can involve everything up to high level programming for major tech companies, front end work is also the savviest entry point into beginning freelance and side hustle gigs. So yeah, everyone talks about it a lot.
But we’re also fans of the underdog around here—especially when the “underdog” is actually another lucrative job opportunity that’s fulfilling and flexible. Yep, we’re talking about back end development.
But what exactly is back end web development? This guide explains what back end web developers do, who can benefit from learning back end developer skills, what kind of skills are crucial for back end web development, and what kind of salaries back end developers make.
Table of Contents
- What is a Back End Developer?
- Should You Learn Back End Developer Skills?
- What Skills do Back End Developers Need?
- How Much Do Back End Developers Make?
- The Takeaway
What is a Back End Developer?
Back End Developers are web developers who build and maintain the “under the hood” parts of websites that users don’t interact with directly, but that make the front end of the website “work.”
Ok, so the gist of this probably makes sense—front end web developers build the web pages, menus, forms, etc. that users actually see and use, while back end web developers take care of the behind-the-scenes engines that make those websites and mobile apps run. But what does that look like?
Back end web infrastructure consists of specific things like:
- Databases—data storage applications that provide websites with dynamic content updates (e.g. when you check your bank account balance from a bank website, the site accesses your account information from a database, causing your balance to update on your screen).
- Server scripts—scripts are sets of instructions written in code that tell computer programs to “do something.” Back end or “server side” scripts allow a website’s servers (web hosting hardware where a site’s images, videos, and other assets are stored) to respond to actions and commands from the front end (e.g. retrieving an image or a video from a server and displaying it on a user’s screen).
- APIs—APIs (dev speak for Application Programming Interface) are sets of routines, protocols, and tools that allow applications to communicate with each other. When you share an article you just read to Facebook or Twitter with the click of a “share” button, it’s an API that allows that cross platform sharing to happen.
Back end developers build and maintain these server-side applications and tools, and in the process add a whole lot of function and utility to what users see on their computer, phone, or tablet screen.
Should YOU Learn Back End Developer Skills?
If you’re new to tech, the description of what front end web developers do (creating the pages that make up websites and mobile apps) might sound more within reach than the arcane back end world of databases and APIs. And there’s a good reason. Front end development is a more natural starting point for beginners than back end development.
Every business from Google to your Grandma’s greeting card side hustle needs a website, meaning that you can start small with front end work (no offense to Grandma) and work your way up to bigger projects as you build your skills.
Back end work is more specialized. Grandma, for instance, doesn’t need you to build an API or write server scripts. She just needs you to build a website that can plug in to a back end infrastructure that’s already been created by the web hosting service she uses. This means back end development doesn’t offer the same kind of “foot in the door” freelancing opportunities for smaller clients that front end does.
Buuut, this doesn’t mean you shouldn’t learn back end skills and at least dip your toe into some back end web development projects eventually—it just means back end skills are a good add-on AFTER you’ve laid a front end foundation.
Whether you ultimately work on front end development projects, back end development projects, or combine both skill sets to be a full stack developer, continuing to learn new skills (and diversifying what you can offer clients) is key to hireability in the tech industry.
What Skills Do Back End Web Developers Need?
Just like front end development, back end development skills are mostly made up of coding languages and software frameworks. Core back end web development skills include:
Python
Surging in popularity right now, Python is today’s belle of the back end ball. Python isn’t back end specific (it’s a general purpose coding language), but it gets a lot of use as a server-side scripting language. When the Python Foundation talks about using Python as a “glue language” for websites and mobile apps, they’re talking about using it to script backend actions, allowing the front and back ends of digital products work in harmony. If you’re looking to add server side or back end skills to your front end repertoire, learning Python is a perfect place to start.
If you’re ready to start learning Python, there’s no better source than the Python Foundation’s Beginner’s Guide. This free tutorial will walk you through the steps it takes to begin working with the language. And when you’re ready to step things up with a paid, instructor-led online class, keep your eyes open for our Skillcrush Python Course launching this Fall!
PHP
PHP, an acronym for PHP: Hypertext Preprocessor (yes, you read that correctly), is another scripting language you’ll often see used in back end web development. PHP is most commonly used to request server content—for example, a PHP script can make your three most recent blog posts appear automatically on your site’s front page. PHP scripts can also use conditional (if/else/endif) statements to change a site’s display and add content from a web server as needed, based on user behavior.
Ruby on Rails
Like Python, Ruby is a general purpose programming language with a simple syntax that’s easy to learn and use. Want to print “hahaha” on a screen? With Ruby that command looks like:
3.times do
print “ha”
end
This simplicity is what makes Ruby a beloved coding language with its fans and users, but Ruby isn’t equipped to work with web applications on its own. Enter Ruby on Rails! Ruby on Rails is a software framework made up of pre-written Ruby code and templates formatted to be used for back end scripting, turning Ruby into a force for back end development.
Ready to learn more about how to use the Ruby programming language with web applications? Take a look at our Skillcrush Web Developer Course. This online class is designed to be completed in just 3 months by spending an hour a day on the materials.
SQL
SQL (tech industry shorthand for Structured Query Language) is an industry standard coding language for communicating with and managing databases. SQL is used to perform common back end tasks like updating data stored on a database, or retrieving that data for a website or mobile app. Big name database systems like Oracle, Sybase, and Microsoft SQL server all use SQL for their database management, making SQL a must learn language for back end development.
Want to get hands on with SQL? Try this free tutorial from Codecademy to learn the basics.
REST/SOAP
No, this isn’t a self-care detour, REST (Representational State Transfer) and SOAP (Simple Object Access Protocol) are two web technologies related to those APIs we mentioned earlier. Again, APIs are software programs that allow different applications on the web to interact and share information with each other, and REST and SOAP are what devs call “API architectures” (in other words, the platforms used to build and manage APIs).
You can read waaay more about the details in this Upwork article, but the TLDR is that both of these API architectures are important to be familiar with if you want to take a deeper dive into back end web development.
How Much Do Back End Developers Make?
With these skills in mind, it’s fair to wonder what the return on investment looks like for back end developers. As of this writing, Indeed lists over 10,000 back end related job postings, with an average salary of $126,216 per year (and senior positions averaging $150,613 per year). This is in comparison to front end developer salaries, which average $54,353 per year ($101,529 for senior positions).
The Takeaway
Obviously there’s quite a jump in average salaries between front end and back end web developer roles. A lot of this has to do with front end roles covering a TON of ground (from mom and pop freelancers to programmers working at Facebook), while the back end web developer jobs are more specialized and have a steeper barrier to entry.
That said, back end web development can be a very lucrative career if you’re willing to put in the time to learn those advanced skills. Our advice? Start with a front end foundation of HTML, CSS, and JavaScript. If you like learning and working with those languages and you build up some experience building front end websites, then consider back end skills as your next step. Remember, you never have to actually stop learning tech skills once you start, and more skills means more options.