Front-end developers play a massive role in the success of your website. First impressions are everything and—especially when discussing eCommerce—your site needs to be something your audience will want to come back to. This goes far beyond aesthetics: functionality, speed, and accessibility are all key concerns, and you’ll supercharge your business by ensuring your site is as polished as possible.
The quality of this first impression is dictated by the skill of your front-end developer, so hiring the right person is absolutely crucial in getting the result you want.
Levels of experience: Front-End Developers
Firstly, let’s divide our developers into three experience categories: junior, intermediate, and senior. Depending on the size of your business, the technical expertise your project requires and the soft skills you value, you’re likely to have a certain level of developer already in mind. It’s important you make the right choice, as it stops you from either overpaying or hiring a cheaper developer that ends up being unsatisfactory—saving upfront on complex projects ends up costing more, in the end, to get everything fixed. To help you make a decision, I’ll provide a more detailed description of what you’d expect from different levels of a front-end developer.
Junior (0-1 years of experience)
Junior front-end developers are limited in what they can do. They’re usually well-versed in one or two languages or frameworks. Hiring a junior developer is viable if your tasks lie within the bounds of their skillset, but if aspects of your project are outside of their capabilities then look for a more experienced developer. Junior developers usually don’t know what they don’t know, and that’s fine but it needs to be a consideration when hiring. Is this project within the scope of their skill? Do you have people who can mentor them? Senior developers help juniors devs, well … become senior devs.
Intermediate (1-4 years of experience)
At this stage, a developer can safely think for themselves. They don’t know everything about best-practice yet, but they’re able to learn and upskill themselves independently. Intermediate front-end developers will have a broader range of technologies they’ve worked with, yet may only be up to date with a few. If their sharpest skills align with your requirements, that’s perfect! If not, you need to gauge their experience with other areas and gather how long it will be before they’re confident with alternative technology. We sometimes talk about the ‘reverse T’ in terms of developer competency—most intermediate devs will be highly skilled with a handful of connected languages, then have a broader and weaker understanding of a host of others.
Senior (5+ years of experience)
Senior developers are the best at mixing technical skills with business goals, purpose, and branding. They understand that there are multiple ways of achieving a task and can present you with all of them, singling out those that suit your business the best. Senior developers can offer foresight and excellent strategic planning.
Another reason why many prefer hiring a senior is the corresponding development of their communication and soft skills. This is often as much a function of age as job experience. They keep clients updated about project progress and have an appreciation for mutual uptime when working remotely or dealing with distributed teams. Communication skills have an influence on task accuracy and therefore time efficiency. Senior developers appreciate the importance of a comfortable and productive working relationship, especially when agreeing on a long term contract.
The Team (mixed experience)
The other option is—rather than hiring individuals inhouse—to give the project to a dedicated external team. Especially if you’re a startup exploring new space, it might be better to test the waters before diving in and trying to pick out the best developers yourself. Outsourcing is common for a reason: it’s affordable and effective. Teams in this space will consist of junior, intermediate, and senior developers—you can be fairly confident that there’s some real experience in any big team. It’s important to vet these companies yourself, but they’re an option for those managers who want to take a different path.
What Should You Expect From a Front-End Developer?
If you’re unfamiliar with all the things you should expect and employ a front-end developer to take care of, read the following:
- Understands structure and design.
- Makes certain that design decisions are UX-driven.
- Improves UX through feature development.
- Maintains a balance between programming functionality and design aesthetic.
- Writes code that future developers can understand
- Knows that web speed optimization is critical, and writes fast-loading code
- Creates comfortable and efficient site scalability.
- Designs for compatibility with a wide range of devices and screens
- Always considers the company mission when making decisions.
Requirements and Qualifications of a Front-End Developer
- Thorough understanding of modern design principles like Atomic Design.
- Experience with design applications (Illustrator/PS/InDesign).
- Understanding of responsive web design.
- Up to date with current SEO best practice.
- An appreciation for problem-solving.
- Excellent communication skills.
- Degree in computer science or relevant field.
In-House VS Outsourcing
Below I will compare the two most common hiring options for front-end development. This will give you greater clarity as to what type of hiring best suits your project, going beyond just technical requirements.
You’re a software or web design company. You’re either fairly established, or you’re new but with ties to the local development community. You’ve got some solid capital behind you—enough to bring on a full-time developer; they don’t come cheap, even the junior ones. What you get out of this is that they work for you—they are dedicated to your mission, they spend their days amongst the rest of your team. You can hire them to clients and take a cut. You have better options for negotiating around any patents that might arise.
Assuming you’re somewhere in the West, an in-house junior developer is probably going to cost between $30,000-$65,000 USD/year, going to about double that for a senior developer.
The question to ask is this: am I a development company, or am I a company that just needs a developer? If it’s the former, you want to hire in-house. A great place to put job ads is Stack Overflow—it’s one of the largest developer communities on the internet, and is a regular first-place dev check when looking for work. If it’s the latter? Well:
You’re not a development company, but you need some development done and the IT guy isn’t cutting it. This tends to be cheaper than hiring in-house and will usually net you a larger team. There’s also a degree of removal that can be difficult to bridge—they tend to be off-site, and they’re usually working with other clients as well as you.
Pulling from the more popular outsourcing areas like India or China, a full year’s work (9-5, five days a week, no breaks or holidays) at average Indian rates go from $20,000-$35,000 depending on skill. Start throwing short fixed-term contracts and the like into it, and it ends up being significantly cheaper.
Again, ask: am I a development company, or am I a company that needs developers?
If you just want somebody to build and run a website, then it’s probably better to outsource. If you want a single app made (say, you’re a pizza company who wants a custom delivery app), you should outsource. If you’re not doing full-time development, then you probably don’t need a full-time developer. Do you want to get that pizza app made? It’s better to outsource to a web app developer like CodeClouds and save yourself time and money.
The Last Word
It’s hard to definitively say who the right developer is for you since your needs are going to be different from the needs of the next manager over. The key is knowing your options, and knowing what your dream dev CV looks like—are you looking to train up new JS developers? Looking to launch a startup with a senior data engineer? Looking to build an app that helps you sell pizza? All of these jobs are going to need a different sort of developer. Fingers crossed, you can find the right one for you.