MongoDB Inc. has recently released certification program. There was lack of certification in the MongoDB ecosystem and after having worked with MongoDB for few years now, the news about MongoDB certification got me excited. I recently appeared for the MongoDB Certified DBA Associate Exam and am going to share a few details about the exam and my experience. MongoDB website has very sparse information, so I am hoping information here will help fellow exam takers.
Why get MongoDB certified now?
According to MongoDB – “Certification helps you establish technical credibility and facility with MongoDB and contributes to your organization’s proficiency in running applications on the platform.”
MongoDB is growing to be one of the preferred NoSQL databases in the market. Its flexibility in terms of the supported amount of data and ease of horizontal scalability and administration, both on-premise and cloud, is making corporates opt for MongoDB as the preferred next generation database.
With growing users of mongodb, this certificate would definitely make you stand out from the crowd. As the certification is available for a few weeks in a year, the number of certified DBAs would also be accordingly less. Hence, it is time to leverage the opportunity and become one of the few professionals certified for MongoDB.
Certifications offered by MongoDB
MongoDB Inc. is currently offering certifications
C100DBA: MongoDB Certified DBA Associate
C100DEV: MongoDB Certified Developer Associate
For both the certifications, MongoDB has 3 levels – Associate, Professional & Master. For now, MongoDB has released Associate level exam for both the certifications and has the other levels on the road map. Here, I would be talking in depth about the DBA certification and will discuss the developer certification in the future blog.
What does DBA Certification consist of?
According to MongoDB Inc., “A MongoDB database administrator has in-depth knowledge of run-time configuration, processes, scaling, backup and recovery, monitoring, and performance tuning for production MongoDB instances.”
My views about the exam is that it is designed to test the hands-on knowledge on MongoDB setup, administration and monitoring skills of the test takers. I have been working with production MongoDB sharded and replicated clusters on AWS for few years now, which helped me to take up the certification confidently. Most of the questions would definitely need some hands-on experience with MongoDB.
The questions were quite comprehensive and were divided into sections with each section having around 7 to 10 questions. The questions were mainly of multiple choice with single and multiple correct answers. There were also questions where one has to type in the answer in the simulated MongoDB prompt.
The test lasts 90 mins, and can have variable number of questions. There is no negative marking, and each question is weighted equally.
The sections covered are as follows:
1. Philosophy & Features
This section is to test the basic understanding of NoSQL and MongoDB concepts. Most of them were direct questions about JSON structure, collections and documents, fundamentals of replication and sharding. If you have good understanding of NoSQL concepts, difference between RDBMS and NoSQL, difference between Document Store vs. Key Value Store, MongoDB etc. this section should not be that difficult to answer.
2. CRUD Operations
CRUD stands for Create, Read, Update and Delete. This section deals with various CRUD operations on MongoDB. Main focus would be on updating partial documents, which would need knowledge of update operators on MongoDB. Though the section is quite straightforward, with options having a slight difference in the syntax, it turns out to be quite difficult to get them right without hands-on experience.
Questions here would test the in-depth knowledge of indexes. Most of the questions were use cases and right indexes for the use case. From this section, more emphasis was on comprehending the importance of correct indexes for a given scenario rather than the syntax for creating indexes. Emphasis on compound indexes can be expected. General experience in database and query performance tuning would be helpful for the section.
4. Aggregation Framework
Aggregation framework itself being an advanced concept in MongoDB, the questions were quite comprehensive. A question about framing an aggregation pipeline for a given scenario stands out. It was a single use case for 3 subsequent questions. Clear understanding of various reducers like $match, $project, $group in aggregation framework and the syntax would be a necessity to answer the questions.
This section had questions about availability concepts of mongodb and replication. The questions deal with replica set configuration techniques and best practices. MongoDB replica sets, priorities of nodes in replicaset, primary elections, arbiter’s role in election and respective configuration were the main focus.
Sharding is one of the features in which MongoDB has a lot to offer. So, I was not surprised to see the number of questions being more than other sections. Questions included philosophy of sharding, when to shard a collection, configuration of shards, processes involved in a sharded cluster and role of balancer. An in depth understanding of data migration between shards in a sharded cluster would be crucial to answer all the questions of the section.
7. Application Administration
The questions here were about journaling, authentication and authorization on MongoDB. Understanding of the admin database would provide a kick start for this section as most questions where about user administration. But working with mongodb journal would be a must as there were questions specific to the location and its importance.
8. Server Administration
This section was the most difficult section in terms of specificity. Complete knowledge of profiler, collection stats, explaining a query were the main focus. A clear understanding of outputs from various administration commands like mongostat is expected. Questions would be scenario based, where given the output of particular command, one would have to infer details about the health of the database.
I would be posting few sample questions for each section soon. Watch out for updates to the blog.
How to register for the Exam?
The information on MongoDB website about how to register and take the exam was really confusing. I had many questions about the exam until the last minute. The first step to give the certification exam is to register for a one week long test window on the website. You will be able to take the exam anytime during that window.
The exam is a web-proctored exam conducted by Software Secure Inc. You will have to find a quiet location where you would not be disturbed during the span of the exam. System requirements are:
1. Windows or Mac OS – Currently Linux is not supported by Software Secure.
2. Working webcam – You will be required to take clear a picture of a photo ID, your self and quick scan of the surroundings.
3. Working Microphone
4. Good Internet Bandwidth
You can register for the exam at https://education.mongodb.com/. There are no pre-requisites to register for the exam and also registration is free. There would be a practice exam to guide you through the login process and give you an idea about the type of questions.
There would be an initial system check for the above. On successful system configuration check, you would be prompted to pay $150 for the certification and take up the exam.
The result for the exam would be available 2-3 weeks following the close of the exam period. MongoDB would calculate the results based on the difficulty level of the questions for each test taker. On successful completion, you would be receiving a badge like the one below.
How do I prepare for the exam?
The best way to prepare for the exam is to have hands-on experience in working with MongoDB. There are various books in the market which you can refer to. We are also going to start a course on MongoDB Essentials. If you are interested to know more about the course or get notified on launch of the course, please fill out this form and we will get back yo you.
Good luck with your certification, and please let me know if you have any questions.