Navigating the funhouse that is a web development job board can make anyone question his or her sanity. Where one posting presents a concise list of required skills, another seems to catalog every skill, program, framework, and platform in existence. To further complicate matters, there is still widespread confusion as to what constitutes a specific role. A front-end developer, for example, is often seen as interchangeable with a UI developer, even though the two roles do differ in some respects.
The lack of consensus when it comes to web development roles and skills might have something to do with the industry’s rapid evolution. New technology requires new skills, and new skills call for new roles.
To help distinguish between the different web development roles, Sundeep Pattem and Olivia Zhao, SkilledUp’s resident data scientists, conducted a study of over 28 million online job postings from the period of May 2013 to September 2014. Their findings painted a much clearer picture of the relationship between web development roles and web development skills.
Alternative titles: Front End Web Developer, HTML Developer
A front-end developer specializes in building the front end, or client-side, of a web application, which encompasses everything that a client, or user, sees and interacts with. Front-end development is all about what’s visible to the user. For instance, the interface displaying these very words resides on the front end of SkilledUp’s website.
Pattem and Zhao found that employers tend to look for front-end developers with a strong command of HTML5 and CSS3. As more and more focus is being placed on rich, interactive web applications, the latest incarnations of HTML and CSS are necessary additions to a front-end developer’s toolbox.
Alternative titles: Backend Engineer, Backend Software Developer
A back-end developer is responsible for building and maintaining the back end, or server-side, of a web application, which includes the server, the application, and the database. Back-end development is all about what’s invisible to the user. It’s what happens behind the scenes to display the words you’re reading right now.
According to Pattem and Zhao’s study, employers favor back-end developers with experience in PHP, Python, and SQL. PHP is a server-side scripting language which powers giants like Facebook and Wikipedia, as well as any website built with WordPress or Drupal (hence its popularity with employers). Python is a general-purpose programming language prioritizing, clean, efficient, readable code, and SQL is a special-purpose programming language used to manage databases.
Alternative titles: Full Stack Engineer, Full Stack Software Engineer
A full-stack developer is proficient in all stages of web development, from conception to deployment. There is still some disagreement on the scope of a full-stack developer’s skill set, as well as the degree of proficiency in each skill, but the general consensus is that the ideal full-stack developer is a one man army, ready and willing to melee with any development challenge that crosses their path.
Alternative titles: Web Applications Developer, .NET Web Developer, Web Engineer, PHP Web Developer, Web Programmer, Web Architect
A web developer is an umbrella term that encompasses most of the aforementioned web development roles. It is, however, the most common role by and large, and is simply defined as a programmer who specializes in the development of World Wide Web applications.
Alternative titles: User Interface Developer, UI/UX Developer, Web User Interface Developer, User Interface Design Engineer
A UI Developer is similar to a front-end developer in that she or he uses client-side technologies to build the front end of a website, but differs in that UI developers put more emphasis on a website’s design and aesthetic (typography, iconography, design principles).
[Editor’s note: This is the first article in a 4-part series. Read the next article here.]