How to find the best product development companies?

Nov 30, 2021

Article Index (Jump directly to a particular section)

In a hyper-digital world where all businesses thrive to strengthen their on-demand reachability, technology partnerships are a crucial differentiator. Most recently, companies that embraced digitization could surpass the restrictions of the pandemic because they had a headstart in migrating to remote operations. The preparedness of their technology partners in enabling this transit swiftly and securely also had a major part to play in migrating to remote operations seamlessly.

Should you choose to outsource the whole or part of the project to an external product development company, you should never make haste while finalizing your product development partner. The right partner can not only save you time and money but also give you a headstart when it comes to competition.

Deciding upon an appropriate technology partner deserves a well-thought-out approach. Since the process is lengthy and complicated, we compiled the following guide to help find and finalize the best fit partner.

 

What types of companies you would need at various stages of product development?

If you are developing a smart product, be prepared to talk to a whole lot of companies.  Smart connected products involve full-stack IoT (Internet of Things) development.  Unlike most other product development practices that confine to a straightforward roadmap, the scenario with IoT is different and more complicated. Throughout the development cycle, you would be working with various companies that specialize in different engineering disciplines, manufacturing, supply chain management, certifications etc.

At the top of scoping, pre-development analysis, the core development itself is divided into mechanical development, electrical & electronics development, software development, connectivity and ultimately integration of all these disciplines into a consolidated product landscape. It is safe to say that IoT is equivalent to multiple numbers of full-scale developments.  

 Subsequently, the dependency upon diverse skills and resources comes naturally. 

In case you are outsourcing the development to one or more companies, we have compiled a stage-wise list of types of companies you might need to collaborate with. This will help you in deciding what you can do in-house and where you need an external partner to help.

 

Stage 1: Business Consulting

Type of Companies needed: Consulting firms for Market Research, Strategy & Management
This is the beginning of the pre-development stage. Most companies do this in-house but if you do go with an external partner,  the consulting partner would perform the following responsibilities:

  • Product Idea validation against market demands, trends & consumer behavior.

  • Gap analysis with existing solutions.

  • Regulatory & compliance validation wrt targeted geographies.

  • SWOT analysis of the product in focus to outline the optimal scope of performance.

  • PESTLE analysis to understand the all-around impact of the product.

  • Product scoping followed by blueprinting of all integrated systems.

 

Stage 2: Design & Prototyping

Type of Companies needed: Rapid prototyping firms for 3D printing and CNC machining, Firms for Electrical Engineering, Firmware Engineering, Mechanical Engineering, Industrial design, Mobile, Web and Cloud development.

The prototyping partner would produce a mock working version of the product. You would most likely hire only one firm at this stage that will coordinate all the pieces involved in designing, engineering and manufacturing your prototype. The prototype is the first step to test the expected output against expectations and end-user response. Since the prototype would work as a point of reference to improvement suggestions before going for development, expect your partner at this stage to possess the following skills, roles & responsibilities:-

  • Demonstrate a fully connected  IoT system with functional sensors, electrical hardware, wireless connectivity, mobile app and a web interface.

  • Manufacture and assemble all the physical components of the product for early user trials.

  • Act as a single point of contact for you while coordinating with other firms involved for various pieces of prototype development.

 

Stage 3: Production Design & Detailed Product Development

Type of Companies needed: Specialized development firms for Electrical Engineering, Firmware Engineering, Mechanical Engineering, Industrial design, Mobile, Web and Cloud development, and then specialized firms for manufacturing, regulatory certifications and supply chain management. 

As already discussed, IoT development comprises multiple development types at the same time. You would need to hire multiple firms and ask them to collaborate at this stage. Also, this stage consumes 80% of the product development budget. To understand the types of companies required, here’s a categorical explanation for each development type.

 

Physical Hardware Development

Type of Company: Developers & Designers (Mechanical, Firmware, Electrical & Electronics, Industrial Design)

Hardware is an essential component of IoT solutions. Careful selection of hardware development partners is necessary to avoid costly mistakes. You should be choosing a partner that has prior experience in building products for your industry. It is hard to find one firm that can specialize in all aspects of hardware development.  The complexity of this development varies from product to product such as from a wearable device to IIoT equipment. While choosing your hardware development partner, make a note of the following skills, roles & responsibilities.

  • End-to-end Print Circuit Board (PCB) development includes sensors, light indicators, actuators, microprocessors integration and other components.

  • Specialization in battery power optimization

  • Specialization in miniaturization of product form factor

  • The outer casing, 3D enclosures & attached external components development.

  • Experience in prototyping should be an advantage.

  • Experience in Design for Manufacturing and Assembly (DFMA).

  • Design thinking led product design

 

