Vendor or Partner?
Due to the number of possible solutions that you may be seeking at any given time, it is not possible to cover everything that you may want to consider or ask specific vendors over time. There are lots of good articles already online that will give guidance on specific questions and details that you may want to review for specific projects – website, web app, native app, etc.
The reality is that working with a vendor is a relationship. And, like all relationships, if it starts off with a good foundation, it is much more likely to last long-term. Relationships based entirely on money are often not long for this world.
Below, is a guide for how I would recommend beginning a relationship with a vendor – whether for software development or, just about, anything else. I’ve been hiring vendors to support many business areas for over fifteen years. It took me the first ten years to figure out what I should be focusing on when beginning a new relationship.
Did they ask/engage about your values or mission?
Your values and/or mission is your identity. It is why your customers choose you, over someone else. If a vendor doesn’t understand who you are and what you represent, they are unable to connect their work with you and your organization in truly meaningful ways. Good vendors will research who you are, before you meet, or will try to understand who you are during initial conversations. If they aren’t asking these types of questions, be sure that you are continuing to research your options in the market.
Have you clearly defined your goals and objectives?
Your goals and objectives are the most important aspects of the project – they will define how it looks, acts, who uses it, and why. When hiring an individual or team to support you, it is not necessary to have a fully-designed solution. You do need to understand deeply understand the problem you are trying to solve, and have specific goals and objectives that you will work to accomplish. You will likely also want to be clear on the scope of the relationship you are seeking before you engage. Do you just need them to help with design? Will they code/build the solution? Do you need help with going to market, generating revenue and marketing? Your OKRs/KPIs will come directly from your goals and objectives.
What has the vendor built that has solved for similar desired outcomes?
Many times, we will ask vendors to show similar products or solutions that they have built, and we will receive examples that look or feel similar to what we are asking for. However, MySpace and Facebook were solutions that were similar in many ways, functionally, but had massively different missions, goals and objectives. In my opinion, it is much more valuable to understand how the solution provider thinks about solving for a problem, than what it looks like at the end. Understanding what previous customers requested, and the decision-making path that led them to the final solution is much more important than seeing that they have built pretty login and dashboard screens.
Will they provide multiple solution paths, and explain the pros and cons of each?
Are they able to code a solution from scratch, or do they use third-party libraries and templates? What are the pros and cons of each? Is it necessary to start with a native application, or will a progressive app or responsive website accomplish your goals? Can they describe the strengths of using different frameworks and languages, or do they only focus on a particular type of solution? In today’s world, things are changing constantly. It is not necessary to find someone who understands everything (that vendor doesn’t exist!). But, a good vendor will be able to describe multiple solution scenarios, and the pros and cons of each.
Are they able to describe how they have handled challenging customers in the past?
We all believe that we are good people, and if something is going to go wrong, it won’t be because we acted unfairly. However, things happen, and reality isn’t always in-line with our beliefs. All relationships have their ups and downs. What are their values and processes for handling challenging situations and clients? What support do they offer their employees? Do they have escalation processes in place that they can share?
What tools and processes will be used for communication, prioritization, and decision-making?
Are they already using processes that you understand and using tools that you are comfortable with? If not, do they have the ability to modify their workflow to make things easier on you, or can they support you in getting up-to-speed on how they manage their day-to-day? There isn’t a “right” answer for this, but it is better to know what you are signing up for, before you sign up. You may be a fast learner, and excited by picking up new tools and understanding new processes. Or, you may have limited time and energy, and prefer that they align with how you already work.
How involved do you want to be in the process?
Semi-related to the item above, but this is very important – particularly in new relationships. It is likely to set the stage for all future engagements, as well. Are you someone who wants to understand each decision, and be the final decision-maker in the process? Or, would you rather just focus at a high level, and only be involved when major issues or roadblocks occur? Do you want to test every feature as it is completed, or would you prefer to do more broad tests less frequently? Do you want to be cc’d on every message, or is that going to annoy you when you begin receiving 50 new emails daily? There are some “best practices” for this, depending on the type of project, but you will want to be honest with yourself and everyone else involved from the very beginning about the role that you want to play in the process.
How will both sides be held accountable during the relationship?
There is always a financial component to this, but that should not be the only consideration. For example, what is the expectation for you to respond to questions that they have? Or, if they hit something unforeseen, when should they alert you – only if it is going to create a delay in delivery, or regardless of whether it impacts the schedule? What is an acceptable over/under with regard to costs, dates, and feature requests? What happens if something happens outside of the agreement? I much prefer to work with simple, straight-forward agreements – if I receive a twenty page contract, it is always a red flag for me. However, accountability is imperative for projects and relationships to be successful, so ensure that this is taken into account.
Are their team members full-time employees, or do they use contractors?
This is not something that is “right or wrong.” It is something that you should understand before starting a project, however. Turnover can impact schedules and quality, and having an honest picture of the organization you may be working with can play into who you decide to hire. Personally, I have worked with great success with organizations that use a heavy percentage of freelancers and contractors, and others who only use full-time employees. There are benefits and pitfalls to both. However, understanding the environment allows me to make better decisions, such as how much project management or QA I may request, or how often I check in on the team’s needs/progress.
Do your due diligence.
All of the above is part of your due diligence, of course. But, at the end of the day, the only person looking out for you and/or your organization, is you. Check Glassdoor, Upwork, Google Reviews, Yelp!, and the myriad other platforms where users leave feedback. Ask if they keep a public GitHub, or engage with/support opensource communities by delivering new code/libraries or updating existing libraries that they use in projects. Gather a list of questions to ask any references that you may reach out to – there are many articles online with these types of questions. A few extra hours up-front can save you tens or hundreds of hours down the road. That can mean saved money, of course, but when I have had bad outcomes in the past, it wasn’t the money that bothered me the most. It was the lost time, stress, anger and frustration that impacted me in much deeper ways.