Web development is a vibrant and energetic industry, one that remains unparalleled in its experience of rapid, revolutionary change, the constant generation of challenges, promoting raw talent, and open sharing of knowledge within the field. The pace of change and high demand for workers means that unlike most industries, we don’t have an official accreditation body: anyone can claim to be a “web developer”.
In my role as a web development teacher, it’s my job to promote and enforce professional standards, ensuring that those who wish to enter the field exhibit competence and respect for the craft. The web development entries in this blog attempt to express those same standards.
Many people taking their first steps into the discipline are under the impression that web development should be easy, partly because web pages are ubiquitous. “I’m on the web every day. How hard can it be?”
Confusing customization with creation reinforces this impression: if you have a Tumblr blog or Facebook page, you can customize it to a limited degree. But that doesn’t mean you have made the page.
To gain the right perspective, move it to other forms of media:
There are millions of books in print. Does that imply that writing and publishing a book is easy, or that anyone can do it? Or industry: there are millions of cars on the road that have been customized by their drivers. Does that mean that anyone can design and build a car?
Obviously the answer to both questions is no: site creation is very different from familiarity with the web or the ability to customize aspects of a page. This should not discourage you: if you’re interested in developing web content in any capacity you should desire to do the very best job that you can. But it also means having a realistic perspective on the work ahead.
Industry Roles & Specializations
There are four very broad, partially overlapping groups that are part of every web project: web developers and designers, content organizers and creators. Each group features dozens of specialized sub-disciplines.
Web developers deal with the “nuts and bolts” of websites: code and site management. They can be broadly sub-divided into “front-end” developers – people who deal with the web pages and their code directly – and “backend” specialists, those who deal with servers, databases, and associated technologies.
Web designers craft the experience of a site: how a site looks and feels. Again, there are many specializations inside the group.
Content creators or contributors are the writers, designers, photographers and artists who feed their work to websites. Content organizers take this content and localize it to the needs of countries, regions and communities, providing translation, metadata and structure for a site.
To use an analogy from the material world, web designers are architects, developers are builders, and content creators are the residents who turn a house into a home. Content organizers are the specialists who come in and arrange your closet and kitchen for maximum efficiency.
What’s become very obvious over the last two decades of web development is that each of these disciplines must have at least some understanding of the skills of the other groups. A UX designer cannot craft user flow through a site without understanding the basics of how a site is built and the technologies behind it. Developers need to be able to communicate with designers, artists and content management specialists, using language appropriate to each.
This means that “I just want to be a designer!” is not an excuse: you will have to learn at least the basics of code, writing for the web, and content management to fulfill your work. If you want to be the fabled “unicorn designer” you’ll need to show competency in all of them, at least to a certain degree. Not learning the basics of other disciplines weakens sites, creative teams, and ultimately the web itself.
The total number of skills and sub-skills in web development can be overwhelming. A set of core competencies would include:
- Server-side languages and technologies such as PHP
- Writing for the web
- Search Engine Optimization
- Color theory
- Mobile design
- User experience
- Compression, validation and optimization
This is separate from the skills required to run a business if you’re a freelancer, including client communication, negotiation, contracts, invoices, time estimation and management. The topics are so broad that the term “web developer” really doesn’t cover them all, but it’s what we’re stuck with.
Whatever role you ultimately want to work in the industry, the only way to start is to build websites; everything else extends from that.
Because the web development industry is unregulated, “average” incomes are all over the map. In Canada, compensation averages $30 per hour (roughly $50,000 per annum)1, with “Senior” Web Developers (those with 7+ years of professional experience) taking in approximately $90,000 per year throughout North America2. As a broad rule, back-end developers and specialists tend to earn more, content contributors less. Compensation is often correlated to cost of living and city populations: income for web designers is highest in cities like New York, Toronto and Vancouver and lower elsewhere. The increasing tendency for web developers to work remotely skews this data further.
From a personal perspective, I have an interest and investment in all four disciplines of web development: I am a designer, coder, and content creator. I also organize the websites I create. Given the rate of change in the industry, it’s impossible for one person to be a leader in all of these fields simultaneously: most people have a specialization in one or two areas. In my case, that would be web development, and that is the basis from which I started this blog.
Enjoy this piece? I invite you to follow me at twitter.com/dudleystorey to learn more.