Software Development

Type of Company: UI / UX design and development (Mobile App & WebApp), Backend Development, Cloud Experts or full-stack developers

Since data streams throughout the IoT network, software development & integration works at multiple levels. Subsequently, the software development partner should be proficient with contemporary technologies in the digital transformation domain. This includes hands-on development experience in the following skills:

  • End-to-end UI / UX application development following SDLC standards. Emphasis on localization factors, thorough QA, and app-store publishing.

  • Back-end system development – This may be the longest of all stages as comprehensive database development is involved.

  • Integration – Integration of the hardware & software components, communication ports and other third-party devices or tools

  • Integration Testing – End-to-end QA evaluation at the network level for a range of functional test cases. This comes after Unit Testing.

  • Cloud development expertise in leading platforms such as MS Azure, Salesforce, Watson etc.

  • Data communication protocols: HTTP, MQTT, COAP, RESTful APIs etc.

Wireless Network Connectivity Development

Type of Company: Networking, Edge Computing, Tele-communications

Building the network for the internet of things should never go wrong. For IoT companies, networking could be outsourced to companies with prior experience in device communication regardless of sectors and the products. Given the importance of a reliable network for an IoT solution,  you must handpick a communications partner who excels in the following based on your use case: 

  • Long-Range Communication: Low-Power Wide Area Networks (LoRA), Low-Power cellular Networks (NBIoT), 4G/5G, WiFi, SigFox etc.

  • Short Range Communication: Bluetooth Low Energy (BLE), RFID, NFC, Zigbee etc.

  • Evaluate the connectivity partner based on their expertise in different messaging protocols such as HTTP, HTTP WebSockets, MQTT & AMQP etc.

  • Internet gateways and edge computing

Security Compliance Development

Type of Company: Cloud Security, Cyber Security Experts, DDoS Experts, Firewall Consulting etc.

We intentionally kept this separate because most IoT projects are prone to attacks due to improper security compliance.  We recommend hiring a dedicated security consulting firm for your IoT development. The security partner should hold proficiency in the following:

  • Cyber security auditing

  • Device Identity & Device Authentication using OAuth 2.0

  • User role & policy

  • PAN & WAN communication security including but not limited to Firewalls

  •  

Stage 4: Regulatory Compliance and Certifications

Type of Company: Compliance consulting & auditing firms, Certification consulting firms

For small-to-medium scale, IoT projects, market research firms as discussed in Stage 1 could perform compliance. For large-scale projects, we highly recommend outsourcing this part to a dedicated firm.  At this stage, the ideal firms should have unbeatable knowledge and experience of licensing, patent infringement laws, network regulations, environmental regulations and mass production policies that differ from region to region. The partner should assist you with:

  • Regulatory Compliance Certifications – CE, FCC, RED, NAL etc.

  • Telecom Certifications – GCF, PCTRB.

  • Industry-specific certifications – FERC, NERC, HIPPA, FMVV.

Stage 5: Mass Production

Type of Company: Contract Manufacturers

Since you already have a long line-up of core responsibilities to fulfill, it is recommended to outsource manufacturing on contract. A contract manufacturer (CM) would engage in an agreement called Manufacturing Services Agreement (MSA) with you. You can hire a CM via multiple channels such as Trade Fairs, Online communities or via consulting companies. Evaluate the CM partner based on the following metrics:

  • COGS / total cost: Take into account tooling, samples, prototypes, pilot series, OEM part purchases, and customization, packaging, shipping, duties, and payment terms. If the total cost is lower than increasing labor and utilities in-house, it is wiser to outsource.

  • Company size fit: A CM might not be ready to handle your project if you are too large a client. On the other hand, if you are their smallest client, they may not prioritize the project.

  • Product portfolio: Congruence in overall vision, industry, and product portfolio. If the CM has built products similar to yours, they’ll more likely do a better job producing your product.

 

How to find and finalize a product development partner for your project?

 

Step 1: Be clear on what you need

