What should I prepare before talking to a software development company?
Dagmara Czarnota, 5 May 2021
Preparation is a key factor when starting an IT project. One of the first and most difficult tasks is finding the right IT service provider. What is the best way to find a software house that will create a solution meeting the company's business needs and goals? Although there are many software companies on the market, choosing the right provider is not easy. Browsing software development companies’ websites, checking their offers, finding out about completed projects and references may not be enough for a client to decide whether to work with a particular company or not. Also, it is really difficult for the software development company to undertake a new project only based on the analysis of the brief and the specification. It is necessary to have a conversation over the phone or online platform to better understand the project and decide about possible future cooperation.
The first conversation often determines whether a given software development company will establish cooperation and create an IT product. Bear in mind that the customer decides whom to start cooperation with, and software development companies have to decide about their readiness to provide a specific service. It is wise to spend some time on proper preparation to have a smooth and stress-free first conversation. Below are some of the most frequently asked questions you might hear when you first talk to a software development company.
What is your project?
It is really difficult to offer a good solution for a project without knowing any details. The final product should be designed specifically for the business model of a given business or for a target user group. For this reason, software development companies ask in detail what should be done to create a solution best tailored to your expectations and requirements. Also, it is wise to ask yourself why the decision about the need to create a technological product was made. Was it because of the emergence of any difficulties, e.g. the system used so far began to slow down, or perhaps the company needs a solution that will increase the efficiency of its operations, reduce costs, or increase sales? Defining the problem and reasons will help you to decide on the purpose of the product. During the conversation, discuss the benefits of a given solution, which include for example automating and thus speeding up a specific process. Detailed knowledge of the project and understanding the client’s goals will transfer into a better understanding and preparing a solution tailored to the client's needs.
Discuss the context
Some people are surprised when they hear questions about the company's operating model, the type of clients, or about the way their work is organized. IT specialists ask about these things to better understand the context and purpose of the planned system. A software development company may ask about the main business activity of a potential contractor, and the profile of its model client, the number of employees, organizational structure, or development plans. Who will be a typical user of the system and for what purpose will they be using it? Is the new solution related to your business or is it a completely new area? Answers to these questions facilitate the development and creation of a solution more tailored to clients’ needs.
Who is your target group?
Each software company will ask about the target group of users and their number. It is recommended to prepare these estimations before the conversation, as it is an important factor in choosing the right technology. Some technologies are made for solutions used by thirty people, and some for products that serve several thousands of users. When the solution is created for the company’s internal needs, such an estimation is not difficult. However, beginner entrepreneurs may have a problem with such estimations. Also, it’s important to say something more about the target group, for example, describe the users and their characteristics. Ask yourself, is my solution intended for corporate employees, youth, students, adults, or older people? What is the main reason why they will use it? Answers to these questions will help you to define the business model and decide on a specific solution.
Consider carrying out user research
Besides questions about the target group, you might hear additional ones about the market and customer research, during the conversation. In this way, a software development company has a chance to fully understand the users making up your target group. Ask yourself – have I done any research or found some data on it? If you haven't, it’s better to conduct such research before your first conversation with software providers. Market analysis should be the foundation of the business model. If you want to build a product for your employees or customers, it is wise to ask them for an opinion. Such a survey can be carried out quickly and easily using an anonymous survey created, for example, in a Google form. As a result, you will find out whether the planned solution has a chance to meet the needs of potential users. Also, results may show other problems and functionalities that originally weren’t assumed, but are significant for users. When you do not have any customers yet, analyzing the competition and their customers is a great option. Looking for various data related to your solution might also be helpful.
What is your product and how does it work?
Before your first conversation with an IT service provider, it is good to prepare a product specification, because such a company always asks detailed questions about the solution. The main question you may hear is about the product type. When searching for a potential business partner, you should know whether you need a mobile, web, desktop application, or maybe IoT solution. Such an aspect is very important because each type of solution requires a different technology. Also, it pays to read about all available possible solutions and understand which may be the best for your business. Desktop applications are usually created for the company's use, as they are built for a specific operating system, and need to be installed on every single device. Web applications require Internet access, and mobile solutions require prior installation on a mobile device, so think about what operating system your solution should run on.
Another thing that software development companies always ask about is the functionality of the solution. Prepare yourself for questions related to the language versions and integration with other systems. If the product has to be connected to an external database, the company will certainly ask you how often the solution should update information, whether the data flow will be one- or two-way, and which system will be superior. Also, it pays to prepare for questions about the number of new records added at a specific time, for example, during the day, week, or month. A record is a set of data, for example, a record in a restaurant application with the menu is not only every dish but also every single order. The software development company will also ask questions related to functionality such as payments, geolocation, advertising, and notifications to know which of these features are essential and which you can (temporarily) do without. When your company already has some system, a software development company may ask whether the new solution is to replace the old one or be integrated with it.
What's your budget?
Budget questions sometimes provoke negative reactions. Some clients avoid answering, explaining that they expect a product pricing. However, it is not worth hiding your initially adopted financial assumptions. Knowing them, the IT service provider can determine whether for the given amount it is possible to build a product that meets expectations, or it will be necessary to slightly modify it and focus only on the most important functionalities. This does not mean that you will get a lower quality product for a smaller amount. A professional software development company will always provide you with efficient products. However, bear in mind that decreasing the implementation costs means compromises such as giving up some functionalities that are not essential. Also, an experienced analyst in the software development company will point out the most expensive elements of the product specification and those that are not essential for its operation and will propose reasonable alternatives. Technological products can always be developed in a few stages, adding in each one functions that were previously not implemented because of budget limitations.
When the budget for the product is obtained from some grants, which often involves additional formalities, such as a specific implementation schedule or functionalities that can be verified during audits, it’s good to mention it during your conversation with the software development company.
What is the project deadline?
Another aspect that might be mentioned during the conversation with a software development company is the schedule. IT service providers usually ask about the preferred approximate date of starting a project and delivering the product. Also, you might hear questions about whether the deadline is non-extendible and whether these assumptions result from the company's internal arrangements or external conditions. The external conditions include obligations towards clients or formalities related to a grant and the need to comply with the schedule included in the application.
What are the organizational structure and decision-making processes in your company?
The organizational structure and decision-making processes are also significant not only when starting the project and completing all formalities but also during development. Communication between a software development company and decision-makers factor into not only the method of creating the product but also the time of the project’s initiation and duration. For this reason, the IT service provider wants to know whether the contact person can make decisions, or is only an agent who provides information, what is the decision-making process of a potential client, and what people or departments will be involved in the project implementation procedure.
Additional questions that startups might hear
Startups who want to create a technological product may be asked about their business model, strategy, and the planned marketing campaign to discuss the sale and promotion of a product. Ask yourself, what distribution channels am I going to have? How will I reach users? How valuable is my product? Answers to these questions can help software development companies understand the context. They might even provide some valuable advice related to the solution. Bear in mind that IT services providers employ developers with extensive technical and business knowledge, which might turn out to be helpful in your startup.
Questions related to abandoned projects
When you have an abandoned IT project and you are looking for a new provider, be prepared for additional questions. A software development company will ask why the product was not finished, in what technology it was written, and whether it was created internally or by another supplier. Also, it is important to discuss any previous difficulties and problems with implementing the project. The software development company might ask about access to the full source code and technical documentation and the copyright situation. Sometimes is more profitable to build a product from scratch than try to fix and complete an abandoned project.
When talking with a software development company, organizational, technical, and business issues are discussed. Preparing yourself for the above-mentioned questions before the first conversation can often result in feedback about estimated costs at the end of it.