Codevate
It's a great time to develop bespoke software and secure your competitive edge. But with so many options out there, it can be tricky to know which software company or quote to go for.
This article takes a look at some key factors to consider when getting a software quote. Each section considers the right questions to ask and how to pinpoint value. We'll take a look at:
Having these new insights should help you get the best software quote for your business.
A bit about me before we dive in — I'm co-founder and CEO of Codevate and have been a software consultant for 7+ years. Codevate is a Birmingham-based bespoke software development company, with a team of specialist software engineers that thrive on complex projects. We work with cutting-edge tech, and digitally transform SMEs with best-in-class custom apps that make life easier.
If you find this article useful, feel free to add me on LinkedIn so you can discover my other articles or just to drop me a message.
It's important to keep in mind that the main aim of the quote will be to efficiently solve the problem in question. It will also need to make your business a return on investment (ROI) in a reasonable time frame.
Every software quote (or "phase" therein) should be evaluated in terms of ROI or value delivered. It's not uncommon for software projects to deliver value through R&D with prototypes or proofs of concept. To make our software quotes more flexible, we organise the plan into "phases". This means that we can incorporate client or user feedback as early and often as possible.
We aim to start each project with a short burst of development that targets a particular feature or 'unknown'. That way, the first phase delivers early value through workable software or answering a specific question.
Does your software quote have concise phases that focus on solving specific problems and making you a return? If so, chances are it's a fairly reasonable quote. But some other factors do play an important part.
Not necessarily — it can go both ways. An experienced software developer might charge a higher rate per day, but complete the project a lot faster. In fact, some software developers are up to 10x faster than others! So it's entirely possible for an agency with a higher daily rate to develop your software for cheaper.
There's a few things to consider:
Generally, more experienced developers will charge a higher daily rate. But it's a good idea to ask for examples of similar work. I suggest asking about challenges encountered or problems solved on similar projects too. You can ask directly, "What are the main technical challenges for my project?" or "Can you explain how you approached similar challenges in the past?".
What you're trying to ascertain is whether the software team has what it takes to develop your software in particular. That's not to say that they need to have developed an identical app or feature in the past. It's their problem solving ability and experience with similar challenges that you're looking out for.
For example, our team has a great deal of experience with GPS apps and the transport industry. We'd developed a bus route data exporter and a remote worker safeguarding tool before winning a project to develop a ride-hailing app. We'd also developed several social media apps that used GPS to power venue check-ins and crossed-paths features.
The client agreed that we were the right choice for the job as we were familiar with many of the core challenges. We'd already worked with route planning APIs, searching spatial data (to find nearby users), verifying phone numbers, automating calls, and we have a popular article about taking payments with Stripe.
As it's common for people to overestimate their skill level, it's important to dive deeper than a few screenshots. When we're recruiting, we set a comprehensive technical test to make sure that new developers are up to scratch. David (co-founder & CTO) recently wrote an article on why we only recruit more senior-level software developers.
Again, I'd recommend evaluating software project costs in terms of return on investment. If you go too cheap, you run the risk of working with an inexperienced developer that can't finish the project (or at least to a good enough standard). On the other hand, a more expensive (not "experienced") developer could exhaust your budget before you make a ROI. An experienced developer will be able to demo similar projects or challenges they've overcome.
What can you do about costs? Well, it's possible to reduce initial costs without reducing the project's overall functionality. Organising the project into smaller phases means you don't need to commit your whole budget in one go.
Targeting one feature or question (an "unknown") at a time means you've hedged your bets. If the first software company can't deliver, all's not lost. But if they can, you get results faster! And faster results means a faster ROI or a better quality software product.
In any case, we're always happy to give at-a-glance second opinions if we can add value to the process.
So, organising the project into smaller phases means that some financial risk can be mitigated. But it's crucial to retain value in earlier phases by focusing on higher-impact, lower-effort features.
Simply chopping a main feature in half to "cut costs" can create its own problems. And having the right 'fit' with your features is essential when it comes to user adoption.
Your project might focus on a single main feature, or a few smaller ones. It's wise to break down each feature into smaller tasks where possible, so that they can be estimated separately.
Ask the software company to help you organise your features or tasks into an impact-effort matrix. You can rate each item based on the impact it will have on your business or for your users. Your developers will be able to tell you which features are lower effort (relative to the others).
Once you've got your impact-effort matrix (or equivalent), you can build some high-value phases. Focusing on these "lower hanging fruits" will give your project the kick-start you're looking for.
In Codevate's software development quotes, each phase focuses on delivering a key element of the software, or tries to answer a specific question. This helps us get you to that early ROI or user feedback as soon as possible.
With an early ROI, it will be safer (and more lucrative) to continue investing in the project. As an added bonus, the project will become self-sustaining sooner too. Especially if those phases target monetised features.
In Lean methodology, it's common to prioritise user feedback in the early stages of the project. This means you can rapidly evolve your software idea towards a more snug product-market fit.
By targeting high-value features and actioning user feedback, you'll get the most value from your software quote. You'll also have a better chance of generating a return on investment!
As discussed above, a key factor in pricing is the rate you pay for each developer. This is usually an hourly or daily rate depending on the developer(s) assigned to your project.
Software companies will have different rates based on their experience, target markets, technologies, specialisms, etc. Depending on the size of your project (or the company in question), they might charge you for a project manager too.
Sometimes companies will charge a flat rate for all developers, no matter their experience level. So a higher or lower daily rate doesn't mean your project will be more or less pricey overall. I'd suggest asking about the particular developers assigned to your project:
In addition, if your software idea is complex, you may benefit from upfront consultancy. This will help to capture the finer details and solve crucial problems or questions in advance.
Longer-term projects will need a thorough specification. For these larger projects, it may be worth investing in a more detailed software quote/specification before you start. It's not uncommon to start small and build your way up instead, but you'll only get very rough cost estimates.
Sometimes, it can be worth investing more in your project early on to start off on the right foot. Working with the right team can help you avoid poor technical decisions that can cripple a project in the long run.
As software projects age they accumulate "technical debt". This can come from technology drifting from the cutting edge, changing requirements, or from poor design choices. Poor decisions early on in the project will accrue interest, so cutting corners will always cost more down the line. This will be an important factor in the long-term maintenance of your software as well.
That's why it's paramount to work with a software company that understands your project's goals, objectives, and challenges. Working with a developer who has the right 'fit' with your project will pay big dividends as time goes on.
Some other things to consider are the location of the team, as well as how long it has been established. A young company could be missing crucial business experience that will be vital in delivering your project. Offshore agencies come with their own obstacles, like time zone and language barriers. Different legal jurisdictions can make transferring or protecting your intellectual property difficult too.
That's it from me! There are many other factors that can go into getting the right software quote for your business, but this post touches on the main ones we tend to see people have trouble with.
If you want to learn more, I have an article on how to get your money's worth in your app development quote. This sister article talks about cost and pricing a little more.
For some insight into technical decision making in software projects, you can read David's article on saving on project costs with dual native app developers.
If you've got further questions or are looking to get a software quote, feel free to drop us a line.
Samuel Jones
Codevate