This article provides knowledge and some of the questions you need clarification before hiring a software company. If you are interviewing a software development company and they are not able to clarify your questions, then you should take the time for a different company.
1.How long has the company been active?
All reputable and long-established software development companies are starting from the nascent companies, obviously. But when they were set up, did you want them to work with you? The answer to this problem is that depending on circumstances. Young companies are usually much cheaper than seasoned companies. So if price is a factor to consider and the project is about to launch not so important in business, then maybe try young companies. But if you’re doing a critical application for enterprises, you will need to be more careful. Software development experience is a learning process. Look for businesses that have been active for 5 years. That shows that they have the ability to solve the problems that they will encounter in their work.
2. What development process do you use?
There are many techniques of software development today. Companies with experience will be able to present a clear method that they use. But if you only get answers like:
“We have a comprehensive design process where we collect all requests and review the case, then we develop a design and then we go through the testing phase.”
it can be a company does not have the processes work effectively and thoroughly.
If that company talks about “Extreme Programming” or “Scrum” or “Agile,” then you are more likely to work with a software development company that employs the latest methods to get the most out of your work.
3. How do you limit risk?
Hiring a software development company is risky. Here are details 5 risks you should consider:
• The features will not meet your requirements
• These features will meet your requirements, but difficult to use
• Do not meet the planned schedule already set.
• Budget far exceeded initial estimates.
• Developer disappeared.
The processes the company uses to develop can help reduce the risk for both you and the developer. Specifically, the agile method mentioned above minimizes the first two risks. You will see progress on a continuous basis so that you can immediately check whether the features of the software are the features you are requesting and what the problem is that makes it difficult to use.
Estimating the completion time of a piece of software is thought to be one of the more difficult tasks that the development company has to do. Again, the method of implementation will highlight the difference here. If you are providing development schedule and see the progress every week, you will be easier to know what is happening.
The project risk will exceed the budget that can be restrained by using a fixed price contract. If you combine fixed prices with agile, you will be able to better understand how the budget is used during software development, also ensuring that the highest priority features are delivered. advance.
To minimize the risk of your company disappearing, be sure to hire only developers who:
• Have been active for at least 3 years
• With development projects need advanced software companies have a minimum of 5 years experience
4. Contract guaranteed
Software is never guaranteed is never at fault. Simply impossible. Even if the code has no errors, errors can arise due to the application build environment.
The answer you want to hear for this question is a discussion of the supplier support contract. If you later experience problems that have not happened before, you will need a support contract. Support contracts should indicate what is insured and not covered by the contract.
The simple fact is that the software will change over time. Why? Environmental change. Browser changes. Changing the OS … So it’s almost impossible to create code that will work well with components that do not yet exist and are not specified. A good support contract eliminates that risk.
5. Can I interview some of your clients?
They should say YES and give you a list of at least three of their old customers.
6. What is your testing process?
If you do not get an acceptable answer to this question, it may be a problem. A qualified software development company will be able to articulate what the testing strategy is. If it is agile (preferred), then they should talk to you about how the test is done throughout. That tester is a member of the team and you (or your representative) will also be a part of the team, reviewing the app regularly to ensure exactly what you are expecting.
7. Who owns the code?
There are some issues with this question. If the developer of the software keeps the source code of the application, you may have to pay the developer fee annually.
Not all software developers charge this fee, but there is also a risk to be made to avoid unfortunate circumstances.
8. How you support the application ?
Suppose that you have selected a development company and things are going well. You get the application software. It works fine for about 4 months. And then you encounter a problem. Now what? You send an email or phone call to the developer. They have time for you? Can they make it difficult for you?
These are questions that you may encounter in practice. You need software company committed to maintaining the stability of the software for at least a year. You could also consider paying the costs of software maintenance in time then. May be 15% per year which may also be more or less depending on the complexity of the software and what it takes to support.
Reference article from: Critical Questions You Must Ask Before Hiring Any Software Development Company