Getting Started with MongoDB: How to Turn a Calculated Risk into a Big Success
It’s no secret that page load times affects your bottom line. Learn how implementing MongoDB helped SnagAJob scale out, improve runtime efficiency, and ensure data quality. We’ll walk you through the steps we took that ultimately allowed us to cut our response time in half, streamline administration, and provide greater functionality to our users.
Just over five years ago, my team at SnagAJob was facing a major issue: our site was growing constantly and our CTO was worried about how much more lead time we had before we would see serious performance problems on our site. It’s no secret that a lagging load time can lead to poor user experience and a slower production rate, both of which can have a serious impact to your bottom line. We were growing rapidly, and capacity planning was critical to proper scaling. We needed to take action, and fast.
Betting the Farm
The technologies we were using at the time would only allow us to scale up, but we needed something that would allow us to scale out with a virtual infrastructure rather than a physical infrastructure. I decided to make a big bet, proposing that we swap our technology, which had about a 30-year track record, for something that was only about a year and a half old.
While it was certainly a risk, our decision to move to MongoDB was a deliberate process. We were ready to take action to improve our database architecture, and after the first leap of faith to go with a relatively new technology, things moved along smoothly. It was clear that we would achieve our goals for efficiency and data precision.
Getting Started with MongoDB
The process began with a Hack Day. We pulled together a small team to build out a trial project and presented our learnings, which got everyone excited about this new technology’s capability. Then we studied the impact to estimate the total benefit of a migration to MongoDB. For a job posting to go live on SnagAJob, for example, our old technology would need to make 11 calls to the database. With our trial run of MongoDB, we were able to replace this complex and inefficient process with a single document, allowing us to accomplish the same task with just one call.
Continuing our evaluation, the next step we took was to scale out our trial run. We created a micro service to handle one small, non-mission-critical aspect of our database. Then after evaluating MongoDB’s performance with the micro service, we felt confident to take on the next step. We were ready to begin the process of a full MongoDB implementation.
In addition to implementing MongoDB, we had decided to overhaul our entire job seeker site. While this was a major task, the payoff of a streamlined database architecture and achieving a scaled-out version of our platform was well worth the effort. We implemented new servers, rebuilt the presentation layer from scratch, and built out RESTful APIs to prepare our site for success with the new technology. We were still taking a risk by putting our database in the hands of such a young company, but the performance of our trial projects helped us to gain the confidence to move forward assuredly.
The Payoff: Scaling Out with Virtual Infrastructure
Once implemented, the value of getting started with MongoDB was immediately recognizable. As our customers are always top of mind, we were most pleased with what the new technology allowed us to do for them. Average response rate dropped by 50 percent, improving user experience by eliminating the need for users to wait around due to long load times.
MongoDB also allowed us to offer greater functionality to our users. With improved efficiency of our database architecture, we were able sustain the rapid growth of the company without having to increase the size of the database team. The schemaless environment of Mongo DB made implementing changes almost effortless. Database releases became a "deployment step" of the past, i.e. were no longer needed. This efficiency dramatically increased our deployment frequency and has allowed us to better serve our users.
I credit our success with MongoDB to an amazing team of incredibly talented and intellectually curious developers and database administrators who were able and willing to adapt to this new technology. Our associates were motivated with the positive results of our trial runs, and the interactive course work available online through MongoDB University was crucial to getting our team up to speed on this new technology.
To achieve similar success with your ventures, it’s important to build and maintain a culture that fosters a renewed interest in learning and a determination to use the best tools for the job.
Final Thoughts and Next Steps
For those wanting to get started right away with MongoDB, the first thing to do is to download the code. It’s very small, and you can start with small trial tasks as we did that won’t cause you any problems. Next, sign up for a MongoDB User Group Meetup. I speak at the meetups in Richmond, VA, and D.C. regularly. Everyone in the community is incredibly knowledgeable and ready to help. If you can’t make it to a meetup, simply sign up for the Mongo 101 class through the MongoDB University to learn the basics and get started immediately. It’s completely free and is the best place for new users or potential users to find out everything they need to know about getting started with MongoDB.
Like most businesses in the tech industry, data is crucial for SnagAJob. Our data is our livelihood. We consider it our duty to preserve and protect the data of both the job seekers using our site and the businesses posting job listings. To do that—and to stay a step ahead of our competition—we had to take a calculated risk. Implementing MongoDB allowed us to cut our response time in half, streamline administration, and provide greater functionality to our users.
So if you and your team are worried about scaling your database to meet growing demand, or if you feel overwhelmed by the task of migrating to a new technology, rest assured that many others like us have taken this leap to MongoDB. Join us at a meetup or MongoDB World to learn more, and get started scaling your applications today.