Well, your company has already accomplished its ideal buyer persona by exploring all – as it might seem – the needs, preferences, and pains of your client base. Also, you, probably, think that it’s a high time to mark this task as done and enjoy prosperous cooperation. Sorry, but you cannot be more wrong. Outsourcing is exacting, thus not always it works out the way you want to. The thing is that you may start estimating the project, conducting industry analysis, but the thing that you get eventually is a continual silence on the other end of the line.
So, how to detect a reliable customer among all those wanting to cash in on you? We’ve created a checklist to follow up with. Here are some vital points to pay attention to:
1. Adequate Requirements
Success is a very controversial thing, given its multifaceted nature. A successful product is ambiguous, as well. That’s why before onboarding any project, you should compare all the requirements with real possibilities. It concerns not only viability and acceptance but also investments that a customer is going to spend on it.
Creating an eBay-like website spending 100$ and gaining as much revenue two days after the release – sounds a bit unreal, right? Time estimates are essential. Of course, it’s possible to create a product 1 hour after the offer is signed – but who will take care of the quality and UX? Well, if they want their website to look like this…
Things seem too bad now? Don’t worry, nothing terrible will happen if you find the right solution together with a customer. Actually, a well-structured team can tackle all misunderstandings. Presence of at least one Project Manager and Business Analyst in any project is a must at Redwerk. We’re doing this to prevent any issues connected with a spec and a workflow itself. Sometimes our customers can describe their requirements adequately but they lack technical background – and here’s where our specialists can come to help.
It’s evident that you need to provide your clients with as much information as you have in this or that field – but don’t try to take something that’s beyond your understanding or common sense.
2. Detailed Specifications
The first question that may appear in your head is ‘What actually a spec is?’. Well, a spec stands for a specification, that is a set of certain requirements and characteristics that a customer needs. In the ideal world, all of them are written in a document and discussed with a vendor. But do we have to state that it happens as rarely as you get your letters from Hogwarts?
The reality differs. Just a bit.
When a customer starts thinking of a product he doesn’t always have a complete image in his mind. He wants something tremendous and vitally important for every single living being in this world. Apparently, it has to be fulfilled with numerous features as fingerprint detector, MP3 player, and an oven to make cookies in. It looks pretty nice on a paper, but when learned in details, you start thinking, that unicorns have more chances to be real than this product does.
That’s a typical situation in IT, though. Project description will influence your plan and, of course, will serve as a basis for further collaboration. If you do not want to turn your workflow into the endless guessing game – ask for detailed descriptions. They do really matter. Your team will have to figure out why this or that feature is necessary. It will take additional manhours logged yet less time for a development itself. Don’t be afraid to ask – continue asking until you completely understand what customers want indeed.
3. Investments in Specs
Detailed requirements worth their weight in gold. They help you to avoid further misunderstandings, allow to plan and estimate better and save lots of time (and money) on discussing and re-discussing the further steps.
Customer’s vision of a project may critically differ from a developer’s one. Hence it’s better to check whether a customer is thinking one step ahead and wants transparency and a qualified development delivery, as well.
Technical writing isn’t a thing one can do in a few hours, because it defines the overall project scope. Obviously, it will take a certain amount of your time and will require some efforts to be made, but who said the development is an easy thing to perform? Writing specs is an essential part of this process and your customers have to understand its importance.
If they reject this option, all you need to explain is that the result of the work done partially depends on all these documents. Briefly, no written specs – no shaped results.
Are they still hesitating? Well, maybe that’s not the best option to start a cooperation.
4. Responsibility and Communication
It works for both sides. Answering all emails and calls, communicating directly with the team and put comments and edits on time – that’s a dream of each outsourcing company. Working on a project means divide responsibility, and each customer feedback brings changes into the workflow and makes it move further and on.
Software development lifecycle needs stability and if you spend your several days trying to reach out to your client – that’s merely a waste of time. However, don’t forget to state duties in the agreement – it will help you a lot with each step of development. You, probably, have already heard about SLA (Service Legal Agreement). It can be quite useful in cooperations of any kind. You simply describe a correlation between your estimates and the quality of a product itself. Regulations make sense and if your company writes them in details, it will help you in further cooperation.
5. Quality Assurance
To be honest, the main thing is whether they are going to test at all. This part of development is significant as hell; however, not all customers understand the necessity of providing quality assurance.
There are no limits to perfection as well as there are no projects without bugs. If you haven’t found any in your app, try better. Detecting all bugs requires time and a deep knowledge of a product itself. That’s why it’s better to give the responsibility of testing to that very team that wrote the code and knows where to look for flaws.
Having an unbiased point of view on the same issue also works well. So, try your best to persuade a client to interact while testing. Some findings may turn into features, not bugs.
6. Repositories and Issue Trackers
The first thing you need to do is to ask whether your customers are acquainted with such definitions. Repositories and issue trackers are vitally important so, make sure that they will work their best for both sides. Learn your customer’s infra if they provide you with it. But never try to start working without it.
On the client’s side, it will also bring stability and give an opportunity to check all manhours logged and resources spent. Even the simplest tracker can be of a great use during the whole development process and can help to solve issues appearing during the work itself. Consider this critical thing as a must and insist on its use from the agreement signing phase.
This is only a small scope to pay attention to. You may add some points considering your company specifications and requirements. But using even this very checklist will help you to benefit and choose the customers that are really comfortable to work with. Good luck!
Redwerk is a software development agency thats is always ready to create amazing products from scratch. Since 2005 we have been gaining experience in numerous industries including eGovernment, Media & Entertainment, eCommerce and many more. We’ve already taken part in and witnessed the birth of well-known projects all over the world while cooperating with startups, small and medium businesses and even governmental institutions. If you want your product to encroach on any market or simply drive your business to success – rely this task on Redwerk team.