When selecting a new software development vendor for your company, you need to consider it as a partnership. You and your team will be working with them on a regular/daily basis to build the best possible solution for your company and your clients, so you need to have trust in them.

Most technical leaders will only go through this process three or four times in their careers, so understanding the steps with which you should be validating your decision is vital.

Step 1: Requirements and growth

Requirements and growth

Look back to your planning phase and review your current requirements again to ensure you have selected a company that meets your needs. During the procurement process, it is easy to get distracted with skills or experience that you might not be able to utilize.

Check the following of each proposed member against your requirements:

  • Seniority
  • Experience with the required technology
  • Domain (industry) experience

Note: If the role does not require lead/senior experience, then don’t place a senior in that role. They will get bored and not be challenged just as if you hired on-site.

Can the company provide services outside of software development?

Your immediate requirements might be purely custom software development, though you may quickly require services outside of these.

Examples: Testing, Software Architecture, Systems Architecture, Deployment, Design, and UI.

Can the vendor grow their team with you over several years?

You need to consider the potential growth of your business and if you would need to look for another supplier to meet additional resource needs. Running two or more agencies on the same project gets complicated quickly, so ideally you would prefer a vendor that either has the reserved skilled members available or can get them quickly.

Step 2: Validate the credibility of the vendor

Validate the credibility of the vendor

There are thousands of software development companies available on the market; some are excellent and others less so. Do your research to ensure they are a credible supplier. Clutch is a great resource for checking this out: https://clutch.co/profile/itechart-group.

Request the potential vendor to provide testimonials from their existing clients. DO NOT REACH OUT TO THE VENDOR’S CLIENTS DIRECTLY — This is bad etiquette. The vendor will be able to provide testimonials and arrange contact with a suitable member of that company if requested.

Step 3: Staff and training

Staff and training

Once you have selected a vendor, you will be working with their remote team daily.

Remote shouldn’t mean distant

Quality firms will want to integrate their developers into your existing team to create an augmented team and extension of your existing team. This will increase communication within the team and improve alignment with the company objectives.

Ask the vendor these key questions:

  • Location
    • Will the vendor’s team be sitting in the same office or room?
  • Company retention rate
    • A high retention rate will show the vendor looks after their employees.
  • How do they hire?
    • What is their process?
  • Do they hire contractors to take these roles on behalf of the vendor?
    • If yes, this is a warning sign, as they cannot commit to a long-term agreement.
  • Time zone of members
    • Will the vendor's employees work in your time zone or theirs?
  • Duration of availability of the vendor’s employees
    • When are the members' holidays booked?
  • Local holidays
    • Do they follow your bank holidays or their local holidays?

Working so closely together, you will want to know these developers are working in good conditions and have their own training and growth opportunities.

You should have the opportunity to interview the proposed developers to validate their answers with what the vendor has told you:

  • What are their training practices (conferences, meetups, training programs)?
  • How do they collaborate?
  • What is their work environment like (computer, dual screens)?
  • What methodology are they used to (kanban, scrum, waterfall) and how do they implement it?
  • Have they used your tools before (video chat, messaging, etc.)?

Step 4: Maturity and location of the company

Maturity and location of the vendor

The maturity of the development company will determine the kind of experience you will have when working with them.

A newer vendor will not have many common processes in place, so they will rely on your product owner to decide how the team should work together.

A more mature vendor will have common processes in place already to offer support to companies with less experience in software development. These processes can cover communication, coordination, collaboration, language, testing, accountability/management and operations and offer valuable insights on how to work effectively as a high performance distributed team. The developers from mature vendors will be accustomed to following these working practices, so it will be easier to onboard with your processes.

Does the vendor have an on-site presence and understanding of the local market?

The vendor’s development team may be based abroad, offering the benefits of a distributed team, but also having on-site/local technical leadership and client management will reduce possible issues with communication, understanding core values, and ownership expectations.

Step 5: Contract terms

Contract terms

Reading the contract in detail is vital to ensure you understand the commitment put forward and to confirm the answers you have been given throughout the procurement process are the same as stated in the contract.

The majority of established vendors will not try to trick you, but certain details may not have been covered in discussions, so it is important that these are clear.

Key points to ensure you understand:

  • Compensation terms
    • Which currency do they expect to be paid in?
    • Do you have to pay tax?
    • Frequency of the invoices
    • Overtime policy
    • Period within which the invoices are to be settled
    • Is an initial deposit required?
    • Current rates
    • Rates increase over time
  • Staff terms
    • Starting date
    • Working hours
    • Bank holidays
    • Do you have to cover holiday costs?
    • Reducing/terminating notice period of development activities
    • Replace a member process, time and costs
  • On-site visit expenses
    • Visa costs
    • Transportation costs
    • Medical travel insurance
    • Daily expenses: accommodations, transportation and daily allowance costs
  • Generic business agreements
    • Location of the entity of the vendor’s company with which you are entering into an agreement
    • Confidentiality
    • Non-solicitation
    • Ownership and IP rights
    • Warranties and liability
    • Governing law and compliance

Author's note

No doubt that hiring a software development company is a tedious task, but, fortunately, perfectly achievable. To help you solve this crucial entrepreneur dilemma, we've put together the above roadmap.

If you'd like to delve deeper, check out my LinkedIn. There, I share more data-driven insights on my webinars and online workshops.