What do you do when you've just had the perfect idea for an application, software product, website, etc., but you have no idea how to bring it to life?
Or, what if your business process needs to be updated and automated? Whatever the case maybe, when creating or making changes to software, you'll need the help of a software development company.
You may think that finding a good software development company is just a Google search away, but is it really that straight forward?
The typical Google search for this keyword yields approximately 300 million results! How do you know which company to trust?
Well for starters, if you have any friends or colleagues who've gone through this sort of thing before, ask them for their recommendations.
There are also online forums on LinkedIn you can visit; even Facebook may be able to help you out. Getting feedback from other people who have already gone through the process gets you one step closer to working with the right company.
There are a lot of companies to choose from, but at the end of the day, you will have to choose a company that can meet your specific needs. If your aren't sure where to start, you can begin your search by asking the following questions:
- How big (or small) is your project going to be?
What do you need? Will a simple application be enough or do you need something more complex? All software development companies are not created equal, meaning some can handle the big jobs while some cannot.
For instance, there are some companies who only specialize in one specific type of project, while there are others who only handle huge, long-term projects. At our company, we've handled all types of projects from creating complex social networks from scratch to websites for local businesses.
- What technologies will you be using?
Does your project require technicians that have expertise in dealing with legacy systems or other specific software technologies?
You may be able to find a company that can handle your needs for an affordable price, but this isn't always possible. Usually, expertise in a specific area can be handled best only by specific companies that specialize in it.
- Is there a specific date that the project must be completed by? Are you working on a deadline? Is there a convention or trade show taking place in the near future where you'd like to debut your new software? Or, are you comfortable with the project proceeding at a slow, leisurely pace?
It takes time to properly develop, test, and deliver software. If you need a project to be done quickly, be prepared to sacrifice features for time. A reputable software development company will help you make the right decisions for your needs, but be wary of those who try to feed you a pipe dream.
At Reztech, in addition to a core team of developers, we have a pre-selected team of contract developers that step in as the need for additional manpower arises and rapidly develop and deploy software applications. Make sure the software company you want to work with can meet short deadlines.
- What work style fits your needs the best?
When it comes to actual software development, there are generally three ways of doing things:
• Build a bare bones prototype as quickly as possible and make changes based on feedback from members of your target demographic.
• Examine the project from every angle imagine, create a comprehensive set of requirements, build many prototypes and models, before coming out with the final product.
• A balance of the two options
When it comes down to it, you must pick a company that will do the job in exactly the way you specified. But, it's important to note that many companies have a certain modus operandi, so you will have to see how well their methodology aligns with your personal vision.
On the plus side, you will get a first hand look at their level of adaptability. If you run into a company that insists on doing things a certain way, don't be surprised.
Take the time to listen to what they have to say, they may make some good points that you never considered before.
- Do you have a clear idea of what you want?
Will your requirements change as the project progresses?
If you will need to hit a moving target, it is a must that the software development company that you pick be flexible and responsive.
- Should you publish a Request for Proposal (RFP)?
If you have the time, consider creating an RFP and sending it to about ten software development companies.
This proposal should be detailed while simultaneously providing the reader with an accurate picture of what needs to be done. When you begin getting responses, dedicate someone to sift through the information, but they must understand both the software development and business needs of the company.
- What 's your exact budget?
Are you working with a small budget or are you free to spend whatever you like to bring your dream to reality? If you do have a budget, how did you decide which funds would go where? Was your decision based on heuristic assumptions, industry related studies, or past projects?
Your budget will not act as a buffer, hiding you from software development companies, but if it is small, prepare to sacrifice features for cost.
What happens after the project is completed?
Will you be able to maintain and upgrade the system once the technicians have completed the project and left you to your own devices? Preparation is key so, before the project is completed, it is essential that you find someone to maintain it in a manner that is pleasing to you. Most software development companies will provide you with some support and training after the job is completed, but this may not be enough.
Who owns the custom software?
The general rule of thumb is that custom software is owned by the person who pays for it, but you should still make sure that your contract stipulates this in a way that complies with the intellectual property laws of the state you are in.
This will provide you with protection when dealing with unscrupulous entities who may try to sell your solution to your competitors.
To make sure that everyone is on the same page, make sure that you have an explicit conversation with the software company about ownership.
- Are there any safety or security issues involved with the software?Will your new system contain significant amounts of classified information, medical information, proprietary business information, personal information, or other sensitive data? Is there a danger of physical harm if the software malfunctions?
It is important to note that only some software development companies have the proper insurance to work on high-safety or high security systems.
- Is user experience important to you?
Are you looking for a software solution that will solve a short-term issue? Or are you more interested in something that is highly polished and commercially viable?
For some projects, like websites designed to entice the general public and mobile applications, user experience is all-important. And it's no wonder, the general public loves beautiful screens that are easy to use, intuitive, and polished-looking.
Only some software development companies have the resources and expertise needed to guarantee excellent user experiences. If this is a requirement of yours, consider employing the services of a specialist UX company to work along with your vendor.
Important Questions to Ask Potential Vendors
If you seriously considered all of the above questions, you will have a decent idea of what you want and need. Thus, now it's time to look at potential candidates. To determine if their qualifications are a match for your needs, consider asking the following questions:
• Which, if any, vendors or technologies are you affiliated with? Unfortunately, there are some companies that favor certain products and vendors, even if they aren't the best product to fulfill your specific needs.
• How much experience do you have? If your vendor candidate has dealt with projects like yours before, find out if the job was done in a suitable manner. Ask the candidates for references, speak to old customers, and perform your due diligence to make sure that the vendor you pick can handle the required tasks.
• Is your work guaranteed? How so and for how long? Have you ever taken the time to read a licensing agreement for commercial software? Although, these documents are fairly long, all those words are telling you one thing; no warranty is implied or expressed. This may be fine for some, but it's unacceptable for a customer software development project.
• Who are the technicians who will be working on my project? Is it possible for me to meet them? If your project will involve lots of interaction with the project team, it's important that you take some time to feel them out and see if you get along. Relationships matter, especially if it is a long-term project. Since you and the vendor are a team for the duration of the project, honest and effective communication is essential.
• How much will this project cost me? It's important to get an accurate picture of the costs involved with your project. You will probably be given a range, but a roundabout number is better than a nebulous figure.
• How long will this project take to complete? Not only should the company give you a good idea of how long they will take to complete the project, you should also find out how often they do progress reports and how long will it take to see progress?
• What about security? Who is gong to have access to your systems and data, and why?
What steps will the company take to protect your personal, secret, and/or proprietary systems and data? Are there any penalties for violations?
• What happens next? Are they going to train your users? How much do they charge for minor enhancements and bug fixes after the guarantee period has ended?
The final two questions are posed to you:
• Do you like the software development company you are considering? • Are you excited to begin their project?
In conclusion, it is important that you do your due diligence when picking the right software development company for your needs.
Answering and asking the questions above will put you on the right track to success. If you are in the market for custom software built with custom code, get in touch with us at Reztech to find out how we can help you.