Has becoming MongoDB Certified affected your life in any way, big or small?
Whether being MongoDB Certified has helped transform your career, connect with your community, or just see the world a little differently, we want to hear your story! MongoDB and the open source community want to learn from your success.
Since 2013, MongoDB has recognized a current MongoDB Certified Professional who demonstrates ingenuity, hard work, and expertise as the MongoDB Certified Professional of the Year. Tell us why you should be the next MongoDB Certified Professional of 2018 by answering a few questions here.
We'll choose a winner with the most interesting and compelling certification story. The winner will receive a free trip to the MongoDB Europe 2018 conference in London, including flight, conference pass, and hotel accommodation.
Submissions are open through October 4, 2018. Submit your entry today.
*See complete contest rules here.
The MongoDB Summer ‘18 Intern Series: From Hackathon to Haskell
Mihai Andrei is going into his senior year at Rutgers University, the alma mater of MongoDB CEO Dev Ittycheria. While Dev received his BS in Electrical Engineering, Mihai is studying Computer Science and minoring in Mathematics. Mihai is also extremely involved in HackRU, a 24 hour student run hackathon at Rutgers. Andrea Dooley : Hackathons are very popular amongst CS students. What roles have you played for Rutgers HackRU? Mihai Andrei : If you are an organizer you’re not able to participate in the event, but this coming year I will be one of two Executive Directors, essentially overseeing the entire thing. In the past I have played the part of Director of Finance for the event, so I know this will be a particularly challenging role, but nonetheless an exciting one. AD : You’ve been involved with HackRU for quite a while. Is that where you first learned about MongoDB? MA : I actually learned about MongoDB during a student demo at a tech talk on campus. The first time I ever used MongoDB was at a previous internship for a data warehouse application we were developing. I was looking online for internship opportunities in the software industry and came across an opening for the MongoDB internship program. AD : What made you interested in interning at MongoDB? MA : My previous experience interning has mostly been with financial institutions, so this time around I wanted to take a different route to a company with more emphasis on tech and tech culture. I was able to get a good sense of the culture during the recruiting process, so I was really excited when I got the offer. AD : Did you know our CEO was a Rutgers alum? MA : I learned that Dev attended Rutgers a bit later on, but I think it’s really cool that someone from my university became the CEO of such an awesome company. AD : What MongoDB Eng team are you on, and what projects were you responsible for this summer? MA : I’m on the query team working on the MQL model, which is a model implementation of the query language built from scratch, serving as a reference. The reason for creating it from scratch is to identify flaws and iron out changes for future implementations, and the model can be a point of reference for how we create future versions of the query language. There are some flaws in the current version of the language that need sorting out for future iterations. AD : What were some of the flaws present in the query language? MA : An example of a flaw in the query language is the difference between find and aggregation projection. They are ambiguous and one will allow you do things the other doesn’t. For example, in aggregation you are able to use nested documents to specify how to project your output. That is not possible in find, but in find you have special operators to customize an output for arrays such as $elemMatch that you can’t use in aggregation projection. The ultimate goal is to unify the semantics. AD : Did you have any previous experience working to improve a programming language, or did you find there was a learning curve? MA : I took a programming languages class last year so I was able to learn about what goes into creating a programming language. I spent my first few weeks at MongoDB learning Haskell. I had to sit down with other team members to go through the code base and get ramped up. It’s been very rewarding from an educational and experience standpoint. AD : What would you say is one key takeaway from your experience at MongoDB this summer? MA : Beyond learning a new programming language and what goes into writing the MongoDB query language, what I wanted to get out of my summer internship was to learn how to develop software more collaboratively. MongoDB has a code review process, so you’re given a ticket but just completing the ticket is not enough. You have to run it by other members of the team to ensure it meets expectations. There’s been really great quality control feedback from the team. AD : How has the level of feedback helped to benefit you as an engineer early in your career? MA : Every week I sit down with my mentor for a thirty minute one on one to discuss how things are going. The continuous feedback has been very helpful because it helped me to improve the quality of the comments I left in my code. It was easy for me to understand what I did and how I did it, but I learned that you need to be very thorough in order for other people to understand as well. AD : What would you say to someone considering an internship opportunity at MongoDB? MA : I would absolutely recommend it. It’s a great environment to intern in, and I have really been able to grow my skills. The work is very challenging, but very rewarding, and I understand exactly how my project is going to impact the work my mentor and other members of the query team will continue doing after I leave. To learn more about the MongoDB internship program, click here .
MongoDB Query API Webinar: FAQ
Last week we held a live webinar on the MongoDB Query API and our lineup of idiomatic programming language drivers. There were many great questions during the session, and in this post, what I want to do is share the most frequently asked ones with you. But first - here is a quick summary of what MongoDB Query API is all about if you are unfamiliar with it. What is MongoDB Query API? MongoDB is built upon the document data model . The document model is designed to be intuitive, flexible, universal, and powerful. You can easily work with a variety of data, and because documents map directly to the objects in your code, it fits naturally in your app development experience. MongoDB Query API lets you work with data as code and build any class of application faster by giving you extensive query capabilities natively in any modern programming language. Whether you’re working with transactional data, looking for search capabilities, or trying to run sophisticated real-time analytics, MongoDB Query API can meet your needs. MongoDB Query API has some unique features like its expressive query, primary and secondary indexes, powerful aggregations and transformations, on-demand materialized views, and more — enabling you to work with data of any structure, at any scale. Some key features to highlight: Indexes To optimize any workload and query pattern you can take advantage of a large set of index types like multi-key (for arrays), wildcard, geospatial, and more and index any field no matter how deeply nested it is within your documents. Fully featured secondary indexes are document-optimized and include partial, unique, case insensitive, and sparse. Aggregation Pipeline Aggregation pipeline lets you group, transform, and analyze your data to support any class of workload. You can choose from dozens of aggregation stages and over 200 operators to build modular and expressive pipelines. You can also use low-code tools like MongoDB Compass to drag and drop stages, examine intermediate output, and export to your programming language of choice. On-Demand Materialized Views The powerful $merge aggregation stage allows you to combine the results of your aggregation pipeline with existing collections to update and enrich data without having to recompute your entire data set. You can output results to sharded and unsharded collections while simultaneously defining indexes on each view Geospatial and Graph Utilize MongoDB’s built-in natively ability to store and run queries against geospatial data Use operators like $graphLookup to quickly traverse connected data sets These are just a few of the features we highlighted in the MongoDB Query API webinar. No matter what type of application you are thinking of building or managing, MongoDB Query API can meet your needs as the needs of your users and application change. FAQs for MongoDB Query API Here are the most common questions asked during the webinar: Do we have access to the data sets presented in this webinar? Yes, you can easily create a cluster and load the sample data sets into Atlas. Instructions on how to get started are here . How can I access full-text search capabilities? Text search is a standard feature of MongoDB Atlas. You can go to cloud.mongodb.com to try it out using sample data sets. Does VS code plugin support Aggregation? Yes, it does. You can learn more about the VS code plugin on our docs page. If you need to pass variable values in the aggregation, say the price range from the app as an input, how would you do that? This is no different than sending a query - since you construct your aggregation in your application you just fill in the field you want with value/variable in your code. Is there any best practice document on MongoDB query API to have stable performance and utilize minimum resources? Yes, we have tips and tricks on optimizing performance by utilizing indexes, filters, and tools here . Does MongoDB support the use of multiple different indexes to meet the needs of a single query? Yes, this can be accomplished by the use of compound indexes. You can learn more about it in our docs here . If you work with big data and create a collection, is it smarter to create indexes first or after the collection is filled (regarding the time to create a collection)? It is better to create the indexes first as they will take less time to create if the collection is empty, but you still have an option to create the index once the data is there in the collection. There are multiple great benefits of MongoDB’s indexing capabilities: When building indexes, there is no impact on your app’s availability since the index operation is online. Flexibility to add and remove indexes at any time. Ability to hide indexes to evaluate the impact of removing them before officially dropping them. Where do I go to learn more? Here are some resources to help you get started: MongoDB Query API page MongoDB University MongoDB Docs You can also check out the webinar replay here .