What questions do clients ask before starting cooperation with a software company? How can a provider company dispel the doubts, and make every effort to ensure the successful execution of a new project?
Company owners look for the best there is when choosing a business partner, and need to make informed decisions.
The questions that are asked differ, as do the needs. While some concerns may be company-size-agnostic, similar for clients from different business backgrounds, the others will relate to areas of operation and various demands. As a software development company, we deliver IT solutions crafted to answer business needs, with particular attention to understanding our clients’ troubles. For a better insight into the questions asked, we break down the “demographics” into 3 major groups. Surely, not every company falls under the below categories, but the list of most asked questions covers the majority of concerns.
Questions troubling companies looking for a software development partner
When can you start?
Most probably, you’d like to start ASAP, or maybe you’re even already past the desired starting date. You wish you have started yesterday, haven’t you?
The software development provider is of course in no position to lecture you on managing your workload, but maybe engaging in cooperation with an outside company is a good moment to assess how your internal processes work. In short, before expanding your team with external staff consider what place your company is currently in.
As soon as you get in touch with the provider to discuss your idea, assess its viability, estimate the process, choose the most suitable technology, and assign a team depending on their current workload, you can start right away. Responsible software development companies set realistic timelines and the start of the project depends on several factors, all of which you will be informed upfront.
Do you work in Scrum?
Project development and management frameworks can be understood differently, thus the obvious default answer (“of course we do”) may not allay the doubts. The statement itself is not enough, and you should ask the company to elaborate on that to understand what exactly they do understand with Scrum. On the provider’s side, scrum-based production processes guarantee predictable results and regular growth of functionalities. Using the cost-effective approach to managing distributed teams ensures on-time and quality delivery, but the process itself needs to be broken down into more details for you to grasp the idea.
How do you ensure the accuracy of your estimates?
Estimations are an important part of the process, helping to answer the burning questions the client has. The time and cost calculations provide a tangible idea of the workload necessary to deliver the solution agreed upon and help in deciding on project progress. Even though software development companies make every effort to estimate the project in the most down-to-earth way, calculating all variables, and taking into account every factor that can affect the result, divergences between the initial calculation and real-life final results are unavoidable.
Don’t stop with the initial questions and continue inquiring – How often do you over/underestimate? How much do your estimates vary from the actual project duration and cost?
Having this in mind, responsible providers perform both, a rough initial estimation, and a more in-depth analysis, based on final requirements and acceptance criteria to fully understand what may occur during the products’ lifecycle. Software companies can (and should!) be transparent and invite clients to participate in the process as much as they wish to, ensuring a high level of awareness of ongoing events and potential changes in the schedule.
How do you handle changes in priorities?
As some say, change is the only constant. Agile-oriented companies need to be ready to respond rapidly to occurring changes, at the same time making efforts to adjust the software development cycle to current needs and requirements. This step is the right moment to inquire further about the long-term consequences of changes, including the possible technical debt and its impact.
Questions most frequently asked by startup creators
In short, these questions could be answered with a short it depends. However close to the problem, that’s usually not the response clients expect.
When will my app be ready?
Figuratively speaking, when the software development provider’s team collects requirements, estimates the outcome, writes, tests, and implements the code, creates the UI, and performs other steps agreed upon by the beginning of cooperation. More specifically, the software development company will be able to answer this question once there’s an agreement on which features are crucial to launching the MVP. From this point on, the team can focus on delivering the subsequent stages while your product already works and conquers the market.
How much will it cost?
The project costs vary depending on its scope. In many software houses, the go-to approach is the time & material model, instead of fixed price. With this kind of settlement, clients are charged depending on the hours “burnt”, according to projects’ needs. This model is inextricably bound with estimations since the development can’t be carried out carelessly „we’ll start today and let you know once we’re done”. The harsh reality is that the process has its structure defined by previous estimations, and if something goes out of the lines, the development team needs to know what and why happened. And you will be informed immediately about the unforeseen events.
The subject of money is also linked to the above question, as this might be the right time to discuss with your provider what do you expect from your MVP, and how much work should be put into it before the minimum product hits the market.
Questions most frequently asked by companies already having a digital solution
What technologies do you use?
This question should give you an idea not only about the programming languages, platforms, and environments used but also about the general approach to technology the company presents. Companies that work with the newest but proven and tested technologies, serving long-term and easy to maintain, deliver products less prone to becoming obsolete any time soon. Only if your existing product is built using solutions fading into oblivion (or soon will), developers should consider changing the tech stack. Otherwise, mixing various technologies most surely will create an undesired mess. (We’re not saying that at NeuroSYS we’ve got a solution to every problem, but with the right tech, we’re not far from it.)
Can you handle legacy code?
After this question, you may expect an answer stating the company is dedicated to managing (but first of all, going above and beyond to avoid) the technical debt to keep it under control. Legacy code is a common occurrence in existing systems, requiring proper handling. This being said, it may not be easy to find an outsourcing solution to maintain it endlessly. Instead, developers test the code and review its documentation to ensure the possible code rewriting is necessary, and perform it then and only then. If not, developers refactor it, making changes in several smaller review cycles to avoid difficulties from making too many amendments at once.
At some point in the negotiations, you, the client, need to decide on the legacy code strategy and communicate it clearly to the provider. This helps to avoid misunderstandings, as sometimes initial agreements call for top-notch developers working in the newest technologies, whereas their actual duties won’t be aligned with their expertise, causing fast burnout (even in months) and leaving the team. Communication and transparency on both sides are key and covering recognized possible pain points enables better cooperation.
Do I need to rebuild obsolete applications?
We don’t deal in absolutes in this matter, as it requires thorough consideration. Once the outdated code begins to cause problems, it’s time to decide on further steps. Considering rebuilding applications requires keeping in mind the need to maintain the market position while the system is under reconstruction. We don’t advise rewriting applications just because newer technologies emerge, but we’re ready to advise the appropriate treatment adjusted to individual cases.
Questions often asked by large enterprises
How will my money be spent?
Related to one of the previous questions, „How much will it cost?”, this concern requires transparency and precise estimation, enabling the client to picture the general outline ahead, remaining well-informed about spending money. One thing is sure, in the properly executed process, there are no hidden costs, and since the client has unrestricted access to the development process, both the time records and accumulated features are available for inspection.
Do you outsource developers?
Software development companies execute services depending on customer needs, outsourcing staff, or projects. While performing as an external team, developers work on the clients’ products or services, frequently supporting the core team while creating/ improving the solution. Developers can work on the client’s side, sometimes colloquially offered as “programmers by the pound”, meaning the work will be outsourced outside of the parent company governance. In this scenario, the developers will be managed by the client.
If you have previous experience with outsourced programmers leaving your projects, the cause may not be on the outsourcing side. Unsurprisingly, good developers won’t stay long in projects executed poorly, thus keeping skilled external staff is not a matter of payments, but maintaining a well-governed process on your side. Good software development companies have stable and efficient processes that are well-known and understood by the team. In such cases, assigning the project management to the provider is a great opportunity in terms of its smooth execution. When clients have confidence in their processes, the “pure” outsourcing model can work out well with a stable, long-lasting team and no additional governance.
Does your company face frequent employee rotation?
Good software development companies, like ours, build long-lasting teams, where employees with a length of service over 6 years are not uncommon. With a steady team composition, providers can execute projects in a predictable, steady manner, reducing the time needed to perform project onboarding. As a result of long-term cooperation with employees, software service providers rarely need to change team members. We’re aware of how frustrating it may turn out to be for the client to always contact new developers, constantly needing to introduce new people engaged into the projects’ characteristics.
If this question results from your previous experience with employee rotation, again, this may be the right time to analyze your project and possible causes before engaging in cooperation with another software development company.
And… that’s not the end of possible questions
There are, however, questions asked by software development companies like us. A seasoned, responsible service provider will inquire the future client, asking why they seek external support in building their digital product. Once we know your motivation, we’ll be ready to ask you further questions to understand your idea thoroughly before we start building your project.
Does your company have what it takes to make the cooperation work out well? The joint success depends on the process on your side as well, and doubling the number of developers working on your project usually won’t result in doubled execution time. We’re going to need a roadmap, initial estimates, the tech expertise on your side… but worry not, we’ll sort it out together.
Do you have another question about software development? Do you wish to discuss how your idea can come true with digital solutions? Wait no more, book your free consultation and ask away!