First things first, establish the basis of product development requirements and the qualification criteria to find a suitable partner.. By the end of this step, you should have a detailed Request for Proposal (RFP) document and a Product Requirements Documents (PRD) ready to be floated out.

  1. The PRD: A PRD should have details about the problem you want to solve, the solution block diagram or architecture that you think could be a solution, a detailed user journey in a graphical format, detailed technical specifications, and the details of the tech stack that could be used in your opinion. Be aware that everything other than the problem statement might change in later stages as you talk with more experienced product development partners. That’s their job – to find the most efficient solution to your problem.

  2. The RFP: A RFP document should be a concise document containing your company details, high-level details of the project requirement that you can pick from the PRD document, the proposed timeline of the project with clear milestones, the deadline for the vendors to respond to the RFP and the qualifications needed from the product development companies to be eligible for your project. Let us call it the “Partner Criteria Doc”

  3. Partner Criteria Document: Establish a basis of qualification to filter the development companies. This should be an internal document that goes into details of the qualifications needed from a partner firm. The qualifications could be:-

  • Total experience and domain experience required

  • Experience closer to your kind of project

  • Total budget from development to deployment stages.

  • Preferred engagement models – onsite, offshore or hybrid.

  • Roles demarcation: In-house & outsource.

  • Partner’s expertise: Fully experienced or team of freelancers.

  • Communication and transparency

  • Time Zone overlap

  • Size of the company

  • Annual turn over of the company

  • Years in business

While writing down the documentation, cover the development into 3 main categories as Mechanical, Software & Firmware. This can vary from project to project in the terms of outsourcing selective components. It is necessary to emphasize the following information:

  • Details about the MVP (Minimum Viable Product)

  • A high-level solution block diagram for clearer understanding.

  • Reference to the closest competitor (if any).

  • A tabular comparison of the ideated product Vs those in the business.

  • Technical as well as functional specs (high level only).

  • Service required either end-to-end product development or selective development only.

  • Effort estimation of all skills needed for the project across disciplines

  • Preferred engagement models whether onsite, offsite or hybrid.

Step 2: Find the product development companies that may be of interest

There are three channels where you can find good companies suitable for your kind of project:

  • Use your first-degree network: Start with reputed names in the business that you are familiar with. Talk to your friends who work in related fields and ask for recommendations. The best way to find a reliable development partner is to seek referrals from your personal network because you get the tried and tested, and the referred development firms take you more seriously too.
  • Google search and its nuances: You can always do an online search but there are a few nuances to how to do it right. Google prefers to give you localized results. For example, if you are in California and you search for “Product development firms”, you would most likely see firms that are based out of California, or even so the firms that are in your city at the top of the results. Do check them out but these firms should not be the end of your online search. Type in search keywords with a region suffix such as “Development firms in North America” so that Google knows that you are looking to get options from an entire region. A pro tip here – be cautious about using the prefixes “The best” or “Top” development firms because you might get paid promotional articles. Don’t trust such articles unless you trust the publication.
  • LinkedIn search, a good alternative: A lot of good engineering firms are not so good in search engine marketing (SEO) and they might not appear in Google search results, not on the first page at least. With LinkedIn company search, you can find some reliable firms too. The best part of a company profile in LinkedIn is that you can see the employees and you know the saying – “It’s the people who make a company great.”. If the employees have the expertise, they might be a good fit for you. You might also find someone in your network who knows one of the employees which might help you get a sweet deal.
  • B2B marketplace platforms, a MUST do: Online platforms such as Ioterra, Clutch, Upwork, Thomasnet etc. provide a single channel to find potential product development companies that fit well for your project. They can be a good starting point, and save a lot of your time in searching for good firms. When we ran an IoT engineering consultancy, we realized that time and again, most of the clients found it difficult to find a reliable development partner. To solve this challenge in the IoT ecosystem we started “Ioterra” – an online B2B marketplace to find IoT talent which could be individuals or companies that specialize in IoT. Every platform has its strengths. Ioterra’s value is that every product development company is rigorously vetted for its claimed expertise before they are accepted into the Ioterra network. Clutch claims to be a review/rating platform where they crowdsource the reviews from past clients of the firms. These platforms are worth checking out especially when you are short of time.

Given the scarcity of resources in IoT, you may also try start-ups and senior freelance resources. The challenge however is the medium you choose to reach these resources. Relevant platforms help to lessen the risk. Before sending out invites, it is advisable to do your own research on the selected companies.

Step 3: Audit the names in the list

