You’ve heard a lot about this new breed of full-stack web developers. Lots of appraising chatter about “all-in-one” programmers, though many concerns as well. Some top tech companies like Facebook are betting on and hiring them. Others are still hesitant and careful with new trendy things, and that is understandable. So the question arises: how do you hire full stack developer and why would you? Who is full stack developer, what does he do?
Here, we would like to provide you some information in a structured way concerning full stackers. And some room for thought, as well. Firstly, we should say that times, when a developer (a programmer, a coder, a software engineer) had to operate in a single language, are over. Things were simpler a decade ago, not mentioning the earlier times. Anyone working in the web now has to use a lot of tools and know a lot of specific processes. And we mean a lot! The industry is dynamic, numerous new frameworks and additional services emerge all the time.
So, when you want to hire full stack developer, it’s probably appropriate to start with what kind of full stack developer a person is? Or claims to be. Because a decade or so ago knowing Python, PHP and some HTML would be enough to call yourself a full stack dev. But not anymore. Today it involves more areas and more technologies to be able to work with. Below, we will be exploring who is a full stack developer today, what are the benefits of hiring one, tips to hire full stack developer and issues that go along.
What is a full stack developer
In layman’s terms, a full stack web developer is a coder who can work with both front-end and back-end technologies. As you know, when you build a site or any web application, you get different layers to it. There is a business logic, a way of presenting it, database and overall infrastructure to it. A real full stack developer should be able to deal with all those tasks. Of course, no developer is going to have a perfect mastery of all tools.
Three tiers of web development are:
- Presentation. Or front-end, as usually referred to within the context of full stack. This is the user interface, this is how your website looks and what you see on the screen.
- Business logic. Or back-end system, which is for data/content processing. It includes web servers, use of coding languages, frameworks, etc.
- Database. Data storage for a website, data indexing, queries, and generally connecting to a site through an API.
If you want to hire full stack developer this, this is a basic construct you have to know. A full stack developer is the one who apprehends the whole web development process and can weigh in on any stage or tier. As a side note, this kind of web developer could be very useful to startups. New businesses are not necessarily aware of all intricacies, so an expert guidance could mean a lot.
Another way of investigating a full stack developer skills is a simple diagram. It would include 5 to 6 main areas of expertise, and a person should just assign points or percent of his/her knowledge there. A full stack developer diagram would look something like this:
What does a full stack developer do
In web development, there are frontend and backend developers, as a rule. Those who build interfaces and those who build software engines behind it. And a full stack developer can basically do it all. From databases, front-end (client side) to server-side scripts. Such kind of developer can code and can even design to some extent, as well as oversee all project details.
Full stackers usually have responsibilities like:
- Code programs and applications
- Coordinate other developers and team members
- Troubleshoot issues
- Outline testing techniques for web apps
- Manage web development
Ophelia Pastrana from Platzi explains all concerns nicely in this short video:
Now, let’s move on to how to hire full stack developer part.
How to hire full stack developer
To this day still, most of web developers are experts in one stack layer (area). Though being in minority, full stack developers exist. These guys like trying out every new technology, and always eager to know more. They can code and manage the whole stack. So, kind of technological geniuses, one may say.
The nature of a highest ranking web developer revealed. ...
One can call him/herself a full stack dev once he’s been working in several languages, frameworks and platforms. One should be able to piece together various technologies depending on a specific project. Whether you need such a highly skilled software engineer or one with one specialty, is up to your vision and business approach.
How to hire full stack developer, where to find one, what skills should he have, pros and cons of hiring a full stack developer – check the following sections.
Where to find full stack developers
You can start with these places to hire freelance full stack developers:
- Upwork, top full stack developers
- Toptal freelance full stack developers
- Indeed, full stack developer jobs
- LinkedIn full stack developers
- StartupHire, full stack developer candidates
- 50 female full stackers in New-York
- Meetup full stack engineers
- StackOverflow developer jobs
For example, Toptal carefully selects developers to recommend, because it works with top companies like JP Morgan, HP, Pfizer. In their “Best freelance full stack developers” category Toptal nominates only eleven coders. And all of them provide detailed info on skills, years of experience and preferred environment. Like Carlos here, who does not mind a little promotion, we hope 🙂
Skills to check
Needless to say, a degree in computer science, years of experience in software and app development and multiple languages are a must to hire full stack developer. On a personal level, a person should be capable of teamwork, direct other programmers’ tasks and offer the vision for a final product. A serious candidate should also have a diverse experience on the resume.
To overcome skepticism from your HR department or your boss, a candidate has to prove his knowledge in the following areas.
|Back-end||API development/design, .NET, PHP, Python, Ruby, Node.js, Express.js, Apache, Nginx, etc.|
|Database||SQL, Redis, JSON, XML, MySQL, MongoDB, PostgreSQL, Oracle, Cassandra, etc.|
|System/Infrastructure||Linux, Amazon services (AWS), load balancing, caching, server security, tests, Sphinx, UX, mobile technologies.|
You should pay the biggest attention to programming languages a developer knows. Common full stack web development languages are:
- Python, PHP, Ruby on Rails – for server side
Top-5 full stack developer skills
To summarize, top five skill sets to check before hiring full stack developer are:
- Server environment
Scripting, network resources arrangement and troubleshooting. A full stack developer should know the hardware limitations, what could go wrong with it, what file system is appropriate, etc.
Creating responsive web design, coding it in languages mentioned above. Working together with designers to present nice layout.
- Database layer
The Proper understanding of database structure and ability to create queries for it. A developer should tell relational and non-relational databases apart, advise which one to use. Knowledge of syntaxes like JSON and XML.
- User experience
Any full stack development expert should care greatly about user attention and user retention. It is a part of UX/UI area, that is most closely linked to design tasks. When you build a piece of software, not having an end customer in mind is a crime.
- Business logic
Close to the previous point, knowing what a customer needs and what are your business goals is crucial. Thus, writing the code that will result in engaging site or application, and potentially bring profit.
To be more specific in getting to know your candidate, here are 10 questions to ask to hire full stack developer:
- What is 3-layer architecture, and how is it different from 3-tier architecture?
- Elaborate on a virtual method table
- Elaborate on aspect-oriented and object-oriented programming
- What is RESTful programming?
- What are SQL join types?
- List the methods to scale a database?
- What is JSONP?
- Elaborate on MapReduce
- What is a thread and what is a process?
- Multiple threading or select?
Pros and cons of hiring a full stack developer
Naturally, there’s a great concern and distrust to this, as the phenomenon of full stack developer is not defined precisely yet. In addition, full stack developer salary appears to be extremely high. So employers and tech companies look with suspicion. On one side you have an enormous benefit of saving time and money when hiring a person or agency proficient in full stack web. Contrary to this is the huge risk of investing lots of money and losing it.
Advantages of hiring full stack developer:
- Jack of all trades: such expert can ensure functionality with every stack layer.
- Knowledge and vision: a solution-finder to any possible situation, who can manage and direct smaller teams.
- Worth the cost of at least two developers (1 front-end, 1 back-end dev)
- A complicated development process, therefore a great risk to cost efficiency
- Full stack engineers do not have skills in UI testing
- More of an expert in knowing and learning, rather than in a certain development technology
- Lack of design experience and lesser ability to fit technology in a business model.
Considering these pros and cons, an appropriate question arises – when to hire full stack developer? Here are few instances. To build a minimum viable product (MVP), a practical model of your idea to validate it. When you need a product manager, a full stacker with coding capability will help you see business requirements better. For technical expertise and business vision, you may offer a full stack web developer a position of CTO.
Cost to hire a full stack engineer
There could be many factors, like location, skill set, experience, business niche. What position would a developer get: senior, executive, co-founder, CTO…? You have to access the nature of work ahead, as well as quantity and quality. But let’s give you some figures to consider. To hire full stack developer what his salary would be, what do you think. Check this.
According to Indeed’s analysis of Full stack developer salary in US, the average annual salary makes $110.800, or $4.900 monthly. Compare it to annual backend developer salary ($102.000) or frontend developer’s ($95.000), and you can see the benefit. Of course, salaries range based on projects and skills, from $40.000 to $215.000 yearly. If you want to hire a full stack developer on part-time basis, know that average hourly rate is $55.
But of course, salary is not all. It makes about 80% and there are additional cost factors. Taxes, HR expenses, benefits like insurance or vacation, technical equipment for work, office space, electricity, etc. Depending on the range, it could bump the cost of hiring a full stack developer up to twice as much as salary.
Cost considerations and factors
To hire full stack developer, especially if you are outsourcing web development, consider the next factors:
- Skill set / Experience
Knowing a lot about everything sometimes equal to knowing nothing specific. You have to go through every expert area, technology or framework a web developer claims to master. As we’ve mentioned in 10 questions-to-ask above.
- Project size
Companies tend to hire full stack engineers for smaller projects, as startups do as well. Which seems logical in a way to cover all the targets with 1 or 2 specialists. Large companies with richer resources at disposal, usually hire one-field specialist devs. But again, there’s no rulebook on this.
- Project requirements / complexity
The more complicated tasks/projects, the more skilled experts you’d better have. Often, new tech projects require more of investigator and solution-finder kind of developers, rather than of direct action.
HR workers know that hiring a good programmer could be a challenge. Now consider we are talking about this new breed, undefined yet, tech genius kind of web developer. So be ready that finding a really good one could take time, effort and money.
Mistakes to avoid
We’ve mentioned a spider diagram of developer skills that you can introduce as the first stage to access a candidate. What you do is assign six main technologies for the web, or your own specific ones. And then ask a person to grade his skills in each of them from 0 to 10. Of course, this is subjective and a bit exaggerated at the interview stage, just don’t mention full stack anywhere yet.
Another thing to consider is that the edge between knowing stuff in full and knowing how to use stuff is becoming thinner. However strange it may sound, one of the main skills of a full stack developer is acquiring new skills.
Now, to the point. Three costly mistakes in hiring a fullstack developer are:
- High expectations. Hyped up chatter within industry circles may invoke a wrong idea of who a full stack dev is. Don’t expect magic and tons of profit.
- Limited search. Better be open-minded about new channels of employment, like social media or freelance portals. Go beyond local and in-office workers.
- No technical expertise. This goes without saying, but we should repeat it. Checking test projects, that include architecture and front-end, with web experts on your side could help outline strengths and weak points. You can also ask for previous code samples on Github/Gitlab.
Concluding this part, we should say chances of finding a real full stack engineer are low. Chances of full stack developer’s employment, on the other hand, are incredibly high.
The openness towards new technologies, exploring all of them to have a clear vision of full web app development process. This is what makes a full stack developer. Though, programmer specialization still matters. If your candidate displays and proves an understanding in areas we have talked about, he can be a great asset for your business.
In full stack startup approach, projects are usually assigned to this single person of skill, to handle everything. As a final piece to our topic, we want to give you a perspective from developer’s view and what they think about this new phenomenon. In video below, a front-end dev Ruseberry from the USA shares her thoughts.
Would you hire her? What’s right, is that a real full stack developer is a rare thing, and the value is huge. In a sense that such kind of engineer can basically do the job of 2 or 3 people, a higher salary is nothing extraordinary. So, armed with these tips and insights we hope you can hire full stack developer wisely. Or maybe you believe in niche coders like PHP developers or WordPress developer is now even stronger. For more, you can contact our team with related questions anytime.
Want to find a dream-team without efforts? You can hire full stack developers at Thinkmobiles.