Scaling Our SaaS Gross sales Coaching Platform with Rockset


Fashionable Snack-Sized Gross sales Coaching

At ConveYour, we offer automated gross sales coaching by way of the cloud. Our all-in-one SaaS platform brings a recent method to hiring and onboarding new gross sales recruits that maximizes coaching and retention.

Excessive gross sales workers churn is wasteful and unhealthy for the underside line. Nevertheless, it may be minimized with customized coaching that’s delivered repeatedly in bite-sized parts. By tailoring curricula for each gross sales recruit’s wants and a focus spans, we maximize engagement and cut back coaching time to allow them to hit the bottom operating.

Such real-time personalization requires a knowledge infrastructure that may immediately ingest and question large quantities of person information. And as our prospects and information volumes grew, our authentic information infrastructure couldn’t sustain.

It wasn’t till we found a real-time analytics database referred to as Rockset that we may lastly combination hundreds of thousands of occasion information in beneath a second and our prospects may work with precise time-stamped information, not out-of-date data that was too stale to effectively support in gross sales coaching.


conveyour-rockset-1

Our Enterprise Wants: Scalability, Concurrency and Low Ops

Constructed on the rules of microlearning, ConveYour delivers brief, handy classes and quizzes to gross sales recruits by way of textual content messages, whereas permitting our prospects to watch their progress at an in depth stage utilizing the above inside dashboard (above).

We all know how far they’re in that coaching video all the way down to the 15-second section. And we all know which questions they bought proper and unsuitable on the most recent quiz – and might mechanically assign extra or fewer classes based mostly on that.

Greater than 100,000 gross sales reps have been educated by way of ConveYour. Our microlearning method reduces trainee boredom, boosts studying outcomes and slashes workers churn. These are wins for any firm, however are particularly necessary for direct sales-driven corporations that continuously rent new reps, a lot of them recent graduates or new to gross sales.

Scale has all the time been our primary problem. We ship out hundreds of thousands of textual content messages to gross sales reps yearly. And we’re not simply monitoring the progress of gross sales recruits – we monitor each single interplay they’ve with our platform.

For instance, one buyer hires practically 8,000 gross sales reps a 12 months. Just lately, half of them went by way of a compliance coaching program deployed and managed by way of ConveYour. Monitoring the progress of a person rep as they progress by way of all 55 classes creates 50,000 information factors. Multiply that by 4,000 reps, and also you get round 2 million items of occasion information. And that’s only one program for one buyer.

To make insights out there on demand to firm gross sales managers, we needed to run the analytics in a batch first after which cache the outcomes. Managing the assorted caches was extraordinarily exhausting. Inevitably, some caches would get stale, resulting in outdated outcomes. And that will result in calls from our consumer gross sales managers sad that the compliance standing of their reps was incorrect.

As our prospects grew, so did our scalability wants. This was an amazing downside to have. Nevertheless it was nonetheless an enormous downside.


conveyour-rockset-2

Different occasions, caching wouldn’t lower it. We additionally wanted highly-concurrent, prompt queries. For example, we constructed a CRM dashboard (above) that supplied real-time aggregated efficiency outcomes on 7,000 gross sales reps. This dashboard was utilized by a whole lot of center managers who couldn’t afford to attend for that data to come back in a weekly and even each day report. Sadly, as the quantity of knowledge and variety of supervisor customers grew, the dashboard’s responsiveness slowed.

Throwing extra information servers may have helped. Nevertheless, our utilization can be very seasonal: busiest within the fall, when corporations deliver on-board crops of recent graduates, and ebbing at different occasions of the 12 months. So deploying everlasting infrastructure to accommodate spiky demand would have been costly and wasteful. We would have liked a knowledge platform that would scale up and down as wanted.

Our last problem is our measurement. ConveYour has a workforce of simply 5 builders. That’s a deliberate alternative. We might a lot slightly preserve the workforce small, agile and productive. However to unleash their inside 10x developer, we wished to maneuver to the perfect SaaS instruments – which we didn’t have.

Technical Challenges

Our authentic information infrastructure was constructed round an on-premises MongoDB database that ingested and saved all person transaction information. Linked to it by way of an ETL pipeline was a MySQL database operating in Google Cloud that serves up each our giant ongoing workhorse queries and in addition the super-fast advert hoc queries of smaller datasets.

