How to Find the Right Software Developer for your Project.
Welcome to our new series: Dev Shop 101!
Today we’re going to examine some of the common elements of software firms that we see in practice.
First, a couple of things to note:
Not every project requires a software developer. There are so many different tools that many projects can use without the need for custom software. If you are experimenting, we definitely recommend off the shelf tools to create proofs of concept.
That said, there may come a time when off the shelf tools will no longer handle every problem the company faces. In that instance, unless the problem requires an in-house engineering team, the time has come to call in the professionals.
Software development has long been the province of a special group of engineers, “coders,” and hackers (yes, yes I know… the words are redundant… rule of threes people). These wizards of the keyboard speak entirely different languages while weaving spells which result in incredible feats of computational brilliance. While spinning up digital, especially ecommerce, businesses has never been easier, understanding what’s really happening often requires a level of training and experience beyond the casual observer.
The Professionals
So, once you’ve progressed beyond your own ability to “fake it until you make it,” where do you turn?
Likely to one of a number of options for bringing a professional into the conversation. Here are a few of the options you are likely to find when starting your research:
Freelancers:
A freelancer is an individual contractor, building projects and charging their own rates. You will likely encounter freelancers either through friends or family members or through freelancer platforms. These are the hired guns of the software development world.
Pros:
One person working on the project and responsible for the outcome
Typically less expensive than a firm
Cons:
Vary widely in quality, which you may not be equipped to assess
More a hired gun available for jobs rather than a long term partner
Consultants:
In this context, consultants are also typically individual contractors, but with significant experience, most often as a leader of a software team at a company or agency. Consultants may handle work themselves or farm it out to other engineers, but maintain ultimate responsibility for the project.
Pros:
Typically senior level experience with a portfolio of projects for you to assess
May be less expensive than a firm, but will charge higher rates than freelancers due to their experience and expertise
May be available as a long term consultant or even to act as a part-time CTO as needed
Cons:
May be running a number of projects at the same time
Tend to be much more selective over clients/projects
May prioritize the tried and true over the new and innovative
Dev Shop:
Dev shops are small to midsize software development firms.
They employ an engineering team, provide specific services, and have fairly standard business practices. Dev shops may outsource work to contractors or overseas development teams as needed. They typically take on discrete projects, preferring to operate under scopes of work (SOWs) with agreed deliverables and timelines. This allows more predictability and better resource management.
Dev shops can vary in quality, but the old adage is still true: you get what you pay for.
Pros:
Typically more flexible than solo developers due to expanded capacity and expertise (more languages, platforms, frameworks, etc.)
Competitively priced
Reliable in ensuring the deliverables are executed and delivered
Can add additional resources quickly to deliver projects faster if needed
Cons:
Dev shops rarely go above and beyond.
Dev shops exist to do a job: produce deliverables. Most dev shops aren’t paid to think about business cases or users, beyond ensuring that the feature accomplishes the goal stated in the SOW.
Potentially less relational or empathetic than a freelancer or consultant due to the corporate/business nature of the dev shop.
Firm:
The pure major software development firm is rare. Once a dev shop reaches a particular size, it tends to either be pulled into a larger organization or to diversify its offerings.
So the major firm will tend to encompass not just software development, but also business consulting, product strategy, design, marketing, and potentially more. These are true full service offerings and priced accordingly. Their work can also vary in quality, but tends to be very good, as they attract strong talent allowing them to charge a high price tag.
Pros:
Full service: a firm will think about your needs from every angle. You will receive top tier design, user research, user experience, product, and engineering.
Dedicated customer service, sales, etc.
High quality output, using the latest technology, platforms, frameworks, languages
Potential for long term relationships spanning a number of years and business needs
Cons:
The price tag can be a bank breaker, often cost prohibitive for 90% of businesses
So What is Right for You?
Which of these options is right for your business and project will depend on a lot of factors, not the least of which is budget. We suggest having at least $10000 to spend on your project before approaching a dev shop, at least six figures before approaching a firm.
Consultants and freelancers may be more flexible for your budget, but can vary quite a bit in terms of the output you will receive. For small, discrete jobs, freelancers or dev shops will be the way to go. Of those two, if you are in a crunch and have the resources, a dev shop is the better choice. For more complex projects, a consultant may be the best pay as you go option, though a true consultant may be hard to find due to demand.
At Steadfast, while we most easily fall into the dev shop category, we’ve been thinking deeply about this paradigm throughout 2020. We believe there is a better way to provide value to clients without going full firm.
We have some ideas, which we will share in our next blog.