By now you would have prepared a list of potential development partners as the output of step-2. It’s time to narrow down the list further. From this list, filter those who fit in your qualifying criteria based on pointers that are mentioned in the partner qualification document created in step-1. Consider their digital presence, previous projects, domain expertise, total industrial experience, and resource strength or more as per your criteria. Below are some pointers on how to audit the companies before you even talk to them.

  1. Stalk the website: You can get very valuable information from a company’s website. A well-maintained website leaves a good impression always but look for and take note of the below information from the website.

    1. Past projects and case studies related to your project and vertical

    2. Past clients which are known names

    3. Content related to the subject matter expertise

    4. The leadership of the company says a lot of the reliability

  2. Top leadership and important employees on LinkedIn: Whenever I am looking to hire a firm, or even apply for a job in a firm, I always make a point to check the leadership of the company on Linkedin. A company’s expertise and experience are clearly visible with the employee profiles on Linkedin.

  3. Social media presence: A good services firm should be active on social media – LinkedIn, Twitter, Facebook. You can corroborate the info you saw on the website with the info you see in the company’s social media channels. A good firm is always trying to publish good content and engage its target customers. They also publish content from their clients or partners which is a healthy sign of the good relationships the company tries to maintain.

  4. Other online presence: It is a very good sign if you can find content created by the firm or its leadership in authoritative publications around the world. It could be articles, podcasts or YouTube videos. They indicate the expertise and the recognition of the company in the industry.

  5. Financial health: Last but not the least, when you are looking to spend hundreds of thousands of dollars in product development, you need a reliable partner that can sustain for long because you would need support for at least 5 to 10 years down the line. You can easily check the financial statements of public companies but it gets tricky when it comes to privately-held companies. It is generally a good indicator if the company has sustained for 5+ years. You can check databases such as Crunchbase to snoop on the finances.

Having said that, the most important criteria is whether the company has the subject matter expertise to deliver what you want. The info you discover while auditing the companies should be considered in totality to rank the firms you like most. Do give the benefit of doubt to a few select companies that may not have an impressive digital footprint.

Step 4: Invite the shortlisted companies to quote

Now you are all set to talk to the shortlisted firms. This stage is technically called the Request for Proposal (RFP) stage. Keep the below documents handy created in previous steps:

  • Product Requirements Document (PRD)

  • Request for Proposal Document (RFP)

  • Non Disclosure Document (NDA)

It is a common practice to sign an NDA before sharing RFP with the product development firms but it is up to you to make a call based on how you feel about the firm. For example, I usually send the RFP if it’s a firm referred by someone in my personal network without first signing the NDA.

Some hacks for better RoI in the RFP stage: Below are a few tips on how to reach out to the firms in order to invite them to quote or participate in your RFP process so that you get the maximum out of this effort.

  • Ask your friend for an email introduction: Personal referrals work the best and getting an intro from the guy who recommended this firm will put you in the fast track for sure.

  • Linkedin connects and messages to the leadership: I often do this. The leadership of the company is keen to grow the network, and of course the clientele. You get better attention from the company if you go through them.

  • Use platforms such as Ioterra: Ioterra has a fully integrated RFP or Quote gathering tool which fast tracks your RFP process. It not only helps you finalize your development partner 1 to 3 months faster than average but also reduces the time needed by the project manager for the RFP process by 50%. You can get intros to qualified firms for the quoting process in one go. Ioterra can also manage the RFP process for you if it’s a big-ticket project. You can also find IoT individual resources on Ioterra to fill gaps in your in-house team.

  • Submit the contact form on the website: This is self-explanatory. I usually keep this as the last option.

Step 5: Meet with the firms and get quotes/proposals

Most product development firms usually respond to an inquiry, but some may not due to various reasons. Meeting the firms is an important step in evaluating a service firm. Even before you could invite proposals, you would want to talk to the firms and get a sense of their expertise.

Execute and exchange NDA over email: Before you share your RFP and PRD documents with the service firms, it is advisable that you get an NDA executed. You could use online tools such as DocuSign to make this process easy.

Set up meetings with the interested firms: I have seen a lot of back and forth emails just to set up a meeting. Since you would want to meet with 5 to 10 firms, these email exchanges might unnecessarily add delay and confusion. I suggest you use any of the below tools (some are free) to ease the setting up of meetings.

  1. Calendly
  2. Doodle
  3. CRM integrations such as Hubspot

Meet with the firms: I highly recommend sharing the RFP and PRD documents with the firms before you meet. This really fast tracks the process and you will be able to better judge a firm when you meet them – whether they understand your requirements or not, whether they have prior experience in the domain or not? This will save you a ton of time and avoid multiple meetings. You want to get started with your project quickly and get to market quickly. Don’t worry about the intellectual property (IP) because you have already executed the NDA. Trust me that no service firm is interested in stealing your idea.

Conversations during the meeting: You want to evaluate the firms as the outcome of the meeting and for that, you need to drive meaningful conversations which can give you deep insights into the firm’s capabilities. Below are some of the questions I ask the firms when I am looking for a development partner

  • What are the firm’s expectations out of you?

  • How will they handle a change of scope?

  • What do they do if things do not go as planned?

  • What’s their return rate of clients – repeat customers?

  • Do they work with 3rd parties as subcontractors? What parts of the project will be subcontracted? Can they work with a company you recommend?

  • Ask how to go about the project from their perspective.

  • What experience do they have building similar products?

  • How do they ensure the quality of deliverables?

  • How do they give post-delivery support? What is the warranty of their work?

  • Did they understand the use case? hear your project idea in their words?

  • Talk to the PM and lead developers directly. The PM responsible for your project should be a great communicator.

