Obtaining the ideal relationship with the outsourcing partner starts with declaring your expectations clearly — more or less the same as a romantic relationship. I'm not the one to give you advice on your personal life, but when things come to the outsourcing vendors, I have some tips.
The first step to ensure that you and the outsourcing company fit is writing the software development proposal. Doing so sets up transparent communication and clear expectations.
In my experience, the whole process fails when the RFP itself isn't clear. So in this article, I'll focus on the elements that are crucial for creating a successful request for proposal software development.
Request For Proposal: Basics
What is RFP?
An RFP is a request for a proposal that ideally reflects the company's personality that looks for a vendor. It provides all your requirements and expectations from the collaboration and leads to a comprehensive and fair response.
When to write an RFP?
If you plan to source any services or goods, RFP is an incredibly valuable tool. You should write specifically a request for proposal for software when things come to sourcing IT services.
Why use the RFP?
The goal of a software development RFP is to ensure that the partnership between you and your IT outsourcing partner will be prosperous and successful for both sides.
Who writes RFP?
It depends. In a perfect world, there's a separate person who knows the project well and describes it in RFP. Usually, established businesses are the ones who can afford this. But for most companies, it's rather a luxury than a rule, especially for startups.
So in the case of startups or organizations that don't have well-defined processes, CEOs, co-founders, or product owners are those people who take the responsibility for writing the software development request for proposal.
RFP for Software: Structure
Company Description
It is in your best interest to give the most comprehensive overview of your company right at the beginning of the software development proposal. By 'comprehensive overview,' I mean the following:
- What is your company background?
- What is your company doing?
- What are your values and culture?
Imagine that you introduce your company to investors. Tell the story and try to be short, organized, and specific.
Project Overview
After giving background about your organization, be clear about why you are issuing the RFP software development. Here are some questions to answer:
- What are the problems to be solved?
- What have you tried that has failed?
- What are your limitations?
The more "why's" you provide, the more precise and the specific responses you'll get, and the easier the decision-making process will be. So if you are requesting a new website, be honest about your current website likes and dislikes.
Scope of Work
Think of the 'scope of work' part as the list of expectations. Are you seeking a long-term partner to help you build a product from scratch or a vendor to redesign your website? Set expectations about what type of relationship you are looking for and what you expect to get.
Being afraid that an outsourcing company doesn't meet your expectations is one of top problems with IT Outsourcing. Check out the article to find how to solve it.
For example, it may sound like: "I expect you to help me build a web and mobile app. The scope of work includes technical discovery, UX&UI design, full development, release and after release support."
Then dig deeper and break it down into more exact tasks. If you want specific features to be included, create features breakdown or user stories. Again, the more details you share, the better software development proposals you'll get.
Deliverables
We've approached the core of the software RFP and its deliverables, or in other words, the results you want to have after collaboration. The rule is the same, articulate deliverables clearly. Is it a deployed iOS app to the App Store with 96% crash-free and 4.5+ rating or 15-20% website traffic growth?
As your prospect outsourcing partner, we can explain how we will help you reach your goals if you provide them upfront.
Technical Requirements
The next step is to provide your vendors with some technical details. And it's crucial. I've been involved in some software RFPs where we offered a plan that we later found wasn't ever to be implemented because we weren't aware of some platform requirements and technical restrictions.
Let's say that there could be an issue with programming languages. For instance, a product founder used to code in JavaScript and wanted to build an app with JS only to check code on his/her own. The technical requirements part is a good time to mention all these details.
Project Management
This section doesn't include PM methodologies such as Kanban or Scrum. Instead, use it to set up communication rules, such as:
- Project management tools: Jira, Notion, etc.
- Methods of communication: Slack, Gmail, etc.
This is also a good time to discuss whether you are interested in a fully remote solution, dedicated teams, or something hybrid.
Budget Details
When things come to money, it means we're coming close to the finish line. So the budget section shouldn't be something wordy. You can be very short and write the exact sum you're planning to spend on the project.
If there are some exceptions, for example, you are ready to spend more on the services of the right vendor, simply mention this in your request for proposal for software development.
Evaluation Criteria
Articulate within the software development proposal how you will evaluate the proposals you receive. This gives us an understanding of what you find most valuable and ensures that key points are not neglected.
From my experience, clients usually put timeline and price as a top priority. So in the RFP, it may sound like: "We'll be making a decision based on how fast you can deliver the final result and at what price."
Having this information, you can be sure that you and your vendors are on the same page.
Process Description
If I could name one part that clarifies the whole RFP structure, that would be the process description. What will be going on later? Describe steps that will happen after:
- Date when you expect to get the response;
- Date when you set up a call with a team;
- Date when you expect to get the detailed proposal.
It'd also be very useful if you mention who will be on the call. Is it going to be you together with some team members or the investors also would be there. Why does it matter? Because we prepare different information and focus on different things depending on who will be at the meeting.
3 Tips on Writing a RFP for Software
Tip#1 Share as Much as Possible
Transparency is the key. And it's not just a fancy phrase, but it works. If you have an existing design, attach it. It could be a Figma file or a clickable prototype. I know you may be worried about the privacy issues, but it's a matter of days to sign an NDA, and you're safe and sound.
I faced a situation when the client sent us the software development proposal with very little information attached and said they would provide more details after receiving he proposal. To bid for software projects like this would be a waste of time. Since the client won't get what they are looking for and we'll miss the mark.
Tip#2 Pay Attention to the Engagement Level
When we bid on software development projects, we are willing to overcome the expectations. That's why we're ready to spend extra time and provide potential clients with a proposal that makes them more comfortable with their decision.
For example, comprehensive market research was very important to one of our potential clients, so we were sure to include the time for making a detailed competitor's analysis and proto personas description to the estimate – not just the nuts and bolts of getting the work done.
A team that overgoes your expectations is a better partner than the one with an attractive check.
Tip#3 Give Some Space
Along with articulating all the requirements clearly and openly, you should leave some space for creativity. It's like balancing the surfboard. The main weight should be on the toes, but balancing on heels prevents you from falling.
If you set the requirements too strictly, the decision-making process comes down to price comparison.
Let's say you're asking for the JavaScript programming language only in your software RFP. It means that you cut all the rest. Though there could be teams that use no-code development, and they could build your product as good, and it'd be two times faster and three times cheaper.
To avoid this, give more freedom where possible.
Bottom Line
There is no one-off structure for a perfect software development RFP, but we all know whether it's a good or a bad one when we read it. If you don't have a separate person who creates RFP, take your time to write it correctly from the beginning.
Start with the more general information, and with every step give more and more details. You should balance between sharing the requirements and giving space. As a result, the proposals you get will not only be of higher quality, but chances are you will end up with the vendor you want.