What is the difference between a web designer and a web developer? In the early days of the web, the answer to that question was simple: designers design and developers code. Today that question requires a little more nuance—you'd be hard pressed to find a web designer who didn't know at least a little HTML and CSS, and you won't have to look far for a front-end web developer who can whip up a storyboard. If you're strictly speaking about the general concepts of web design vs. web development, however, the distinction is a little more clear. Let's take a look at these two concepts and the roles they play in building the functioning websites and apps we know and love.
What is web design?
Web design governs everything involved with the visual aesthetics and usability of a website—color scheme, layout, information flow, and everything else related to the visual aspects of the UI/UX (user interface and user experience). Some common skills and tools that distinguish the web designer from the web developer are:
- Adobe Creative Suite (e.g., Photoshop, Illustrator) or other design software
- Graphic design
- UI design
- UX design
- Logo design
- Placing call-to-action buttons
- Wireframes, mock-ups, and storyboards
- Color palettes
Web design is concerned with what the user actually sees on their computer screen or mobile device, and less so about the mechanisms beneath the surface that make it all work. Through the use of color, images, typography and layout, they bring a digital experience to life.
Browse Project Catalog for more web design & web development services.
What is web development?
Web development governs all the code that makes a website tick. It can be split into two categories—front-end and back-end. The front-end or client-side of an application is the code responsible for determining how the website will actually display the designs mocked up by a designer. The back-end or server-side of an application is responsible for managing data within the database and serving that data to the front-end to be displayed. As you may have guessed, it’s the front-end developer’s job that tends to share the most overlap with the web designer. Some common skills and tools traditionally viewed as unique to the front-end developer are listed below:
- CSS preprocessors (i.e., LESS or Sass)
- Frameworks (i.e., AngularJS, ReactJS, Ember)
- Web template design
- Libraries (i.e., jQuery)
- Git and GitHub
- On-site search engine optimization (SEO)
Front-end web developers don’t usually create mock-ups, select typography, or pick color palettes—these are usually provided by the designer. It’s the developer’s job to bring those mock-ups to life. That said, understanding what the designer wants requires some knowledge of best practices in UI/UX design so that the developer is able to choose the right technology to deliver the desired look and feel and experience in the final product.
Back-end developers handle the business logic and data management on the back-end of an application. They write the APIs and routing that allow data to flow between the front and back end of an application. Programming languages and tools unique to back-end developers are listed below:
- Server-side programming languages (e.g., PHP, Python, Java, C#)
- Server-side web development frameworks (e.g., Ruby on Rails, Symfony, .NET)
- Database management systems (e.g., MySQL, MongoDB, PostgreSQL)
- RESTful APIs
- Authentication and security (e.g., OAuth, PassportJS)
- Servers (e.g., Linux, Apache, Express)
Web developers who possess a working knowledge across the frontend and backend of a technology stack are called full-stack developers.
Web designers vs. web developers—major differences at a glance
Now that we’ve established that web design and web development are two distinct disciplines, let’s take a look at the major differences between web designers and web developers.
Most web designers do not code
Web designers are responsible for the general look and feel of a website. They might use a visual editor like Photoshop to create images or an app prototyping and animation tool such as InVision Studio to design layouts and generate high-fidelity mockups. But none of these main responsibilities require coding.
Beyond their traditional role as visual designers, the proliferation of content management systems (CMS) such as WordPress and no-code website builders like Wix mean there are web designers who can apply their visual talents to building your website without having to know how to code.
Web developers do not create assets
Web developers are generally more expensive than web designers
The cost of hiring a web developer tends to be higher than the cost of hiring a web designer. According to ZipRecruiter, the average rate of web developers is $36/hr while the average rate of web designers is $29/hour. The primary reason for this discrepancy is likely supply and demand—there are more designers than developers, and coding in general is a highly sought after skill. As coding becomes more ubiquitous among the talent pool the discrepancy between rates decreases. When it comes to expertise, whether hiring developers or designers you are paying for experience.
Combining the skills of a web dev and web designer—the unicorn
What started out as a joke in the industry—the designer/developer hybrid who can do it all—is now a viable endgame for both web designers and front-end developers, thanks to the increase in the availability of educational resources across the web.
Those developers/designers who have a good grasp of skills across both sides of the spectrum are highly sought after in the industry. The "unicorn" can take your project from the conceptual stage of visual mock-ups and storyboards, and carry it through front-end development all by themselves.
Not that you'd want them to; the real value of developers who design and designers who develop are their ability to speak each other's languages. This leads not only to better communication on the team and a smoother workflow, it means you'll land on the best solution possible.
As a general rule, feel free to rely on the "unicorn" for small projects, where it’s feasible for one or two people to handle both the back and front-ends of an application. For larger projects, even if you do manage to hire a few "unicorns," more clearly defined roles are required.