By Chris Page
Wednesday, December 15th 2021
If we’ve seen it once, we’ve seen it a million times. Your company’s growing software challenges are piling up quickly and you realize that you need to augment your team with some new talent. Conventional wisdom says you should hire a new developer–a dedicated resource whose skills match your needs. Although you might not know it, there are many challenges that come with this traditional approach. The cost is high, the learning curve is steep, the volume of work is variable, and the turnover rate is high. Plus, there’s no guarantee that this expensive new employee will even solve your problems. For these reasons, it’s worth re-evaluating your approach and considering the alternative–the fractional, scalable consultant.
The following are some of the challenges that arise when hiring a new full-time engineer, and the ways that these problems can be mitigated by utilizing consultants as an alternative.
High Cost and a Big Commitment
Cost is perhaps the most obvious challenge facing any new software development hire. The salaries of developers are high to begin with–according to US News and World Report, the median salary for a software engineer is $107,000. And as a job that is in high demand, many of the top-level talent that you need will demand more money than the median in order to be persuaded to join your team over other competitive offers. This cost, of course, does not even take into account benefits, which as with salary, are a crucial bargaining chip needed to entice any software engineer to join your team. Once you hire an employee, you are also legally required to pay social security taxes on their wages, not to mention paid holidays, vacation, sick days, and even parental leave if applicable. There are additional expenses associated with full-time employees, such as costs for turnover (unemployment, rehiring, retraining, etc.) and providing healthcare insurance, which is experiencing a consistent rise year-over-year.
When working with a team of consultants, on the other hand, the cost is negotiable and scalable based on the needs. Our consultants are paid members of our staff, meaning that the money you invest toward engineering consulting goes directly to engineering and not any other type of hidden costs associated with employment. Furthermore, our consultants work on a retainer basis on a predetermined scope of work which is subject to renewal and renegotiation, making it easier to add more heads or to scale back as dictated by the situation, without leaving you responsible for the salary and benefits of a full-time employee who you may no longer need.
High Turnover and Dependency on Institutional Knowledge
Another challenge with employing software engineers is the high turnover rate. Because, as mentioned, the pay rate is so high within the industry and the positions are in such high demand, software engineers are always looking for new opportunities and better pay and benefits. Because each system is unique in its level of institutional knowledge and the onboarding process may take weeks or even months, there is an extremely high risk associated with bringing in a new engineer. If the first period of their employment is spent simply familiarizing themselves with your code base, this becomes a long-term investment in a person who may be a short-term employee. If they do take a new job, you may be in a situation where either they leave with institutional knowledge and you are out of luck, or you have to scramble to find their replacement and then pay both the old engineer and the new engineer at the same time during a transitional training period.
When working with consultants, the institutional knowledge is shared amongst your team of consultants, meaning no one person is the only holder of all the esoteric knowledge. Our team of consultants is able to integrate with your engineering team, or can even scale to serve as your whole engineering department if the need dictates. The onboarding and knowledge transfer process is entirely handled amongst our team members, meaning that once we develop the knowledge base, we can be counted on to hold and develop the knowledge needed to run your systems or your applications. Best of all, even if there is turnover within the team, adding or swapping out heads, the knowledge transfer responsibility lives within the team, as opposed to on your staff.
Hiring Engineers Is Harder Than It Sounds
One of the other challenges to filling an engineering role is finding the engineer, or engineers, with the right skill sets to meet your needs. Particularly in an organization where there are a small handful of engineers handling most of the development work, or when working with legacy code, there can easily be situations where the current team is in over their heads, but they don’t know exactly what they need to solve the problem. Amongst internal teams, engineers are typically limited to their own experiences to solve complex problems. Even in larger organizations with more robust engineering teams, finding the right hire is not always as easy as it sounds. The process of vetting and interviewing prospects is labor intensive, and the stakes are high, because the wrong hire can prolong or even exacerbate the existing challenges.
If you staff consultants instead, the vetting has already been done for you. We begin by familiarizing ourselves with the challenges that you are facing. We then determine the engineering lift and corresponding staffing that we recommend. You can be confident that our team members have already been vetted and have years of experience with the technologies necessary to meet your needs. In an instance where additional expertise beyond the team is needed, we are able to find and pull in the right engineers to augment or consult with the team. A key difference between internal teams and external agencies, like ours, is our ability to easily tap on the shoulders of industry experts and consultants on an ad hoc basis, depending on the problems we are tasked to solve.
Can One Person Really Solve Your Problem?
Perhaps the biggest practical problem of hiring a new engineer is the expectation that they are going to magically solve all of the problems that you are facing. The best analogy for this situation is to imagine your new hire as a firefighter and your engineering challenge as a house fire–while it certainly helps to have a new firefighter arrive on the scene, it is extremely unrealistic to expect that adding one more firefighter will instantly put out the fire. What is much more likely is that instantly being thrown into this crisis situation will quickly exhaust or overwhelm your new hire, who maybe didn’t realize what they were signing up for, and before long, you are back to thinking you need to add an additional head to continue to fight the ongoing blaze. As the project continues, you may find out that you need different skills or knowledge to help, which your new team member may not even have.
Continuing with this analogy, a team of consultants is like adding a variable team of firefighters to the scene of your fire. They can scale up or down as needed depending on the urgency of the situation, and they can also trade out or fill in knowledge/skills gaps for one another to help make the problem-solving process more diversified and comprehensive. It is impossible to approach any engineering challenge knowing exactly what you will need to solve it, which is why having the scalability and flexibility of a consulting team at your disposal is the only truly solutions-oriented answer.
Learn More About How We Can Help You
At Nearby Creative, our team of software development consultants have decades of combined engineering experience, and knowledge that spans dozens of coding languages, engineering stacks, and industry specialization. No matter what your industry or your enterprise needs, we can assemble the team and the budget who can prepare you to confidently approach and solve any engineering challenge that you may be facing. Contact us today to discuss how we can build your team and meet your budget.