Will your business take this vendor, for better or worse, until death do you part?
At Shrine, we talk a lot about leveraging existing solutions. Used correctly, they can save months of development and thousands of dollars in cost. But there can be downsides.
Using off-the-shelf software in your app development comes with the risk of vendor lock-in. What’s “vendor lock-in,” you ask?
Let me explain this further with an example. Let’s say you need cloud infrastructure for an app that you’re building. You can sign up for Amazon Web Services (AWS), and they will take care of all your hosting and deployment needs. Great! That’s one less thing you have to worry about.
But what happens if you become unhappy with AWS’s service? What if they raise their prices? Or maybe you’re using a smaller provider who you’re happy with, but they are acquired by another company. Can you just call up and cancel your account?
Not so fast. Switching vendors is not like switching your phone plan. Your business is likely tied to a contract with each vendor. More importantly, critical infrastructure could be dependent on a service or product that the vendor is providing. You can’t simply remove one piece without impacting everything around it.
Vendor lock-in puts your business at the mercy of:
- Price increases
- Acquisitions and shutdowns
- Slow product development
- IP/Valuation risks
Handcuffing yourself to the nearest software
If you have a vendor providing a core piece of functionality for your product, and you’ve built your product in such a way that only that specific vendor works with it, then they’ve got you by the jugular. And they know it.
I once heard a joke about AWS in particular. The joke was “If you call up Amazon about a $1000 AWS dispute they will give you a discount; if you call about a $1,000,000 dispute they will hang up the phone”. Amazon can hang up because they know if you have that large of an AWS bill, you are so locked in that there is not much you can do and therefore no reason to give you a discount. If you are dependent on a service like AWS, then Amazon can raise your prices and there is not much leverage.
I don’t mean to rake AWS over the coals on this; they provide a useful, reliable service that many businesses use. This is just one example of vendor lock-in that I’ve seen prevent many businesses from improving their product simply because they can’t afford to switch providers.
Locked-in then shut-down
If you’re a startup, especially a VC-backed startup, being acquired by a larger company might be a dream come true. If your vendor is a startup that’s just been acquired, however, you might be on shaky ground.
Take for instance a former startup called Parse. Parse offered a one-stop service to provide all the data needs for Mobile App Developers so they could focus on the App while Parse focused on the back-end services. Sounds sweet, right? Well, it was sweet until Facebook bought Parse and then shut it down leaving App Developers scrambling to rewrite their entire back-end services.
A universal truth of technology is that it evolves at increasingly rapid rates. Relying on a vendor for a core piece of functionality could put your app at risk if the vendor stops innovating or building on their solution. If their development slows, your product goes stale.
Another thing to consider is if you are raising capital for your app, potential investors may frown upon the fact that core pieces are not owned by your company. On the flip side, they might be pleased to see you leverage existing solutions and focus on getting to market quickly. Working with one preferred vendor isn’t necessarily a bad thing. It’s just important to weigh the benefits and risks.
There are a few you can do to mitigate your risk of vendor lock-in.
- Architect your software in a way that makes vendors replaceable. Build clear interfaces and lines of responsibility in your system. There’s a delicate balance required, you can take it too far and end up with a lot of abstractions which makes the system heavier. If you need help figuring it out, reach out to our team; we’d love to help you prototype a solution (learn why we always start with a prototype here).
- Use an open-source solution instead. Find a free solution and integrate it into your development. This may cost in development hours more up-front but could lead to long term savings and protect you from vendor lock-in.
- Protect yourself in writing. If you are an early adopter of a given vendor’s solution, you may have the leverage to protect yourself contractually from price increases or losing out on rights to functionality, even in the case of an acquisition. Always read through vendor contracts thoroughly, and consult with an attorney if needed before signing. Don’t be afraid to push back on parts of a contract you’re uncomfortable with.
Vendor lock-in is a modern reality of software development. There can be many benefits of leveraging existing solutions; the risk of vendor lock-in shouldn’t keep you from considering them. I have seen many projects avoid a paid solution to ‘save money’ which then went on to spend far more in development costs building an inferior ‘custom solution’. If you understand the risks and weigh the benefits, you can save time and money working with a vendor while mitigating your risk of lock-in.
Purchasing vendor software can seem like a daunting process, but it’s easier when you work with a trusted, independent partner. Shrine Development would love to be your trusted partner if you are looking to launch or update an app. Contact us today to find out how we can help.