During the meeting with our prospective clients, we often hear a question: “Could you give me an estimation of my project? Even a ballpark. I’d like to compare you with the other agencies”. And, the answer is: Well, we could. But is there any sense?
Price is one of the essential factors influencing our business and everyday life choices. But unfortunately, it is not always possible to pick the project type (such as web app development) as it was a lobster served in a fancy restaurant with an (also fancy) price. It stems from the fact that, well, bespoke software products just don’t have their own scheduled priced menu.
There is no sense in asking 5 or even 10 software providers for preparing an estimate after the first meeting. Because the fact is you don’t need an estimate to prepare a shortlist of providers. Are you curious why?
Let’s see why it’s pointless to estimate without workshops.
(And why estimates given that way are not valid).
Time and Material Projects
Any change in requirements – that may happen as you get feedback from your target users – results in decreasing or increasing the total cost. That is why it’s a common practice among product development that the contractor is being paid not for the project itself but rather for the time and material spent during construction. What is the conclusion?
Even if you receive the project estimation, you will never pay this amount. Because what you are going to pay for is the number of hours teams of developers had to spend building your product, not how much they anticipated it would take.
Does it mean that it’s better to ask how much it costs to hire one developer per day? Yes! And if you are now in the phase of making a shortlist of companies, that information is enough to compare software providers.
Differences in estimating practice
It’s difficult to structure the process of project estimating among the businesses. A company’s evaluation often does not include the same add-ons as other enterprises. For instance, one assessment involves the salary of a Scrum Master or Product Owner Proxy, while the other embraces only wages for developers.
Moreover, it is not rare that even basic packages contain basically disparate things. There are also many expenses you would take an interest in, but they won’t be included in the estimates. Such costs can be software support, maintenance, training, or upgrades.
Learn more about time and material vs. fixed price contracts from our related blog post!
Business is not only about technology and economics. We shouldn’t omit the importance of human factors! If you ask a company for the estimate, managers who use aggressive evaluations would probably be more likely to underestimate the total costs. On the other hand, executives favoring safe evaluation are prone to provide you with a price higher than it finally turns out to be.
Imagine you choose a company where costs turn out to be underestimated. The undertaking of such a decision influences the lion’s share of other planned actions. This change pertains to all the departments, not only product development. We should also notice a blooming risk of blowing the budget. If so, you are left without both products and cash. Although you got “the estimate.”
It’s always better to receive a safe evaluation that is higher than the final cost rather than struggle with the consequences of underestimation. And everyone prefers to work with people who tend to be more forward-thinking and genuine than those who play the game with curveballs.
Time and labor consumption
Preparing a reliable estimate takes 1-2 working days for an agency. It stems from the fact that we would like to understand your needs and even exceed your customer’s expectations. That is why delivering a reliable estimate is such time and labor-consuming. If anyone provides you with it after reading the restriction list sent after the meeting, unfortunately, we can assume you are lied to. And for sure, the attitude was not tailored to your individual needs. So, our recommendation is to pick 1 or 2 companies (rather than 10) to make an estimation after dedicated workshops.
What major factors should be considered while choosing a software development company?
So, as presented above, estimating needs time. If you are in the phase of preparing a shortlist of providers, daily rates should tell you enough. But, to choose the company/companies you would like to have workshops with, there are significant factors worth considering. Let’s have a look!
Find the team that matches your (tech) expectations
Searching for an experienced software development team does not belong to the most lightweight tasks. Therefore, the first thing you should do is to ensure whether developers’ qualifications respond to your project’s complexity. Moreover, these are not only coders who deliver the solutions.
Check: How to choose the best Node.JS development company?
For instance, maybe your app needs a flawless and compelling user path. For this purpose, you would need excellent UX/Product designers. And, after indulging yourself in a short sigh of subtle relief, you should better keep our eyes open not to overlook the dazzling skills of scrum masters. Naturally, it is just an example. Everything depends on your expectations and product profile, what kind of help you will need, and thus who would be this helping hand.
Ensure trustworthy communication flow
No one wants to wait for the email response for 3 weeks, right? So when you pick the team members, it’s time to check if you understand each other’s thoughts, ideas, and communication style. You probably require the partners to be responsive, transparent, and willing to share their field expertise. So, though these are hard skills that build cooperation, soft skills with the proper communication ahead bind everything together. Or its lack unbinds the whole project’s knot. It depends.
Before the initial call, you can see how a company treats you from the very beginning – how long does it take to respond? Does the team understand your questions and provide you with the needed information? Do they appear to be transparent and sincere?
And, obviously, communication is a play needing more than one member!
This booklet will guide you through all the important aspects of collaborating with a software development partner, including work organization, meetings, and everyday communication.
Read testimonials and check portfolio
It happens that finding a software development company with 20 years of experience is impossible. Many languages and their environments have existed only for a few years, for example, Node.JS. So instead of looking for a Gandalf The Grey across the benchmark, try to assess the experience and expertise based on testimonials and product portfolio. Read case studies and search for references on the web. This way, you will learn what kind of problems the company solved, how it approached the challenges, and the outcome.
Those tasks you can handle before the initial call as testimonials and case studies are often published on the website. It’s also recommended to compare if a company works in the niche you are focused on or if it can boast about expertise in particular technology or type of solution.
Test the business attitude
We guess that your goal is not only to build the product but also to make it successful. We also understand you are an expert in your niche, and this potential just cannot remain unused. That is why it is essential to test if a company discerns the key challenges, goals, and tricky features that contribute to the product’s success. We should outline the distinction between what software companies are doing and what we specialize in right now.
So, although the first question is: Does a company align with our technology? We should obtain the following big answer: whether the company understands our business.
Estimates vs. Workshops
Writing down specifications of requirements is not enough to draw up an estimate. Imagine a hypothetical situation where two product owners write down the exact specification for an application. Then each product owner gives it to develop to a different software team and steers the work in an agile way. The result will be two much diverse applications, despite the same specs. Companies need to understand your growing pains and needs, and to do so, you have to spend time on discussion.
Why do you need to have a workshop to get an estimate?
Even if you have a specification of requirements for certain features, it does not mean we can smoothly go to the ballpark. It is not a mystery that from the business perspective, the part can resemble a one-dimensional and straightforward case. From the developer’s point of view, many questions arise despite the specification given.
Preparing the estimation should be preceded by an in-depth analysis of your needs and the extent of opportunities. It’s crucial to prepare a plan of a project and then draw an estimate, because the lion’s share of decisions would be undertaken based on it. After workshops, you are provided with independent opinions involving ideas and risks (and ways of mitigation) that you would probably be unaware of. And they are written on paper. Moreover, it is best to check what communication with a specific provider looks like without signing the right contract.
Workshops are better than an initial estimate based on the specification of requirements because they provide us with enough time to draw up assumptions and test them to establish the conclusions on that base. The workshop flow is consistent with the agenda that has been earlier personalized to the client’s profile. And only after discovering your product can a company deliver the assessment that would not be a random number thrown in a weird and costly lottery. That is only after workshops you receive a reliable estimate.
Estimates without workshops say nothing about the total costs of the project. You never know if a manager has an aggressive or careful attitude to evaluations. Besides, such an assessment is likely to have other costs involved. Otherwise, there are significant differences regarding both additional and basic packages. Moreover, such reviews are always burdened with the inevitable risk. Finally: even if you ask about the project’s cost, you would probably pay for hours development teams spent anyways. And if you would like to prepare just a shortlist of software providers, those wages matter, not the estimate. Because, as shown above:
There is just no sense in asking about the price of a pig in a poke.
But, you can ask about the daily rates that matter and get acquainted with the content published on a company website. Then prepare questions regarding the most critical issues concerning culture & tech match. Believe it or not, case studies just love being read! On those criteria, you can pick 1 or two companies to have workshops with.
Remember that if you are still unsure about whether you can afford a company’s services, you can always mention the budget you have at your disposal. It does not mean giving specific numbers but only stressing the main brackets for particular services.
One of the best ways to draw up a reasonable estimate is to dedicate time for workshops with the type and agenda adjusted to your needs. They require more effort than a swift word exchange, but their output brings reliable conclusions and can be considered as proven. Instead of asking 10 companies about the estimate, you may need workshops just with one or two shortlisted companies to be ready to undertake the decision. And after the workshops, you get an estimate that can be perceived as reliable and trustworthy.
Workshops help you bare the pig from its poke.