Respect the service firm’s time: Being a professional, please be upfront about your budget and timeline. If you want to start the project 6 months down the line, please say so. If you cannot spend more than $50k, please say so. You would be surprised that the service firms may go the extra mile to help you. If they cannot take up your project, they might know someone who can deliver within your constraints. Last but not the least, if you are not impressed by the firm and are not considering them, please say so when the firm follows up with you instead of keeping them in limbo. Do not feel shy or bad in saying “No”. The service firms are thorough professionals and would appreciate your decision and feedback.

Step 6: Evaluate and Compare the Received Proposals

Once you have received a sufficient number of proposals, scroll through each one of the proposals and evaluate the details. Though lengthy, this is the most important part of the process. At this point, you will need a strategic approach to filter the best applications. Identify the parameters to compare the RFP responses based on your partner criteria document and the notes from your meeting with the vendors. Consider the following metrics to execute a fair and accurate comparison.

  • Timelines & Deliverables: Evaluate the applicant’s development lifecycle approach and their expertise with Agile-Scrum or better methodologies. Check the tentative time to completion of all milestones.

  • Costing: The proposal should respect the budget you have assigned and justify the applicant’s cost proposed. At this point, you should have a clear understanding of the market rates.

  • Engagement Models: The preferred engagement model should be mentioned. Whether it is onsite, offshore or hybrid. In case of a decision deadlock, prefer hybrid models.

  • Effort Estimation: Factors like resource availability, the cost per resource, hourly billing rates, preparedness to scale and the attrition rate history must be taken into consideration.

  • Reporting: Apart from the development methodology, consider the tools they use, the proposed reporting format and approach to escalation (L1, L2, and L3).

  • Legal Compliance: When it comes to legal compliance, understand cross-border regulations, source code ownership, liability insurance, refund rules and other regulatory policies.

  • Warranty and support: What are the terms for post-delivery support?

  • Referral check with past clients: Make a point to talk to past clients of the firm. Ask them about the experience and why they liked this firm.

When it comes to finalizing a partner, do not narrow down the list to more than 3 companies for interaction. You would want to talk to these 3 shortlisted product development companies only to finalize your partner. Please do inform others that they are out of the play.

Step 7: Negotiations & Finalizing the Partner

You might already have a preference for one firm over others by this point. If you are sure of one particular firm, please go ahead. If not, then it is worth talking to all 3 of them again. At times, you might like a firm but they would have quoted higher than your budget, or they would have proposed a timeline that goes way beyond what you had in mind. Below are some pointers to discuss these points with the firm:

Ways to reduce pricing:

  1. You can ask for junior resources to work on non-critical aspects of the project.

  2. You can suggest paying a major chunk of the cost upfront to the firm in return for a discount

  3. You can extend the delivery timelines and ask for a fewer number of resources to work on the project over time

  4. You can remove some requirements from the scope of the project which are not must-have requirements

  5. You can discuss a post-delivery support contract with the firm on a retainer basis in return of a discount

  6. You might consider a revenue sharing model with the firm once you launch the product in return for a discount

Ways to reduce timeline:

  1. Similar to the pricing negotiations, you can suggest paying a major chunk of the cost upfront to the firm in return for expedited delivery timelines

  2. You can offer to pay more to hire more resources for the project on a contractual basis

  3. You might want to discuss time and materials basis engagement with the firm instead of a fixed bid arrangement

  4. You can add a premium payment on the achievement of a development milestone as per the expedited timeline.

Step 8: Contract Signing

Bring all stakeholders including legal entities on board. Draft a comprehensive contract that details all agendas agreed upon throughout the process above. If required, draft multiple versions of the contract as per the difference in cross-border jurisdiction. Extend the committed token amount.

If it helps and doesn’t affect confidentiality, announce your engagement with the product development partner on all social platforms.

Step 9: Strengthen your association

Commercials apart, a good ongoing relationship is at the backbone of great B2B partnerships. You not only do business but also win friends in the industry. Always acknowledge your product development partners and engage with them socially at private and public events to maintain a good relationship with your partners. This will ensure that the development process is carried out seamlessly and you get the right attention at the right time.

This guide is a consolidation of best practices from different case studies of the most successful projects implemented recently. The objective is to help the enterprises to get a starting point and pursue the exercise smartly.