As a product manager, you are responsible for the vision of your SaaS product, ensuring that it delivers value to your customers and meets their objectives. To do this effectively, you need to have a clear roadmap that outlines the features and functionality you want to deliver, and when you want to deliver them. You will also need to decide if you’re going to build this functionality in-house or outsource to a 3rd party provider (the famous buy vs. build debate).
Evaluating 3rd Party SaaS Product Development Software
In the case where you’ve chosen to outsource, you must carefully evaluate third-party integrations for product development before making a selection. There are many options for outsourcing, with the embedded software market estimated to grow at 7% CAGR, reaching $21.5 Billion by 2027. We’ll explore the key aspects to consider to make sure that the vendor you choose can deliver the functionality, scalability, and flexibility to support your development processes now and into the future.
1) Breadth of Necessary Functionality
There’s no point embedded a third-party SaaS application component if it doesn’t deliver the functionality you need. So, right off the bat, broad utility is a crucial requirement. For embedded analytics, you should expect:
- Variety of data visualization types, such as KPIs, tabular data tables, and heatmaps
- Reporting on a broad scope of data sets for full visibility
- Interactivity such as filtering and drilling down
- Ability to set alerts and notifications, and schedule reports
- Customizations, such as complete white-label analytics capabilities
- Data write-back capabilities to build workflows
- Interactivity such as filtering and drilling down
- Custom data models so tenant users can customize their analytics
Finally, it’s great if the 3rd party SaaS development vendor you’re considering has all of this now, but they should also be continually innovating moving forward, which brings us to our next point.
2) Suitable Pace of Innovation
In today’s fiercely competitive SaaS world, 3rd party software vendors must be able to deliver new and improved functionality to users on a regular basis – and deliver on their roadmap promises. When you embed a third-party provider, this requires relying in turn on their roadmap promises.
The vital functionality you plan to deliver to your customers must be readily available to be shipped to production in a timely manner. If the third-party integration for product development doesn’t provide such functionality or it’s still in progress, a clear timeline is important to decide if you can wait, or if you need to find another solution.
When analyzing the 3rd party vendor and the functionality they offer, also think about the future. What are your product’s key differentiators? What opportunities do you have to innovate and bring new features or products to the market? Is the vendor able to support that?
For future planning, vendors that have a comprehensive set of functionalities that you can leverage will allow you to build different use cases supported within your product in a quick, self-service way.
It is also important to understand their pace of innovation, release cycles and how quickly they can add new functionality or improvements to their product that will benefit your product and users as well.
Understanding the vendor’s product vision, strategy, roadmap, and release plan will help you inform the decisions you make and ensure that you can become long-term partners supporting one another’s success and growth.
3) Support of Cloud Native Architectures
Cloud-native applications are developed and built specifically for the cloud. The Cloud Native Computing Foundation defines cloud native as technologies that, “empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds.
Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach….” There are many benefits to building applications with a cloud-native architecture. (We’ll be launching a whole series on that topic.)
Choosing a vendor that is natively built on the cloud means they can seamlessly fit into the way you operate and can be better integrated into your software lifecycle.
For example, cloud native architectures have become the standard for modern software development. Modern development and operations workflows deliver agility, allowing you to build, test/validate, and ship products faster.
Cloud native vendors can support continuous integration and delivery into multiple environments (development, staging, production etc.). Selecting cloud-native vendors will help you avoid delays in your current process as you continue to release and deliver value to your customers.
4) Data Integration
Your analytics vendor must be optimized for your SaaS data model, including being able to adapt and support large volumes of data and unstructured data. Ideally, your data will be kept within your environment, never leaving your account to be sent to a third party. This enables you to meet your users’ needs for data security and governance. Two key attributes are vital to achieving ideal data integration:
Ease of Connection
It should be easy to connect and work with the datasource and structures of your SaaS application. You need to be able to connect out of the box and have the ability to seamlessly model and optimize your data for analytics. You should have these abilities regardless of whether the source is a structured database or something semi- or unstructured such as NoSQL, document stores, files, or other services.
Support for Complex Data Use Cases
SaaS products are often designed to offer maximum data flexibility for their customers. Many apps allow customers to create their own fields to enable users to capture and store what s relevant to them. This results in customer data models changing over time. Any third party tools should be able to handle these more complex data structures.
5) Security Configuration & Multi-Tenancy
Multi-tenancy is a shared software architecture where a single instance of software serves multiple customers (tenants) with common access and privileges. The two most common types of data models in a multi-tenant architecture are:
Data is stored separately for each tenant, but the schema of the dataset is the same. You’d have a copy of each dataset for every tenant. The columns and fields would be the same, but the data loaded would be different. If this is your approach, integrating third party components will be a relatively straightforward process.
All tenant data is stored within the same dataset. In this case, you need a way to ensure that users accessing pages and reports are filtered for the data users from that tenant should see. When embedding 3rd party analytics, this requires record-level security with your analytics app. If your SaaS solution is one of the many that require multi-tenancy, your analytics must be able to operate within your architecture, such as offering SSO to enable a user/tenant-based security model. Row-level security is also a must. With microservices, you can integrate analytics functionality into your workloads without any heavy lifting. Specifically, your analytics app will have to support creation of the user roles, application of record- or column- level security to the necessary datasets, and passing the user role to the analytics components.
Embedding a third-party component will require integration into your software development lifecycle. To achieve a seamless integration, it’s important to select embedded products that deploy directly into your environment(s). With a self-hosted/deployed model, you can easily integrate directly with your multiple environments for dev, testing, QA, and production to support how your software lifecycle operates. Once you’re integrated across multiple environments, you’ll also need to look for vendors that support things like version management, content deployments, and configurations across the various systems.
7) Scalability and Performance
It is incredibly important to ensure your product’s architecture has a solid foundation so the solution you are building is scalable over time. Rather than provisioning servers to scale to the maximum capacity required, serverless architecture changes the entire equation. Serverless applications are comprised of independently scalable and managed functions, enabling you to use best of breed technology.
AWS is also particularly advantageous for embedding advanced analytics. Serverless functions, in particular, are ideal for meeting many of the unique needs of SaaS companies, such as data security and governance.
Final Purchase Decisions Selecting a third-party SaaS software to incorporate into your SaaS app involves much more than choosing shiny features. Like buying shoes for kids with room to grow or a coffee with room to add cream, consider how the vendor continues to improve upon their offering into the future.
Also evaluate how the component scales and fits into your entire development and delivery cycles.
Watch our video, Building Better SaaS – Incorporating 3rd Party Products, as our CTO, David Abramson,and Natan Cohen, Head of Customer Success, discuss the potential pitfalls and best practices that must be considered when using 3rd party technology within your product.