Thursday, November 7, 2024

Scaling Our SaaS Gross sales Coaching Platform with Rockset

Fashionable Snack-Sized Gross sales Coaching

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

Excessive gross sales employees churn is wasteful and unhealthy for the underside line. Nonetheless, 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 spotlight spans, we maximize engagement and scale 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 huge quantities of person knowledge. And as our clients and knowledge volumes grew, our unique knowledge infrastructure couldn’t sustain.

It wasn’t till we found a real-time analytics database known as Rockset that we might lastly mixture tens of millions of occasion data in beneath a second and our clients might work with precise time-stamped knowledge, not out-of-date data that was too stale to effectively help in gross sales coaching.


conveyour-rockset-1

Our Enterprise Wants: Scalability, Concurrency and Low Ops

Constructed on the ideas of microlearning, ConveYour delivers quick, handy classes and quizzes to gross sales recruits through textual content messages, whereas permitting our clients to watch their progress at an in depth degree utilizing the above inner dashboard (above).

We all know how far they’re in that coaching video right down to the 15-second phase. And we all know which questions they received proper and improper on the newest quiz – and might robotically assign extra or fewer classes based mostly on that.

Greater than 100,000 gross sales reps have been skilled through ConveYour. Our microlearning method reduces trainee boredom, boosts studying outcomes and slashes employees churn. These are wins for any firm, however are particularly vital for direct sales-driven corporations that consistently rent new reps, a lot of them contemporary graduates or new to gross sales.

Scale has all the time been our primary challenge. We ship out tens of millions 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 almost 8,000 gross sales reps a 12 months. 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 knowledge factors. Multiply that by 4,000 reps, and also you get round 2 million items of occasion knowledge. 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 varied caches was extraordinarily arduous. Inevitably, some caches would get stale, resulting in outdated outcomes. And that may result in calls from our shopper gross sales managers sad that the compliance standing of their reps was incorrect.

As our clients grew, so did our scalability wants. This was an awesome drawback to have. Nevertheless it was nonetheless an enormous drawback.


conveyour-rockset-2

Different occasions, caching wouldn’t lower it. We additionally wanted highly-concurrent, prompt queries. As an illustration, we constructed a CRM dashboard (above) that offered 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 day by day report. Sadly, as the quantity of information and variety of supervisor customers grew, the dashboard’s responsiveness slowed.

Throwing extra knowledge servers might have helped. Nonetheless, our utilization can also be very seasonal: busiest within the fall, when corporations carry on-board crops of contemporary 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 wanted a knowledge platform that would scale up and down as wanted.

Our remaining challenge is our dimension. ConveYour has a group of simply 5 builders. That’s a deliberate alternative. We might a lot moderately hold the group small, agile and productive. However to unleash their internal 10x developer, we wished to maneuver to the most effective SaaS instruments – which we didn’t have.

Technical Challenges

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

Neither database was slicing the mustard. Our “stay” CRM dashboard was more and more taking as much as six seconds to return outcomes, or it might simply merely day out. This had a number of causes. There was the big however rising quantity of information we had been gathering and having to investigate, in addition to the spikes in concurrent customers reminiscent of when managers checked their dashboards within the mornings or at lunch.

Nonetheless, the largest motive was merely that MySQL just isn’t designed for high-speed analytics. If we didn’t have the precise indexes already constructed, or the SQL question wasn’t optimized, the MySQL question would inevitably drag or day out. Worse, it might bleed over and damage the question efficiency of different clients and customers.

My group 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 received so unhealthy that any time I noticed a brand new question hit MySQL, my blood strain would shoot up.

Drawbacks of Various Options

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

We additionally tried out Snowflake and appreciated some elements of their resolution. Nonetheless, the one massive gap I couldn’t fill was the dearth of real-time knowledge ingestion. We merely couldn’t afford to attend an hour for knowledge 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 knowledge retailer, ClickHouse writes knowledge immutably. Deleting or updating previously-written knowledge 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 wish to run any stories and have these contacts nonetheless displaying up. Once more, it’s not real-time analytics in the event you can’t ingest, delete and replace knowledge in actual time.

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

Scaling with Rockset

By means of YouTube, I discovered about Rockset. Rockset has the most effective of each worlds. It may well write knowledge rapidly like a MongoDB or different transactional database, however can also be actually actually quick at complicated queries.

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

Our expertise with Rockset has been unbelievable. First is its velocity at knowledge ingestion. As a result of Rockset is a mutable database, updating and backfilling knowledge is tremendous quick. With the ability to delete and rewrite knowledge 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 also be an enormous boon. The way in which Rockset’s compute and storage independently and robotically grows or shrinks reduces the IT burden for my small group. There’s simply zero database upkeep and 0 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 automated question optimization get rid of the necessity to spend helpful 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 huge ones, as much as 15 million occasions in certainly one of our collections. We’ve lower the variety of question errors and timed-out queries to zero.

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

Additionally, Rockset’s real-time efficiency means we not need to cope with batch analytics and off caches. Now, we are able to mixture 2 million occasion data in lower than a second. Our clients can take a look at the precise time-stamped knowledge, not some out-of-date by-product.

We additionally use Rockset for our inner reporting, ingesting and analyzing our digital server utilization with our internet hosting supplier, Digital Ocean (watch this quick video). Utilizing a Cloudflare Employee, we often sync our Digital Ocean Droplets right into a Rockset assortment for straightforward reporting round value and community topology. It is a a lot simpler option 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 knowledge 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 wish easy-to-manage real-time analytics with prompt scalability that makes your builders super-productive, then I like to recommend you try Rockset.



Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles