Who is a full stack developer?
A good full stack developer is like one of those celebrities who can do it all. They can act, sing, be a DJ, host a show, even direct, and produce! They may not have won an Oscar or a Grammy, nevertheless, they have a breadth of experience.
They are capable of developing full-fledged applications (Web, mobile, or desktop). They understand both front-end and back-end and know their way around servers, databases, APIs, MVC, and hosting environments among others.
A good full stack developer is always in demand. There are over 10,000 open positions available on Indeed alone. However, they may not be the best option in all cases.
When to hire a full stack developer?
The demand for a full stack engineer is often driven by the requirements of the role. Hiring a full stack developer is a good idea in the following instances:
When you need an MVP
When your operation is lean and the company’s aim is to validate ideas by building a minimum viable product, then full stack developers are your best bet. If there is an ideal role for a full stack developer, it would be to take an idea or feature and turn into a fully-functional prototype.
When you need Product Managers
Full stack developers can make excellent product managers. They understand the business requirements and, at the same time, they are aware of the engineering capabilities. When decisions have to be made by taking all the parameters into account, they are an extremely valuable resource.
When cost is constraint
When you cannot afford to hire a specialist for each layer of the development process, full stack developers are your saviors. That being said, good full stack developers don’t come cheap. Nevertheless, instead of spending $70,000 for a front-end, back-end, and network engineer each, it is better to opt for one $100,000 full stack developer.
When you need a CTO/Co-founder
“I have an idea for a brilliant app, but I just need someone to build it”. This is a common infuriating phrase that developers often hear. When you are looking for a CTO or co-founder for a truly symbiotic relationship that involves combining their technical expertise with a shared vision for the business, full stack developers can make great CTOs or co-founders.
When not to hire?
Do not hire a full stack developer, when you cannot see a clear value add.
For example, a full stack engineer can be a valuable asset when you are trying to optimize your application for 20,000 users. However, when you have reached a scale where you have millions of active users every day, you will definitely need a specialist or a team for each layer such as a data and infrastructure team. In such cases, a full stack developer will not add as much value as a specialist will.
How to hire a full stack developer?
When hiring a full stack developer, you should look for certain qualities and technical skills.
Qualities of a full stack developer
With reference to qualities, look for someone who:
- Is interested and passionate about learning new things
- Understands not only the stacks but also different technologies
- Can point you in the right direction for a solution even if they cannot solve it
- Is aware of the latest trends and developments
- Can see the big picture, vision of the business, and understands the customer’s requirements
Technical skills to look for in a full stack developer
They should have the knowledge and skills across all the layers. For example, if you are hiring a full stack developer for a web application, then these are ideally the technical skills that you should look for:
- Programming languages (back end)
- Version control
- Deployment and hosting
- Third-party APIs/services
Things to look for in a resume
Reduce the dependency on a resume as much a possible. When it comes to technical skills, resumes are usually not a true indicator of the technical skills of a developer. The role of a resume ends with the sourcing of candidates. While scanning a resume don’t just look for relevant experience.
Also look for other indicators of a good programmer such as contribution to open source, exposure to various technologies and previous projects. If you have an alternative mechanism for sourcing candidates like sourcing from Github, it is much better.
This is the most crucial step of your hiring process. The mechanism by which you assess the candidates determine the quality of the hire.
Conducting a generic algorithmic test as a mechanism for assessing a full stack developer is a total waste of your time.
Instead give them real life problem, which will allow you assess the technical skills and knowledge across all stacks. Here is a sample problem that would give a better idea on how to use a real life business problem for technical assessment.
Things to assess in the interview
Once you have a handful of candidates who you know to be technically qualified for the job, look for these two things in the interview:
- Ability to deal with uncertainty
- Interest and passion for learning
Apart from gauging their technical skills, give the candidates a problem that they are not familiar with. Don’t just look for a successful output, also look for candidates who are ready to try irrespective of the outcome.
So when you hire your next full stack developer, ensure that you:
- Look for inherent qualities
- Make technical assessment mandatory
- Choose an appropriate mechanism to assessing the technical skills