Backend development (also stylized as back-end or back end development) is the skill that powers the web. Yet it does it modestly, without fanfare—allowing people to browse their favorite sites without even knowing about all the work put in by the backend developer or team.
So to help dispel this mystery…what is backend development? How does it work?
In this special guest post, Krystal Tolani from GoSkills writes about the various types of backend languages, what you can do with them as a backend developer, companies that use them, and (the money question!) what salaries you can earn by specializing in certain backend skills.
Disclosure: I’m a proud affiliate for some of the resources mentioned in this article. If you buy a product through my links on this page, I may get a small commission for referring you. Thanks!
Backend development languages handle the ‘behind-the-scenes’ functionality of web applications. It’s code that connects the web to a database, manages user connections, and powers the web application itself. Backend development works in tandem with the front end to deliver the final product to the end user.
Types of Backend Development Languages
Backend programming can either be Object Oriented (OOP) or Functional.
The former is the technique that focuses on the creation of objects. With object-oriented programming, statements should be executed in a particular order. Popular OOP languages are Java, .NET, and Python,
The latter is a technique that is more “action”-based. Functional programming uses declarative language, which means that statements can be executed in any order. It’s commonly used for data science, and popular languages are SQL, F#, and R.
Languages can either be statically typed or dynamically typed. The former is more rigid, but better at catching errors, whereas the latter is more flexible but allows for variables to change types (which could account for unexpected errors). This article by Hacker Noon goes into greater detail if you’re interested in finding out more.
Start coding now
Stop waiting and start learning! Get my 10 tips on teaching yourself how to code.
Backend Programming Languages
Now, let's take a look at some specific backend development languages and what they're used for.
Java is the world’s most popular programming language—and for good reason. Not only is Java extremely versatile (its use spans from smartphones to smart cards); it has also been used by developers for over 20 years.
What makes Java so versatile is the Java Virtual Machine (JVM). With many development languages, compiling a program creates a code that may run differently if the computers its run on are different. This is not an issue for Java because of the JVM. The Java Virtual Machine acts like a middle layer that can run code on any computer, regardless of where the said code was compiled.
While Java is extremely popular with desktop and business software developers, it is less beginner-friendly than a language like Python. This is because it’s verbose and requires more code to build out features; as a result, it’s less rewarding to those just starting out.
That said, Java’s longstanding popularity and varied use mean that its community is large. Consequently, any questions you may have about the language will likely have forum threads and online tutorials dedicated to answering it.
What you can do with Java
(Android) mobile application development, website development, database connectivity, image processing, GUI based programs, networking, and more.
Companies that use Java
Airbnb, Uber, Pinterest, LinkedIn, Groupon, eBay, Evernote, FitBit, Hubspot, and more.
As of October 2018, Java developers made an average of $93,570/year in the US with salaries ranging from $63k to $127k.
Since PHP is dynamically typed, It means you’re able to come up with a variety of solutions and workarounds for one problem. It also means that the same bit of code can mean something different depending on the context, which makes programs written in PHP tricky to scale and sometimes slow to run.
PHP is a great language to learn for those who are just starting out for a number of reasons:
- It’s more forgiving of errors, which means that you’re able to compile and run a program until you reach a problematic part.
- There is an abundance of resources dedicated to the language as a result of the large community and tool support. The language undergoes updates, so ensure you’re learning from an up-to-date tutorial.
- The setup is relatively easy compared to a language like Ruby on Rails. You can download MAMP (for Macs) or WAMP (for Windows) and you should be ready to go in 5 minutes.
What you can do with PHP
According to the PHP website, you can: collect form data, generate dynamic page content, send and receive cookies, write command line scripting, write server-side scripting, and write desktop applications.
Companies that use PHP
Facebook, Lyft, Mint, Hootsuite, Viber, Buffer, DocuSign, and more.
As of October 2018, PHP developers made an average of $89,774/year in the US, with salaries ranging from $78k to $120k.
.NET (C#, VB)
ASP.NET is Microsoft’s answer to Sun Microsystem’s (now, Oracle) Java. The web application framework is used to build websites using languages like Visual Basic (VB), C#, F#, and more.
Its MVC (Model-View-Controller) architectural pattern allows backend duties to be handled by a controller, which interacts with a model to process data. The result is then presented to the view for display as a frontend web page.
Made open source in 2016, .NET can integrate with iOS, Linux, and Android by way of .NET Core. The code is highly stable and reliable, making it a popular choice for businesses. Because it is a Microsoft product, there is great support available if you ever get lost.
C# is a high-level computer language, which means it allows developers to write programs that are independent of a particular type of computer. Languages like these write and read more like human languages rather than machine languages.
C# is popular among developers because it has the power of C++ (another backend language) but is easier to use because it error-proofs commands that tend to trip up C++ users.
Programmers on Stack Overflow have praised the language for its “cool syntax.”
VB is a programming language that uses a graphical user interface (GUI) to modify code written in the BASIC programming language. It’s an easy language to start with because of its straightforward syntax and its widespread use. As a result, it’s often used for prototyping.
The drawback of coding with VB is the large amount of memory required to install and run GUI-based development tools.
What you can do with .NET
Build desktop applications, mobile applications, web applications, and games, work with Big Data, and more.
Companies that use .NET
Microsoft, Starbucks, Docplanner, Stack Overflow, and more.
As of October 2018, .NET developers made an average of $90,732/year in the US, with salaries ranging from $82k to $144k.
Ruby on Rails (or Ruby) is a web development language built on top of the Ruby programming language. Ruby on Rails has a set of tools that allow you to simply create basic tasks (e.g. you’re able to create a basic blog with one line of code).
Ruby involves little backend work, enabling developers to create and launch applications quickly. It is similar to Python in that it’s fantastic for prototyping. Ruby grew in popularity in the early 2000s as a result but has declined since then.
Ruby is open source, which means it can be modified and built upon.
What you can do with Ruby
Automate repetitive tasks, build web applications and mobile applications and games, create prototypes, and more.
Companies that use Ruby
Airbnb, Codecademy, TaskRabbit, Kickstarter, RapGenius, Scribd, AngelList, and more.
As of October 2018, Ruby developers made an average of $89,774/year in the US, with salaries ranging from $78k to $120k.
Start coding now
Stop waiting and start learning! Get my 10 tips on teaching yourself how to code.
There’s a reason Python is the fastest-growing programming language. The versatile language is used for both web and desktop development. Like with Java, there are plenty of tutorials and guides online, making it an accessible language for those just starting out.
Furthermore, its syntax is simple and easy to understand in relation to other languages. Those who program with Python have lauded it for its “elegant,” “readable,” and “beautiful” code on Stack Overflow.
As mentioned above, Ruby and Python share similarities. They are both dynamically typed, open source, and object-oriented languages. The key differences between the two are the differences in popularity (Ruby is declining whereas Python is skyrocketing) and the tools in Ruby’s language.
What you can do with Python
Companies that use Python
Uber, Pinterest, Mozilla, Spotify, Quora, Pandora, Netflix, Asana, and more.
As of October 2018, Python developers made an average of $92,000/year in the US, with salaries ranging from $40k to $137k.
Structured Query Language or SQL (pronounced ‘sequel’) is the most common query language. SQL is used to interact with databases.
SQL is great for beginners to learn since it’s a declarative language. A declarative language allows coders to ‘declare’ the results they would like to see, without specifying the steps or process for said result.
A query language like SQL is great for those who want to take advantage of the wealth of knowledge stored in databases.
What you can do with SQL
Access, manipulate, and create databases.
Those who work closely with data can benefit from learning SQL. This includes financial analysts, data-driven marketers, or online entrepreneurs. SQL is an ideal stepping stone for those who want to dive into the world of Big Data. For some inspiration, here is a list of jobs that use SQL the most.
Companies that use SQL
Since SQL is a query language, its use is broad and widespread. If a company or enterprise has a database, it is extremely probable that they are using SQL to query it.
As of October 2018, SQL developers made an average of $98,313/year in the US, with salaries ranging from $92k to $148k.
It’s a great language for beginners because it is a higher-level language and there is little setup involved (you can start coding in your browser).
Because the language is so flexible, objects created in this language are slow. It is also difficult to maintain and scale, as with most dynamically typed languages.
Having said that, the language is ubiquitous, which means the community is large—affording you a slew of resources and plenty of opportunities for employment.
Build websites, mobile and desktop applications, games, web servers, presentations, and more.
Airbnb, Codecademy, HotelTonight, eBay, Square, Asana, and more.
In this overview, I hope you were able to get a clearer picture of backend development and the capabilities of each language included. This is by no means an exhaustive list of the languages that are out there. If you’re interested in learning more, Learn to Code With Me and GoSkills have easy-to-understand resources to guide you further.
If you are considering pursuing a career in development, I would highly recommend taking a look at the job descriptions of the roles you’re interested in and make a note of the languages that appear the most.
Don’t let the industry jargon scare you. Remember that an expert at anything was once a beginner too.
About the Author
Krystal does all things Marketing at GoSkills. When she's not at work, you can find her listening to podcasts or watching comedy specials on Netflix.
GoSkills is an online learning platform that helps anyone learn business skills to reach their personal and professional goals.