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 recent method to hiring and onboarding new gross sales recruits that maximizes coaching and retention.

Excessive gross sales workers churn is wasteful and dangerous 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 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 information. And as our clients 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 might lastly mixture tens of millions of occasion information in below a second and our clients might work with precise time-stamped information, 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 rules of microlearning, ConveYour delivers brief, handy classes and quizzes to gross sales recruits through textual content messages, whereas permitting our clients to observe their progress at an in depth degree utilizing the above inner dashboard (above).

We all know how far they’re in that coaching video all the way down to the 15-second phase. And we all know which questions they acquired proper and mistaken on the newest quiz – and might mechanically 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 workers churn. These are wins for any firm, however are particularly necessary for direct sales-driven corporations that continually rent new reps, lots of them recent 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 observe 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 via a compliance coaching program deployed and managed via ConveYour. Monitoring the progress of a person rep as they progress via 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 obtainable 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 onerous. Inevitably, some caches would get stale, resulting in outdated outcomes. And that might result in calls from our consumer 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 excellent drawback to have. But it surely was nonetheless a giant drawback.


conveyour-rockset-2

Different instances, caching wouldn’t reduce it. We additionally wanted highly-concurrent, instantaneous 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 bunch 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 information and variety of supervisor customers grew, the dashboard’s responsiveness slowed.

Throwing extra information servers might have helped. Nevertheless, our utilization can be very seasonal: busiest within the fall, when corporations carry on-board crops of recent graduates, and ebbing at different instances 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 challenge is our measurement. ConveYour has a crew of simply 5 builders. That’s a deliberate selection. We might a lot moderately maintain the crew small, agile and productive. However to unleash their inside 10x developer, we needed to maneuver to one of the best 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. Related to it through 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 reducing the mustard. Our “reside” CRM dashboard was more and more taking as much as six seconds to return outcomes, or it could 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 research, in addition to the spikes in concurrent customers corresponding to when managers checked their dashboards within the mornings or at lunch.

Nevertheless, the most important cause was merely that MySQL is just not 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 day out. Worse, it could bleed over and harm the question efficiency of different clients and customers.

My crew 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 acquired so dangerous that any time I noticed a brand new question hit MySQL, my blood stress would shoot up.

Drawbacks of Different 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 preferred some elements of their answer. Nevertheless, the one massive 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. After we do, we don’t need to run any experiences and have these contacts nonetheless exhibiting up. Once more, it’s not real-time analytics in the event you 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 normally.

Scaling with Rockset

By means of YouTube, I realized about Rockset. Rockset has one of the best of each worlds. It may well 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 file, 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 lots for me. If a contact will get eliminated and I do a JOIN instantly afterward, I don’t need that contact to indicate up in any experiences.

Rockset’s serverless mannequin can be an enormous boon. The best way Rockset’s compute and storage independently and mechanically grows or shrinks reduces the IT burden for my small crew. 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 computerized question optimization remove the necessity to spend invaluable 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 one in every of our collections. We’ve reduce 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 foul question will merely eat extra RAM. However it would. 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 now not need to take care of batch analytics and rancid caches. Now, we will mixture 2 million occasion information in lower than a second. Our clients can have a look at the precise time-stamped information, 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 brief video). Utilizing a Cloudflare Employee, we recurrently sync our Digital Ocean Droplets right into a Rockset assortment for straightforward reporting round value and community topology. It is a a lot simpler strategy to perceive our utilization and efficiency than utilizing Digital Ocean’s native console.

Our expertise with Rockset has been so good that we are actually 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 have a rising technology-based enterprise like ours and want easy-to-manage real-time analytics with instantaneous scalability that makes your builders super-productive, then I like to recommend you try Rockset.



Recent Articles

Related Stories

Leave A Reply

Please enter your comment!
Please enter your name here

Stay on op - Ge the daily news in your inbox