What’s the difference between a Web Designer, a Front-End Web Developer, a Back-End Web Developer and the elusive Full-Stack Web Developer? Aren’t they the same roles? Well, yes…and no.

The term web designer is a legacy term that has survived to this day. During the 90’s until the start of the 21st century, websites were made up of tables with sliced up images as background. Due to this a web designers job was more akin to a graphic designer. They would first design websites using Photoshop or Adobe Fireworks and then proceed to slice up the files into different sectors. They then assembled those image slices into tables that formed the layout of the website. Those websites worked but they were slow to load.

Finding a way to load pages faster, table-less layouts started to gain more popularity. Cascading Style Sheets or CSS became more popular in styling websites. A new breed of web designers were born, ones who were more hybrid coder and designer. They would take a Photoshop image designed by the graphic artist/web designer and convert it to HTML and CSS. They became known as Front-End Web Developers.

As the internet became intertwined with people’s daily activities, more complex uses for websites were introduced. E-commerce was born and the need for dynamic database websites was born. The Back-End Web Developer, or Web Developer, was born, one who worked on databases (SQL, MySQL) and server-side scripting languages such as PHP, Perl, Java, Python, Ruby on Rails.

The Full-Stack Web Developer, the elusive unicorn, is a web programmer who is able to create great designs in Photoshop, convert them to HTML and CSS, then happily connect the front-end user interface to the database using server-side scripting languages, and for good measure tweak server configuration files on their way out. Their existence can be gleaned from reading job boards and classified ads. Company head hunters are always on the look out for them.