Omni Labs – Making the Most of Compose


Learn how startup Omni Labs uses Compose-hosted MongoDB and a combination of Node.js, React, and Spark Python to help bootstrap their startup.

We had the pleasure of meeting Vikram Tiwari, a full-stack developer at Omni Labs, at DataLayer 2016 in September. Tiwari presented on the topic of working with Compose to bootstrap your startup, based on his experience at Omni Labs, a bootstrapped startup in San Francisco that seeks to make it easier for marketers to work with data. We spoke with Tiwari and Alex Modon, CEO and co-founder, to learn more about their experience with MongoDB hosted on Compose.

Omni is an "automated visualization platform for marketers to see all of their data in one place, without having to manually do anything," explained Modon. While there are many BI tools available for companies to use, they still require quite technical specialization and time to manage. "With our platform, there's no pixel placement or database integrations. Users just sign-in to see all of their up-to-date marketing KPI's in a custom dashboard."

The company's name comes from the pursuit of omnichannel marketing - gathering and analyzing data across multiple platforms to construct the most effective cross-media campaigns. Omni enables their customers to stream raw reports from their current media partners via API integrations while transforming that data into constantly updated KPI's.

Omni is built on a Node.js backend with a React front-end and using Spark Python for data processing, with MongoDB and other databases underneath. "Our Mongo-powered app serves as a center point for our customers," explained Vikram. "Customers can do multiple queries on the data set, see past performance reports, or even set up alerts that get posted into a Slack channel."

All the server stacks are built around Node.js, and all the data that is collected goes through ETL pipelines built on Python and Google Cloud and processed by Spark. From there, the data is stored in Google's data warehouse, Big Query. "The data is processed back to the client and we push some part of that data into MongoDB and some of it into Redis, based on how real-time the needs are."

While Omni is still in the early startup phase, much of their focus is on building predictive analytics for customers. They use Tensorflow for much of the machine learning process. "Machines are really good at making decisions, as long as you feed them the right amount of data and tell them what success is. We're working really hard on rolling out products that are more predictive and help analyze opportunities to optimize campaigns, generate new media plans, and basically take care of vendor management."

Because the platform was built on various JavaScript tools (Node, JQuery, and React) MongoDB was an easy choice for Omni. The open-source MongoDB community, a plethora of answers available on StackOverflow, and a mature set of libraries also nudged them towards MongoDB.

As for why Compose, Modon added, "With any startup, the most valued resource is time. Compose removes the 'white knuckle' approach to database management. There's only so many hours in the day, so it's great knowing that our database is being taken care of by a company with a high level of quality and dedication."

If you have any feedback about this or any other Compose article, drop the Compose Articles team a line at We're happy to hear from you.

Conquer the Data Layer

Spend your time developing apps, not managing databases.