Neither database was chopping the mustard. Our “dwell” CRM dashboard was more and more taking as much as six seconds to return outcomes, or it could simply merely trip. This had a number of causes. There was the massive however rising quantity of knowledge we have been accumulating and having to investigate, in addition to the spikes in concurrent customers resembling when managers checked their dashboards within the mornings or at lunch.

Nevertheless, the most important motive was merely that MySQL shouldn’t be designed for high-speed analytics. If we didn’t have the suitable indexes already constructed, or the SQL question wasn’t optimized, the MySQL question would inevitably drag or trip. Worse, it could bleed over and damage the question efficiency of different prospects and customers.

My workforce was spending a median of ten hours per week monitoring, managing and fixing SQL queries and indexes, simply to keep away from having the database crash.

It bought so unhealthy that any time I noticed a brand new question hit MySQL, my blood stress would shoot up.

Drawbacks of Various Options

We checked out many potential options. To scale, we thought of creating further MongoDB slaves, however determined it could be throwing cash at an issue with out fixing it.

We additionally tried out Snowflake and appreciated some points of their answer. Nevertheless, the one large gap I couldn’t fill was the dearth of real-time information ingestion. We merely couldn’t afford to attend an hour for information to go from S3 into Snowflake.

We additionally checked out ClickHouse, however discovered too many tradeoffs, particularly on the storage facet. As an append-only information retailer, ClickHouse writes information immutably. Deleting or updating previously-written information turns into a prolonged batch course of. And from expertise, we all know we have to backfill occasions and take away contacts on a regular basis. Once we do, we don’t need to run any stories and have these contacts nonetheless displaying up. Once more, it’s not real-time analytics for those who can’t ingest, delete and replace information in actual time.

We additionally tried however rejected Amazon Redshift for being ineffective with smaller datasets, and too labor-intensive basically.

Scaling with Rockset

Via YouTube, I realized about Rockset. Rockset has the perfect of each worlds. It could actually write information shortly like a MongoDB or different transactional database, however can be actually actually quick at advanced queries.

We deployed Rockset in December 2021. It took only one week. Whereas MongoDB remained our database of document, we started streaming information to each Rockset and MySQL and utilizing each to serve up queries.

Our expertise with Rockset has been unbelievable. First is its velocity at information ingestion. As a result of Rockset is a mutable database, updating and backfilling information is tremendous quick. Having the ability to delete and rewrite information in real-time issues rather a lot for me. If a contact will get eliminated and I do a JOIN instantly afterward, I don’t need that contact to point out up in any stories.

Rockset’s serverless mannequin can be an enormous boon. The way in which Rockset’s compute and storage independently and mechanically grows or shrinks reduces the IT burden for my small workforce. There’s simply zero database upkeep and nil worries.

Rockset additionally makes my builders tremendous productive, with the easy-to-use UI and Write API and SQL assist. And options like Converged Index and computerized question optimization get rid of the necessity to spend worthwhile engineering time on question efficiency. Each question runs quick out of the field. Our common question latency has shrunk from six seconds to 300 milliseconds. And that’s true for small datasets and enormous ones, as much as 15 million occasions in one in every of our collections. We’ve lower the variety of question errors and timed-out queries to zero.

I now not fear that giving entry to a brand new developer will crash the database for all customers. Worst case situation, a nasty question will merely eat extra RAM. However it would. Nonetheless. Simply. Work. That’s an enormous weight off my shoulders. And I don’t must play database gatekeeper anymore.

Additionally, Rockset’s real-time efficiency means we now not must take care of batch analytics and rancid caches. Now, we will combination 2 million occasion information in lower than a second. Our prospects can take a look at the precise time-stamped information, not some out-of-date by-product.

We additionally use Rockset for our inside reporting, ingesting and analyzing our digital server utilization with our internet hosting supplier, Digital Ocean (watch this brief video). Utilizing a Cloudflare Employee, we recurrently sync our Digital Ocean Droplets right into a Rockset assortment for simple reporting round value and community topology. This can be a a lot simpler method to perceive our utilization and efficiency than utilizing Digital Ocean’s native console.

Our expertise with Rockset has been so good that we at the moment are within the midst of a full migration from MySQL to Rockset. Older information is being backfilled from MySQL into Rockset, whereas all endpoints and queries in MySQL are slowly-but-surely being shifted over to Rockset.

When you’ve got a rising technology-based enterprise like ours and want easy-to-manage real-time analytics with prompt scalability that makes your builders super-productive, then I like to recommend you take a look at Rockset.



Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles