July 15, 2013 | Updated: May 22, 2015
Here's what's going on in the MongoDB community this week:
- WebMD is using Storm for real-time integration between MongoDB and SQL databases
- Five languages for MongoDB RESTful interface
- Fireside Chat with Dwight Merriman, Creator of MongoDB
- Object Modeling in Node.js with Mongoose
- Slides and recording now available for Webinar: User Data Management
- July 16: Thrive With Big Data Webinar Series - Part 1: Build Apps You Couldn’t Build Before
- July 18: Sharding
- July 18: Waters Technology presents Big Data and legacy systems – time to make the change?
- July 23: Thrive With Big Data Webinar Series - Part 2: Adapt in a Competitive Market
- July 25: Performance Tuning and Monitoring Using MMS
- July 30: Thrive With Big Data Webinar Series - Part 3: Make Customers Happy
- Proudly announcing a new course - M101JS - MongoDB for Node.js Developers
- M102: MongoDB for DBAs -- begins Today (You still have time to register
- M101J: MongoDB for Java Developers begins July 29 -- registration now open
- M101P: MongoDB for Developers (Python) begins September 9 -- registration now open
Have something you'd like to share? Let us know
Why MongoDB Is Popular
There are many reasons that MongoDB is the most popular non-relational database by far, but one reason stands out across the broad spectrum of customers and users : Agility . I suppose there once was a time when it was acceptable to take months (or years) planning out an application and its associated data schema, building it and then resisting any efforts to update it (because the data infrastructure was so calcified that change was painful if not impossible). We don't live in that time anymore. Particularly in this age of Big Data , we must constantly iterate on our applications as we hone the types of data we're collecting and deploying to improve our user experiences. This is hard to do with a relational database. It's like trying to win the World Series with the Kansas City Royals. Or the English Premiership with Stoke City. It's possible, but unlikely. Iteration is critical to satisfying customers and adapting fast enough to win markets, as noted on the Wide Awake Developers blog : Iteration is [a] fundamental dynamic[[. Iteration facilitates adaptation, and adaptation wins competition. History is littered with the carcasses of "superior" contenders that simply didn't adapt as fast as their victorious challengers. MongoDB enables such iteration. More than any other NoSQL database, and dramatically more than any relational database, MongoDB's document-oriented data model makes it exceptionally easy to add or change fields, among other things. So if a developer needs to quickly evolve an application, MongoDB's flexible data model facilitates this. Rather than fitting an application to meet schema requirements, the developer writes her application and the schema follows. Form follows function in MongoDB, as it were. Yes, MongoDB is popular because it's easy to learn and get started. Yes, it's highly scalable (auto-sharding, anyone?), cost effective and more. But the biggest reason MongoDB is wildly popular, in my experience? Because MongoDB enables profound developer agility through its flexible data model.
How to Prepare for Your Engineering Interview at MongoDB
MongoDB’s Engineering team is full of creative individuals who play an impactful role in building our industry-leading technology. Our interview process is designed to ensure that you and MongoDB are a great match, and, no matter how many interviews you have done in the past, being prepared is the key to being successful. At MongoDB, we do our best to make sure you have a great interview experience and an opportunity to learn about our company, culture, and the people you will be working with. To help you prepare for your technical interviews, we want to share some tips. Research is key Candidates who do research and come prepared for interviews at MongoDB are able to make the most of their interview process. People sometimes think they do not need to do research because they are already familiar with our products, but that will set you up for unexpected surprises. Before beginning your interviews, you should have high-level knowledge of our company’s mission, values, and goals . The in-depth technical information you can learn about MongoDB and the role and team you are interviewing for may also help set you apart from other candidates. MongoDB has a variety of products and Engineering teams, and this information will give you a chance to learn more about what we are working on, technical stacks we use, and what you’d be contributing to if you joined. Take a look at some of the resources below, and use them to your advantage. MongoDB Blog : Our blog is updated regularly with new posts about life at MongoDB, news, products, and events. MongoDB University : This platform was created to empower developers through education. We offer completely free online courses led by Curriculum Engineers for any learner, whether you’re just getting started or already familiar with MongoDB. MongoDB Documentation : The documentation page has detailed information about our products and tools that will give you an idea of what you will be working on as an engineer. MongoDB Developer Hub : The developer hub provides articles on and resources for how to get started with MongoDB. Learn from our Developer Advocates and the MongoDB community! Types of interviews After doing some initial research, it is important to prepare for the actual interviews. Our interview process usually includes one or two virtual interviews and then an onsite interview, which we are currently conducting via Zoom. This may change in accordance with company and COVID-19 guidelines. These interviews and what they cover will vary by team, so it is important to speak with your recruiter and ask for any additional tips or insight into what to expect. Our recruiting process is primarily team-based, which means you’ll interview for a role on a specific team, and many of your interviewers will be team members, as well as your manager. In general, you can expect to receive questions about your background, interest in MongoDB, and why you are interviewing to work with that team. You’ll also have the opportunity to ask your interviewers questions about all things MongoDB. Technical Interviews Technical interviews have a variety of areas that may be covered, including concurrency, distributed systems, algorithms, system design, and language-specific coding. An important part of the technical interview that often goes under the radar is the need for effective communication when talking through your thought process or discussing the problems that are presented. Below are some of the things our engineers look for in a good technical performance. Writing code: strong understanding of the language being used, code is concurrency-safe, works in edge cases, good object-oriented design Software engineering: understanding of data structures and algorithms, considering trade-offs (e.g., run time vs. memory), testing your code Collaboration: clear and concise code that is readable and organized, responding well to suggestions or hints, effective communication about difficulties faced Systems design: design a solution to scale to high levels of concurrency, throughput, and reliability. Does it avoid common bottlenecks, how do we prove its correctness, and what are the trade-offs or alternative solutions? Behavioral Interviews Behavioral interviews focus on how you may add to the culture we continue to build at MongoDB. Reviewing our code of conduct and core values will show you how we operate as a company and what we expect from our employees. Other topics of discussion you should expect in these interviews are successes and failures, what you have learned from these experiences, and what you are looking for in your next role. We will also ask you about your experience with mentoring and learning from other engineers and leaders, your goals and aspirations for the future, and your experience with owning or leading projects. What we offer There are a few things we can promise if you decide to interview for an Engineering role at MongoDB. First, you’ll have a speedy and transparent process with a single, dedicated recruiter. We tailor each of our interview processes to fit the role’s responsibilities and seniority level, and you won’t be asked any riddle questions that aren’t related to the work you’d be doing. Our interview questions are typically sourced from real problems we have had to solve. You’ll also have the opportunity to interact with your future manager and some future teammates, and we hope you find that your interviewers are genuinely interested in you as a person and seeing you succeed at MongoDB. We believe different experiences, identities, and perspectives build a unique culture that helps us create and innovate the next generation of MongoDB. In short, following this guide will help prepare you for a successful interview at MongoDB. Ensure you have gained some knowledge about our company, mission, and goals; the role you’re interviewing for and the team you’d be working on; and the types of interview questions you may be asked. And be prepared with questions for us! We’re so glad you’re interested in joining our team, and we look forward to seeing you in the interview process. Interested in pursuing a career in engineering at MongoDB? We have several open roles on our teams across the globe and would love for you to transform your career with us!