Web developers build and maintain websites and web applications. Although their work usually focuses solely on the underlying software and databases (known as the 'back end'), some web developers work on the interface and visual design (the 'front end'), while others combine both ('full-stack development').
Job titles vary according to the focus of the role.
In an agency or as a freelancer, a web developer's job is to create products that meet clients' needs. The work can be particularly varied with many projects to work on simultaneously and lots of meetings with clients to discuss their requirements and update them on progress.
In all cases a web developer's primary task is creating reliable and high performing applications and services, which can be accessed over the internet.
The day-to-day work of a web developer varies depending on whether they work mainly for clients or in-house for an organisation, but most roles include:
- planning and prototyping new applications;
- designing the architecture of the components of an application;
- deciding on the best technologies and languages for the project;
- testing sites and applications in different browsers and environments;
- problem solving;
- fixing bugs in existing projects;
- testing new features thoroughly to ensure they perform the correct task in all cases;
- running performance benchmarking tests;
- reviewing colleagues' code;
- building and testing Application Program Interfaces (APIs) for applications to exchange data;
- researching, incorporating and contributing to Open Source projects;
- meeting designers, developers and project staff for progress updates;
- gathering requirements from clients and users;
- learning and testing new technologies, frameworks and languages;
- staying up to date with new trends and advancements in web development;
- building and maintaining databases;
- refactoring and optimising existing code;
- documenting code so other developers can understand and contribute to it;
- attending and speaking at web development conferences and workshops;
- designing information architecture within an application or website.
- Salaries for junior or entry-level web developers vary and can range from £19,000 to £25,000.
- Mid-level and senior web developers usually earn between £25,000 and £35,000.
- Lead developers typically earn between £35,000 and £50,000.
Salary size will also depend on the type of company and its location. For example, salaries are usually higher in London and when employed by a large company. However, progression to a senior or lead developer may be faster within a small company.
Specialising in newer or more sought after technologies can lead to higher salaries.
Income figures are intended as a guide only.
Web developers typically work normal office hours (9am to 5pm, Monday to Friday). However, those working for agencies may be expected to work longer or irregular hours to meet deadlines, or to work on projects for clients in different time zones.
What to expect
- Remote work and self-employment are common as the only equipment needed is a good quality computer and internet connection. Companies may advertise for web developers on a completely remote basis.
- Women are currently under-represented in the IT industry as a whole (e-skills UK, 2014) but the issue is being addressed by the sector. Organisations such as Code First: Girls, Women in Technology, Rails Girls, Ladies who Code and GeekGirlMeetup have been set up to provide communities, vacancies and educational tools for women wanting to work in web development and IT.
- There is currently a skills shortage for programming and development roles so opportunities are good for those with the right combination of skills. In 2014, web development accounted for around a third of all IT vacancies (Tech Cities Job Watch, 2014).
- In the UK, most office-based web development roles are in cities. London and Manchester were the top two cities for web development vacancies in 2014 (Tech Cities Job Watch, 2014).
- Dress code is usually informal except when meeting clients when it's normal to dress smartly.
- A small amount of travel is common in client-focused roles to meet clients over the course of a project. There will usually be opportunities to travel to conferences and workshops.
There is no formal qualification needed to become a web developer in the UK, though some employers will prefer applicants to have a technical degree. Relevant degrees include:
- computer science;
- software engineering;
- web design and development.
Knowledge and experience are usually the most important requirements. A relevant degree can provide you with demonstrable knowledge, particularly the fundamental principles of programming and application design.
Although employers occasionally look for a postgraduate qualification, this is unusual and generally only applies to senior positions. Search for postgraduate courses.
Other options include short university courses on specific topics like developing web applications in PHP and MySQL, and HNDs in more general subjects like computer science.
Private training providers who specialise in programming and web development offer courses online, in a classroom setting, or in one-day or weekend boot camps.
Employers usually don't mind how you gained your skills and knowledge, so long as you can demonstrate them and talk about the technical requirements of the job confidently at interview.
Web developers need to demonstrate a range of technical knowledge in areas such as client-side components, server-side languages, web application frameworks and database management systems, as well as experience with version control systems, and a thorough understanding of the architecture of web applications and web security and encryption.
You will need to have:
- attention to detail;
- logical approach to problem solving;
- ability to work independently and in mixed teams;
- experience of development methodologies (like agile and waterfall);
- ability to manage a complex range of tasks and meet deadlines;
- good communication skills.
Some degrees include a year in industry or placement, which is a great way to get experience of web development in a professional environment. Otherwise, you can gain experience through volunteering and building your own sites and applications.
You may also find opportunities to develop websites and applications within your network of friends and family. Interning as a web developer part time or during a vacation can be another way of getting experience.
Other ways to get experience include:
- joining a web development or coding society at university;
- getting involved in your university's entrepreneurship services or societies, as they often provide coding workshops and events;
- attending 'hackathons', conferences and workshops;
- attending meet-ups for different programming languages and interest groups;
- contributing to open source software.
Keep a record of all your experience as many professional web developers, especially freelancers, have a portfolio of their work. Use code repositories such as GitHub and Bitbucket to demonstrate what you can do.
Some vacancies, usually graduate schemes and entry-level positions, don't require any experience. You are trained as part of the job in the specific languages and technologies used by the organisation. Starting salaries for these roles are generally lower than other web development positions.
It is particularly important for freelancers to have a portfolio of work and testimonies when starting out. Volunteering and making the most of your networks are useful ways of building a portfolio in the early stages of a freelance career.
Almost all organisations require web development work at some point. If the work is needed on a regular basis then an organisation may hire in-house web developers, otherwise they will probably use a web development agency or freelancer.
Agencies are therefore a rich source of vacancies for web developers.
If you are more interested in working as a web developer for a particular employer or in a certain sector, then look for jobs in the same place as the organisation or industry advertises, so for example specialist press/journals.
The projects you work on in an agency are usually more varied than working as an in-house web developer. However, some web development agencies specialise in particular sectors or have long-standing relationships with a single large client, so don't assume that client work will always be varied; it's important to research an organisation before you submit an application.
If you want control over the projects you work on then becoming self-employed or freelance is an option. While your work can be more varied and interesting than being employed by an agency or in-house, it is also typically more unpredictable and can result in an unsteady income.
Freelancers have full responsibility for sourcing and completing their work and so it can be more challenging to keep a healthy work/life balance.
Look for job vacancies at:
- Freelancers.net - for freelance positions
- Hire My Friend - for freelance positions
- Smashing Jobs - international tech job site
- Stack Overflow Jobs - international tech job site
- Tech City Jobs
- Unicorn Hunt
- Women in Technology
- National press.
- University careers service vacancy websites
Web developers in agencies and technical organisations, especially in the early stages of their careers, receive the majority of their training from more experienced developers.
In small organisations or as part of non-technical teams, you will usually need to dedicate time to independent research and self-led learning. Most of the learning materials necessary to build web development knowledge can be found on the internet, usually for free, and some web developers consider themselves completely self-taught.
Web developers can also receive training and keep up to date with changes to the sector by attending conferences, workshops, 'training camps' and meet-ups. There are events for almost every web development language, framework and technology, and most employers encourage you to attend relevant events.
More formal professional qualifications can be obtained from the BCS (The Chartered Institute for IT), including certifications in:
- agile development;
- information security;
- software testing;
- solution development and architecture;
- IT management.
Employers may expect you to become professionally certified in any relevant technologies they use. For example, they may fund an Oracle certification for staff working with Oracle databases or a Microsoft certification for those building web applications in .NET.
Depending on your career path, employers may offer in-house or external management, business and systems analysis, and project management training.
Web developers in agencies and tech organisations usually start their careers as junior or entry-level developers before progressing to senior or mid-level developers after around five years.
In an agency this usually means meeting more clients, leading client meetings and working on more important projects. Senior developers might also manage one or two junior developers.
After ten or more years the next step is to lead developer, technical lead or head of development. This generally involves managing a team of web developers and contributing to the organisation's technical strategy and goals. You will usually see the amount of coding work decrease.
The next step can be to a senior or even board-level position, for example chief technical officer (CTO) or technology vice president.
Some organisations hire very experienced and reputable web developers, known as 'evangelists', who promote and train people in the use of a new technology or systems developed by the organisation.
In non-technical or very small organisations, there may not be distinct grade bands to progress through. However, your knowledge and skill will increase over time and should be rewarded with more responsibility and pay increases.
Some web developers choose to change careers and move away from hands-on development work into a more strategic technical role like systems analyst, business analyst, solutions architect or technology consultant. These roles require good project management, communication and strategic-thinking skills.
Over time, web developers usually broaden their programming knowledge but establish themselves as an expert in one or two languages and/or technologies. You need to stay up to date with the world of web development, test out new advancements and integrate them, if appropriate, into the organisation.
You can help advance your career by proactively learning new languages, helping out with other projects, leading on new projects, training and supervising new staff and attending client meetings.
Career progression may be faster within a small organisation; you will inevitably need to take on increased responsibility more often. However, progression is likely to be less predictable and structured.