When outsourcing your engineering tasks to a software development vendor, you should make sure you’ve picked the right company. To help you distinguish the good ones from the bad ones, we made a checklist of warning signs for business owners. If your vendor shows any one of these – it means you should be very careful and potentially reconsider your business relationship status.
Nobody enjoys getting tricked or misled by hollow promises, especially when it comes to doing business. As a software development company with considerable experience, Waverley understand the great responsibility engineering vendors have, and how great the cost of mistakes can be. Many of our current customers turned to us to help them deal with the consequences of damaging engineering relationships with other vendors. We’ve listened to their stories and figured that there are lots of universal features that make them similar in a way.
On one hand, from the point of view of the business owners, it seems hard to judge at a glance and choose a software development vendor ending up 100% confident about your choice. On the other hand, asking the right questions and judging by the behavior will allow you to construct the actual portrait of your potential business partner. The situations below can serve as little “red flags” that might be a sign of a bigger problem you should watch out for.
- The Sales Representative Agrees to Everything
Literally, everything you ask them for. Of course, business owners and company CEOs want their software product to be implemented exactly the way they’ve envisioned it and within the timeframe they’ve planned. Every single change suggested by the development team feels painful and hearing the words “Yes, we will do it” is their dearest wish. But don’t get tricked by shiny prospects. In fact, abundant promises might be a sign of “overselling”, just a fast-talk to hook you up as a customer, and then start changing the product development conditions on the go.
A reliable software development partner will, of course, follow your requirements, but will also be transparent and keep you informed if the technical decision will put another piece of functionality at risk, if there’s a more efficient tool to achieve the same thing, or if there’s a more future-proof way to develop a particular part of your software. With years of experience delivering projects, these guys won’t shy away from telling you if your time estimates are not quite realistic, because some important aspects were mistakenly excluded from the scope. The decision is always yours, but it feels great to have a technical partner who has got your back.
- The Pricing and/or Timing Differs Noticeably from Other Vendors
It always looks tempting when the service cost is much lower and/or the development time is much shorter than other software development vendors offer. But knowing how the software development business works, we’d say this should rather be suspicious. When ordering development services, customers must realize that developing a high-quality multi-functional omni-channel product is either costly or time-consuming, or even both, if the system is complex enough. If you are looking for a high-grade result, you’ll need to sacrifice: master software engineers work quickly and efficiently, but this work is expensive. Otherwise, you can hire a cheaper workforce, but the quality-yielding process will take longer. Developing a good software product quickly and with little funding is impossible. If your software development vendor provides a miraculously cheap, time-saving offer, you have to investigate the reasons behind it: either they have a ready-made piece of functionality they can rebrand to your needs instead of developing a new one, or some things “slipped” their estimate and you might end up spending twice as much time and money. Worst case scenario — you may receive a product of poor quality which will cost you a whole lot of stress and budget to fix this situation.
- You Never See the Final Estimate
The ultimate goal of every business negotiation is to get to an agreement. Unprincipled service providers go to all lengths to sign up a well-funded project as soon as possible. This includes signing the papers without voicing the actual exact timelines, costs and tasks to be covered. This might mean they don’t have your subject field expert (they claimed to have) who can carry out the estimation and are going to start hiring one after the customer agreement is signed. Or it means the final costs can skyrocket, because they’ll keep bending the scope to their own benefit. Withholding the details also allows these software development vendors to have additional maneuvering space in case they fall behind the schedule, fail to stick to the requirements, or suddenly decide to raise the payment rates. The safest option for the business owners and company CEOs is to have each and every serviced item well-defined and specified, knowing how much you are going to pay and for what exactly.
- You Never Meet Your Development Team
It’s absolutely normal to want to know people you are going to work with. If a software development company offers you to communicate exclusively through a project manager or a team lead, at best, and refuses to introduce your future development team to you, this raises a red flag. You should ask yourself “What are they hiding?” One of the options is that soon you’ll find out that your super-expensive US-based or Western European development team is actually a group of freelancers from India or Asia, whose services are much cheaper than what you paid for. Another tricky scheme that unreliable software development service providers use is telling the customer that their development team will consist of a couple of senior-level engineers, but giving the work to a bunch of junior specialists and interns instead. In this case, they will by all means try to avoid them being interviewed by your CTO, being communicated with directly, or have their code peer-reviewed. In the end, you’ll pay more without getting the expected result. Keep in mind that interviewing the candidates for your future development team and communicating with them directly on a regular basis are some of the best software development outsourcing practices that trusted and reliable software development companies employ.
- Your Project Is Not Top Priority
Once you’ve gone through the negotiation process and signed the contract without any particular concerns, this does not mean you can let your hair down and stop paying attention. Unfortunately, most pitfalls come to the surface after the actual work begins. The first wakeup call you may notice is the careless attitude. As soon as you figure that your calls with the team get cancelled or postponed way too often, staff replacement becomes a routine, the deadlines are shifted further and further, hurry up to look for another software development services provider before you’ve wasted too much time and money. Messy workflow and lack of coordination are the indicators of poor people management, high turnover rate, sluggish productivity, and the absence of an actual team (in the worst-case scenario).
- Your In-House Team Does Extra Work
This is an obvious fail. Your software development vendor is obliged to deliver the services you’ve sealed by the contract. We’ve seen cases when companies were forced to use their in-house or third-party services (and incur extra expenses, as a result) in order to develop a system component from scratch, or do the product testing, even though this was supposed to be done by their service provider. Very often, business owners go on with this because they are too short of time or budget to start the project all over again with a brand new vendor, are in a hurry to get the product released, or are simply desperate to have it finally done. But there is little chance that the outcomes will be satisfactory, anyway. If your vendor places the work they promised to deliver on the shoulders of your own in-house team, ask yourself – do you even need such a vendor at all?
- You Have to Micro-Manage the Team
For sure, as a customer, you need to stay on the same page with the development process and clearly understand how things are going on with your product. A truly professional and mature team will regularly provide you with the updates and communicate with you if they need to clarify the details, but they won’t get stuck unless you specifically tell them what to do, answer their question about a certain issue or approve their intermediary result unless it’s strictly necessary. Once your development team gives you the feeling that you must resort to micromanagement and use some tracking system to keep tabs on them monitoring their screens and counting how many hours they spend working, it means you’ve chosen the wrong team. If the people are already abusing your trust, this won’t solve the problem, anyway. Healthy business relationships should be grounded on confidence which comes out of visible results and team efficiency.
- The Developers Ask Unnecessary Questions
At the beginning of your partnership, you let your software development provider know the exact requirements for the product they develop. You can specify the programming language and technologies to be used or ask the team to provide their suggestions. In the process, both parties communicate regularly to settle down the details, find solutions for particular issues, get approvals, and for other work-related questions. It’s common practice. But you can be sure that something is wrong when your development team needs your approval for every trifle or asks for technical information they actually are supposed to know. We’ve heard those real-life stories about the overly communicative developers having too many calls with the clients, eventually found not having a clue about how to do the work. To avoid such situations, we strongly recommend that you conduct technical interviews with your potential team members and find out their skillset before it gets too late.
- The Previously Agreed-Upon Features Are Now Out Of Scope
Along with your cooperation agreement, you sign the Scope Statement – one of the most important documents describing and providing the details on the project objectives, requirements, deliverables, success criteria, participants’ roles, and other specific information. Once a service item is included on the scope statement, the client has all the rights to have it done by the development team. If your development team insists that the feature or functionality you are requesting is out of scope, just get back to your documents and re-read the points in question. Or they might be claiming that they are out of budget to develop a particular feature as they’ve exceeded the scope of another one to make it better. But this is not an excuse unless it was previously discussed and agreed upon with the client. Therefore, don’t fall for any manipulations and attempts to weasel out of responsibilities on the part of a dishonest software development vendor.
- They Ask for Additional Payment
It has become a common practice among the shady companies offering suspiciously low rates to fulfill the basic task and ask additional payment for making it work properly or fix the problem it has. One popular example is creating a button or block on the UI which in fact has no business logic behind it. But creating a fully-functional feature is actually their job. If it’s not working the way it should – it’s not a feature. Again, the use of double standards of this type is pure manipulation and endeavour to trick more money out of the customers. In order to avoid such situations, you must write down your partnership agreement and the associated documentation carefully thinking through every workflow detail. Having a reliable law and business consultant as well as an experienced technology expert at hand could be pretty helpful at the negotiation and documentation drafting stage.
Unfortunately, it’s possible to get into a toxic relationship even in business matters. We totally understand the wish of many business owners to save their budgets, enter the market as quickly as possible, and develop a high-quality product at the same time. But the good comes at a price. Trying to save on resource expenditures will eventually make you run into trouble with only more stress, and waste of time and money. We wrote this article to let you know about the typical situations that should keep you alert and raise suspicions.
On the bright side, there are still many trustworthy software development vendors out there. Numerous business owners are successfully partnering with their development service providers on multiple projects for years and even decades. For example, about 80% of our customers have been working with Waverley Software for quite a long time and on more than one project. This means there’s no reason to fall into despair and lose faith. The best way to outsource software development for businesses and startups safely is to set realistic goals and expectations, take a serious attitude, and think the details through beforehand. For negotiating law, business, and technology-related issues that you are not competent in, you can always use the assistance of the corresponding subject matter experts you know. We hope our little checklist here will help you steer clear of irresponsible vendors until it’s too late. We wish you good luck in the search for your ideal software development partner!