Why and How Your Team Should Bring in Contract Software Developers
“No battle plan ever survives first contact with the enemy.” –Helmuth von Moltke the Elder
Respect your elders. Your enemy is time. Your grand visions of hiring your top developer prospects the minute your seed round is wired in and staying on track for your launch date will soon face reality. It’s time to adapt and properly evaluate contract software developers.
For high-growth companies, properly leveraging the right contract software developers at the optimal time creates a significant competitive advantage. This post provides the requisite considerations.
Keep in mind, we are talking solely about development roles here — not design or product roles or your office charcuterie chef. Those roles have their own considerations.
⚠Spoiler alert⚠: At Fount, we have a team of developers (and designers) who operate as contract software developers for our partners. (Another spoiler alert: Our team has recently launched a free Slack app for Spoiler Alerts. Get it for your Slack team here 😉
Why Should Contract Development Be Considered?
Time waits for no one. If adding more engineers can shorten your roadmap, you can continue to make progress while you recruit and hire full-time employees.
Determine the optimal number of engineers needed for the time periods when you really need to accelerate product development. Do you have them? Can you quickly (and diligently) hire them?
Stalled development appeals to neither recruits nor customers nor investors. A growing, thriving buildout may help close the deal with the talent you’re in talks with — it makes your opportunity more attractive.
If your concern is that you want to build a company culture with employees, and thus avoid the ephemerality of contractors, that’s understandable. However, you can maintain momentum and even increase your company’s growth by engaging contractor software developers in the near term while hiring slowly for the long term.
If you’ve already determined that you need help today and can’t quite employ the candidate you want, you can: a) do nothing; b) hastily hire a B-list full-time employees; or c) bridge the gap with contractor help. When you do get your top employee draft pick it will be a lot easier to part ways with the contractor. The contractor will have known that it’s a temporary arrangement from the start. The full-time B-listers, who turned down other offers and moved across town to join your team, are busy working on a record-setting LaCroix-can pyramid with their teammates. Good luck having those termination discussions.
Further, experienced contract software developers are accustomed to phasing in their replacements. They’ll want to protect their professional reputations and guarantee a smooth knowledge transfer. Our team, for example, welcomes the opportunity to assist our partners in the technical interviews of the potential full-time employees replacing us. We want to work with you again later. This makes for an additional incentive to provide a proper transition. We prefer you staffed up with top engineers that we can jam with when we pop back in.
When Are The Optimal Times To Accelerate With Contract Development?
There are better times than others to bring in contractor help:
- If financial runway constrains you to only a few months of additional dev resources.
- If the top talent you want isn’t available at this time, but you need to keep moving through your roadmap.
- If the skills required for a chunk of work won’t be needed once it’s complete . . . winter hath cometh.
There are likely many opportunities as you grow for contractors to complement your ongoing development. It could be to augment an existing dev team while continuing to pursue full-time hires, or to accelerate the buildout of a specific feature set to keep the in-house team focused on the core product. Whatever the case, there are important considerations to be contemplated.
Just as cloud infrastructure, like AWS, has made computing resources perfectly scalable, the right contracting partner should give you the same fluid availability for software development. You should view the right contractor-partner as your very own EC2 instance for development to efficiently add value through the growth stages. Not only should they scale up and down as your business evolves, but they should provide a relevant level of guidance to help you navigate your product roadmap.
What To Look For In Potential Contractor Software Developers?
We’ve had a few partners come to us because they’ve been previously burned by contractors who’ve made the wrong technical choices or who’ve lacked the skills and experience to complete the work on schedule (originally chosen for their “bargain” rates). Every one of these situations could have been prevented by proper evaluation of the developers. There are some important differences from your full-time employee hiring approach to consider to get you the right of kind of contractor help:
Reliable. Transparent. Direct. Experienced.
Reliable — Get references. Engage for a small project to test the waters. Don’t tell them you’re testing reliability — observe them in the wild so that they don’t behave differently under close observation only to reveal their true work ethic later in a larger project.
Transparent — Detail your technical problems and be sure the developers detail their proposed solutions. Avoiding this at the start will invariably cost time and resources as you dig in more deeply. Developers want specific problems and, similarly, you should insist on specific proposals to solve them from potential development partners.
Direct — Insist on direct communication early on in your evaluation of contractor talent if speaking with an agency. Be sure to name the specific developer(s) you wish to work with as “Key Personnel” in any contractor agreements. The goal is to minimize, or eliminate, project management expense as well as the delays and miscommunication it can cause. If you feel that your contact continues to be unnecessarily filtered by a middle person at the agency, they may be obscuring something (outsourcing; junior talent assigned to you; etc.).
Related point: Freelancers (contractors operating independently) can be great options, though they can be riskier than partnering with an established agency. Agencies have vetted the talent, are concerned for their brand, and will provide some oversight and guidance, as needed. Their developers can seamlessly fall back on other members of their teams to eliminate knowledge gaps. If the developer you’re working with goes silent, the agency is still on the hook to properly finish the project — easier to track down than a rogue freelancer.
Experienced — A contract engagement is not the time for training. Let someone else pay for that. See their previous work. Have it generally explained if they are unable to share due to confidentiality restrictions with previous clients (or inquire about side projects).
It’s been said that when deciding between two seemingly equal candidates for any role, choose the better writer. Why? Writing is communication. Communication is always 🔑. Engaging a developer who can smoothly converse with your team about your business requirements will enable them to craft technical solutions that address the right problems. Further, an effective communicator can translate those technical items into terms your team will understand — and appreciate. A proposal and all of the correspondence around it (emails, calls, coffee chats, choice of emoji, etc.) ought to provide you with an adequate understanding of how the contractor will gel with your team.
When deciding between two seemingly equal candidates for any role, choose the better writer.
What Types Of Work Are Best For A Contract Software Developer?
If you’re pondering the challenges of having to detail a scope of work for an outside dev, consider this: You should be defining those requirements when engaging your employees. If there are decisions that cannot be made until initial phases are complete, break them up into phases and solicit estimates on all of the phases before the choose-your-own-adventure starts. Deferring an agreement for the uncertain pieces reduces the likelihood for inaccurate estimates by all parties.
If there are a lot of unrelated technical problems requiring a solution, an ongoing block rate arrangement (e.g., hourly, weekly, monthly) may work better than a fixed fee. This structure may require a little more oversight on your part to ensure that the pace of development matches your expectations. (In a fixed bid, the timeline in your agreement ought to govern pace). An ongoing rate will allow for more flexibility and can be the most efficient arrangement with the right development partners. For early-stage startups with fluid roadmaps, this may be preferred. For either structure, be sure to have the devs explain the technical approaches that they’ve proposed to meet your requirements.
Where To Find The Right Developer Talent?
Greater than 53% of respondents in a recent Stack Overflow survey of 64,000 developers said that working remotely was a top priority for them. Unless, having the developer on-site is absolutely essential for your company, why limit yourself to developers in your immediate geographic area? It’s 2017. Is it “essential” for a dev to commute to your office, only to throw on her headphones and slack chat another dev who’s seated within her yawn-stretch radius? Is it “essential” for them to be in the presence of your mastery of MBWA?
Greater than 53% of respondents in a recent Stack Overflow survey of 64,000 developers said that working remotely was a top priority for them.
Concerned about having good referrals of potential devs because they are outside of your area? Consider your network, I bet it extends beyond the city limits. Tap them for referrals and mutual connections who are previous clients of the contractors. Also, a few time zones in either direction should yield plenty of overlap to sync with your team, or simply require them to get on your company’s time.
Don’t let a dearth of employee-developer options be the death of your business. You’re in business to provide valuable solutions to problems. Contract software developers are a realistic solution that ought to be worth your honest consideration.