The MongoDB Summer ‘18 Intern Series: the Node Driver, Inside and Out
Rebecca Weinberger joined us this year as a Summer ‘18 intern, but this was not her first encounter with MongoDB. During her sophomore year at MIT, Rebecca participated in a web development competition. She and her team used the MongoDB Node.js Driver in their application and won their division for first time participants, so it’s no surprise Rebecca spent her time at MongoDB on the Node Driver Team.
Andrea Dooley: How did you first become interested in computer science?
Rebecca Weinberger: My older brother studied computer science in college, while I was still in high school. I always liked computers but never did any real coding. He would show me snippets here and there of what he was working on, and I thought it was really interesting, even though I didn’t totally understand it. When I went to MIT, I had a hunch that I would enjoy computer science, and it definitely was the right choice for me.
AD: Can you talk more about the web development competition? What did you create using the Node Driver?
RW: We made an app for trading products within the MIT community. For example, if you are moving out of your dorm and wanted to get rid of a lamp, you could upload a photo and an asking price, and someone could purchase it from you. It was login-secured and had a built-in messaging system. It was really easy to integrate MongoDB into the project. We had to store information about the products and the users, and because of MongoDB’s flexible schema, we were able to develop quickly and make changes later if we needed to. The experience really kickstarted my passion for building web apps.
AD: Did your experience early on working with MongoDB have anything to do with your decision to apply for an internship?
RW: I ultimately ended up coming to MongoDB because I got the sense the internship program was exceptionally good here. Just from talking to recruiters and doing research online, I learned great things about the program. I liked how fast the company is growing and the kind of work people are doing. I knew about the product but wanted to know more about the company. I remember the interview process being the most positive interview experience I’ve had. All the interviewers were very supportive. They didn’t make me feel stressed or stuck. They asked questions that were fun to solve, like how to determine if a binary tree is symmetrical, and how to reverse an integer without making it into a string.
AD: Was it a coincidence that you wound up on the Node Driver team, or did you request it?
RW: Even though I used the Node Driver before, I didn’t necessarily know much about it. I knew it provided the API for developers to use MongoDB but I didn’t know what it looked like on the inside. It was my first choice for my team, not only because I had some familiarity, but because I also knew it was a highly regarded product with high impact on the millions of people who use it.
AD: Can you speak more to the level of impact?
RW: Impact was one of the main things I was looking for in a company. I remember working on a ticket that got some attention from the community. It was a high priority bug fix, and when I put up a pull request with the fix, people from the community around the world started commenting on it on GitHub. It helped reiterate that MongoDB is open source. Every user can see what is going on internally in the driver, including fixes for bugs significant to their projects. The immediate feedback from the community is proof that the work is incredibly significant. One thing I really wanted was to ensure any work I did would not get lost or not see the light of day, and this is something that proved true throughout my experience. This was super important to me.
AD: What are some of the specific projects you got to work on?
RW: At the beginning of the internship, the codebase had a problem with the way deprecation warnings were emitted. Methods were inconsistent, hard to read, and as a result hard to change. I worked with another intern on the team, and we created a uniform deprecation function and integrated it into the codebase. It was a good starting project and efficiently introduced us to the codebase. We also worked together on a framework for running tests on BSON libraries in the browser, or client-side. These libraries were starting to be used client-side, for things like MongoDB Stitch, so we wanted to make sure they behaved correctly client-side as well as server-side. It was not intended to be a huge project at first, but it had a lot of kinks and niche bugs to work out. At some point, we had to pull in people from other teams to help. I ended up learning a ton, especially about some specific packages.
AD: Did your previous experience with Node Driver help you ramp more quickly?
RW: I remembered how the API looked on the outside when I first worked with it because I was simply calling those methods. But once on the team, I was seeing and working on the driver from the inside. For example, when I call a method and pass it an option, I can see exactly how that option is passed through the code and eventually applied to the command to achieve the desired effect. Our mentors did a really good job of getting me quickly comfortable with a huge codebase. They assigned projects very thoughtfully, so there was a natural progression through the summer.
AD: What was one of the most interesting things you learned during your internship at MongoDB?
The MongoDB Summer ‘18 Intern Series: From Learning How a Computer Works to Helping Build MongoDB Stitch
Most interns joining us for the MongoDB summer engineering program are in the process of pursuing a degree in computer science and come looking for a hands-on, impactful work experience.
As a sophomore in high school, Julia Ruddy was introduced to computer science in a basic CS class that received so much positive feedback, her school introduced an Advanced Topics in CS course to the curriculum for her senior year. When Julia started her freshman year at Princeton University, she decided to pursue a degree in electrical engineering and joined us this summer as one of three interns on our Stitch team.
Andrea Dooley: Why did you decide to declare electrical engineering as your major?
Julia Ruddy: The Advanced Topics course in high school went very low level. We started the course working with transistors and proceeded to build up to the level of writing a Tetris game. It was interesting to see how it all fit together from transistors and binary to code you can write a program on. It was at that point I considered electrical engineering because as interested as I was in CS, electrical engineering gives you the opportunity to see what’s under the hood. I wanted to understand how a computer worked from 1s and 0s to building something like MongoDB.
AD: So you’ll graduate with a degree in Electrical Engineering. What experience have you had with Computer Science?
JR: One of my priorities was to keep up with the computer science schedule, so I took a lot of upper-level CS classes. Last summer during an internship at an early stage startup, my work consisted of half hardware and half software. Through that internship, I learned I didn’t want to work in the hardware space. I liked the hardware aspect of my work but found I enjoyed my days doing software more. Although I love learning about it, I find building hardware from scratch to be very tedious, and it’s hard to debug. Also, I find the software industry as a whole more intriguing.
AD: How did you first learn about MongoDB?
JR: A good friend of mine from Princeton interned here last summer and encourage me to attend the open house. It seemed like a cool place to work and piqued my interest. When I got deeper into the search I found MongoDB especially attractive because it’s an established company, but smaller in size. I know sometimes at larger organizations your work can get lost, but my friend vouched for the work he did here, and that it impacted the business.
AD: As someone not fully immersed in CS as other intern candidates might be, did you find the interview to be particularly difficult?
JR: From my experience, software interviews, in general, follow a similar pattern regarding data structure and algorithms. I did a ton of prep in those areas, ensuring I was very familiar with them. During my interviews here, everyone was very approachable and easy to talk to and the conversations flowed naturally. If my interviewers had any hesitations regarding my experience, I didn’t notice them.
AD: What team are you working on this summer?
JR: I was given my first choice, which was to work on the Stitch team. Stitch is a serverless platform designed to help people focus on the interesting and exciting pieces of their applications, rather than get bogged down with boilerplate and tedious back end code. It’s a newer team for a relatively new product, as well as something people are talking a lot about. I wanted to be on a team that was on the forefront of the upcoming MongoDB release.
AD: What project are you working on for Stitch?
JR: There is no one concrete project within Stitch. I’ve been picking up tickets, some bigger than others, working on both the front end and back end. Going into my internship, I had zero front end experience and I felt that if I wanted to become a respected full stack engineer, I needed to change that. So, my goal for the summer was to pick up as many UI tickets as I could. I actually really enjoyed front end development and learned a lot. Overall, this summer I’ve been able to work on many different things, which I find to be more similar to what a day in the life of a full-time engineer would be like. I now know what a career in software engineering entails, and it’s fun!
AD: What’s one of the bigger tickets you were able to work on?
JR: One of the bigger tickets was to create a generic AWS service in the UI, which allows for an extra layer of ease for our users. They used to have to edit code themselves to do more specific actions, but now they can choose from a drop down. I’ve also been working through a series of UI tickets for Stitch usage metrics, which is a real time visual representation for users to see how much data they’ve used, and how many transactions they’ve done, which will help with transparency in billing.
AD: Aside from project work, what has been one of the most memorable aspects of your internship?
JR: I worked with a group of interns on a project for Skunkworks, MongoDB’s internal hackathon. We built a computer game for people with minimal technical skills, to help them get familiar with MongoDB query language. The user plays a detective, and the goal is to solve the mystery of the missing emerald leaf in the MongoDB museum by querying databases. When the detective is completing one of the tasks to help solve the mystery, there is a prompt to drag and drop the proper argument into the query. We made it to the final round to present the game to the entire office and won the award for “Most Fun.”
AD: Is there anything you learned during your time at MongoDB that surprised you?
JR: I found the Speaker Series with our CPO [Chief People Officer] Dan Heasman to be really interesting mostly because it’s the side of a company I don’t ever think about. The idea that there is someone dedicated to fostering a great culture, managing how people interact, and maintaining the vibe is new to me, but he was so clear and concise in his approach I learned that there actually is a science to making people feel comfortable and welcome at work.
AD: What’s one key takeaway from your experience as a MongoDB intern?
JR: After this internship, I can confidently say software engineering is what I want to pursue after I graduate. One of my worries beforehand was that it was an isolated career, where you code all day and don’t have much interaction with other people, but my experience at MongoDB has shown me that there are always people willing to help, and asking for help, and there is a lot of collaboration in between. It’s been really rewarding to be able to write code that fits into a massive code base like MongoDB, as opposed to working on an isolated project as I would perhaps at another internship, or at school.
Meet the MongoDB World 2018 Diversity Scholars
The MongoDB Diversity Scholarship program supports members of underrepresented groups in technology. Scholars receive complimentary access to the conference, training, certification, and mentorship.
The MongoDB Summer ‘18 Intern Series: Building Global Influence
Stef Wang is a MongoDB Summer ‘18 international intern. Originally from Taiwan, Stef had never visited the U.S. before deciding to attend the University of Pennsylvania, where she is currently a rising senior pursuing a major in computer and cognitive science and a minor in consumer psychology.
As an advocate for women in STEM, she is passionate about working to help change the underrepresentation of women in tech. During her internship, Stef took some time away to attend the Global Leadership Organization annual conference in Taiwan, which is dedicated to teaching leadership curriculum to empower youth to engage in social impact work.
Andrea Dooley: What made you want to come to the US, despite the fact you had never been there prior?
Stef Wang: I always knew I wanted to go abroad for university. The school I attended in Taiwan was tailored for students to obtain their degree either in the US or the UK, and I applied to over 20 schools in both regions. I was particularly interested in UPenn because of their Science Technology and Society program, which explores the impact of technology on society.
AD: Since that is a social science, how did you wind up majoring in computer science?
SW: I worked on CS in high school. When I went to college I found that women are underrepresented in STEM, and I wanted to challenge that. I found computer science to be very interesting and figured the best way to challenge the underrepresentation was for me to represent. It’s an issue I care about and I wanted to be able to encourage women to pursue CS as their major and stick to it.
AD: Was there a particular experience that made you this passionate about encouraging women into the CS field?
SW: I previously interned at a very big technology company, and the lack of female representation impacted me. It was in Taiwan, so the office was smaller in general, but out of 70+ engineers, three were female. I didn’t feel it was an optimal work environment because of subconscious judgements and assumptions. It’s very different than what my experience has been like at MongoDB. There are women in this [NYC] office in high positions such as engineering team leads, and a lot of women in engineering. It’s something I really appreciate.
AD: How does your passion to help bring change align to the conference you attended in Taiwan?
SW: I’ve been involved in the Global Leadership Organization since junior high school, and the conference is hosted regularly in both the US and Taiwan. GLO’s mission is to empower people with the leadership skills they need to bring about the changes they want to see in the world. I’m in charge of overseeing GLO operations in Asia, and help to teach the curriculum that Teddy Liaw developed, which helps to inspire people to become change agents. It’s empowered me to believe I can make a change. One day I’d like to create a nonprofit for women in STEM.
AD: How did you first learn about MongoDB?
SW: MongoDB often attends PennApps, which are hackathons hosted every semester, so I had the opportunity to speak to a few people and learn more about the company. A current intern referred me to the internship program while he was going through the process. What appealed to me most was the interview process and how different it was from any other process I had gone through before.
AD: How was the process different from what you’ve experienced before?
SW: My recruiter got to know me as a person, instead of just focusing on what was on my resume. She was also more technical than any other recruiter I had worked with, so I was able to thoroughly explain my background. I felt like it was less about attempting to confirm what I had on my resume, but instead understanding what I was passionate about and what I was looking to get out of the experience.
AD: What are you working on this summer?
SW: I’m working on the Cloud team, working on two projects: optimizing upgrades and downgrades for anyone who is using MongoDB Atlas on Google Cloud or Microsoft Azure, and also implementing Atlas support for encryption at rest with multiple cloud providers, which would allow customers to manage data encryption using Azure Key Value and Google Cloud KMS credentials. Atlas is a core MongoDB product, and really important to the overall company mission. I’ve really learned a lot over the course of the summer. In the beginning, there was a very steep learning curve, and a huge code base that we had to look through in order to complete a lot of our initial tickets, but after a few weeks our workflow became a lot more efficient.
AD: What’s it like to work on a product that directly impacts business success?
SW: The Atlas team is super fun. It’s really exciting to hear people be so enthusiastic about their work and have so much passion about what they do on a day to day basis, be willing to talk about what they’re working on, and be open to your opinions. It’s also great to see that the work we are doing is directly impacting our customers and the work they are doing. They don’t have to worry about maintaining a database and the underlying infrastructure needed to support it and instead can spend more time and energy focusing on work that matters to them. As an intern I’m able to help people do more with their data, and ultimately achieve their mission. Since we work in sprints, some of the features we've worked on have already been released and are currently being used by our customers. I appreciate that we get to be a part of how things happen. There’s a lot of collaboration but I’m also able to say, “I owned this.”
AD: What has your overall experience been like as a MongoDB intern this summer?
SW: My mentor has been an amazing manager, which was surprising to me but in a good way. His sole responsibility is to mentor the Atlas Intern team, which consists of me and two other interns. In the past, I found it frustrating if a mentor was working on something different, since I was more hesitant to ask questions in fear I would distract them from more important work. Here, my mentor is working on what I’m working on and always reiterates that I should be asking questions. It has helped me become a better coder and produce better work. I also appreciate how much emphasis MongoDB puts on feedback, both giving and receiving. It helps create a culture where everyone is always striving to be better.
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.
The MongoDB Summer ‘18 Intern Series: Driving Connections from Work to Life
Nathan Louie is a MongoDB summer intern on our Server Replication team. He’s a computer science major and sociology minor at the University of Michigan, finishing up his senior year this fall. During his time at school, he’s developed a passion for problem solving within distributed systems and working on lower level projects.
Andrea Dooley: Since your interest lies primarily on the lower levels of the stack, how did you first learn about MongoDB?
Nathan Louie: I first heard about MongoDB at a hackathon as a tool to build apps quickly. But the first time I actually used it was right before my interview. I made an application with MongoDB Stitch, and was impressed with how easy my backend was to set up and interact with.
AD: Since this is your fifth internship, how does it differ from your previous experiences, and what piqued your interest to apply?
NL: My previous internships have been higher up the tech stack. I’ve taken a lot of systems courses in school, and wanted industry experience on the kinds of projects I’ve encountered academically. I looked through the MongoDB code base, and realized it was the type of system I wanted experience in. Finally, when considering the company itself, MongoDB has a high-growth culture with a focused mission and is working on the problems that I’m looking to solve.
AD: How has the project you’re working on this summer provided you with the technical problem solving experience you were looking for?
NL: My primary project this summer is adding diagnostics support for multi-document transactions, which was a feature added in the 4.0 release. It’s a way for people to measure the performance of their transactions, such as total duration and the number of succeeded and failed transactions. Building out diagnostics has helped me understand how our replication and transactions system work. I attended some sessions at this past MongoDB World, and the audience asked about this feature. Sometimes when you’re working deep in the stack, you can feel disconnected from the end users, but the fact that people were waiting for it to become available helped me understand the outcome of my work.
AD: How have you found the overall dynamic of the server team?
NL: In my opinion, the defining thing about MongoDB is how engineering-centric the company is. For instance, I find it really interesting how involved management is with the actual code. My tech leads are very familiar with the architecture, and can hop right into the code base because they wrote a lot of it. It has been extremely valuable for me as an intern because I’m able to learn from people at all levels, and it has also exposed me to an alternative way of managing engineering teams. This experience has helped me visualize a career path where I can remain technical, and not have to sacrifice my passion for deep problem solving while leading a team.
AD: What’s the most interesting thing you’ve learned so far?
NL: The most interesting thing I’ve realized at my time here is the impact my work has on the world. MongoDB is not an immediately recognizable consumer brand, and the types of people who know it well are usually developers and engineers. However, consumers are using MongoDB all the time, likely without realizing it. Whether it’s applied towards compliance software, cryptocurrency, or popular games like Fortnite, the work that I do effects so many different industries, projects, and people across the world. I think it’s very powerful to be able to drive the connection from my work to my everyday life.
AD: What would you say has been the most impactful aspect of your internship experience at MongoDB?
NL: The open source aspect: being able to commit my code and have it be out there for everyone to see. I can log into any computer and show people the work I’m doing and having that level of transparency still blows my mind. Most times, company code is secret, and you can’t just take the code you write and go anywhere. Here, once the code you write gets approved, it immediately gets pushed out for anyone to see. I find it liberating to talk to friends about what I’m working on and have the ability to pull it up and walk through my decision making. It definitely gives me a sense of pride and builds trust in the product.
The MongoDB Summer ‘18 Intern Series: Communication is Key
Remi Lederman is a rising senior at the University of Pennsylvania. She’s a communications major with a minor in art history, the managing editor of UPenn’s culture magazine, and a 2018 Summer Intern for the MongoDB communications team.
As one of four marketing interns among a class of 62 comprised of mostly engineers, Remi has an interesting take on what it’s like to work on the less technical side of the business.
Andrea Dooley: The internship program at MongoDB is pretty popular among computer science undergrads. As a comms major, how did you first learn about MongoDB and the internship opportunity?
Remi Lederman: UPenn has a big engineering school and MongoDB is very well known; there’s a lot of t-shirts on campus. A lot of my friends are engineers, so I knew the company, but didn’t really know exactly what it did. I went to a career fair where I was able to meet the campus team, and found the opportunity to be really interesting.
AD: Why did you want to intern at MongoDB this summer?
RL: After the career fair I kept up with the company and knew it was growing fast and that it was a really exciting time. I had an idea of the workplace culture by talking to previous interns, and had interned at a tech company the summer before, so I was looking for a similar kind of environment. I knew I wanted to do something in communications, and I felt the opportunity at MongoDB would be the perfect fit. The application process was seamless and the campus team kept me really informed. There was a lot of communication, I never felt out of the loop, and the overall process was very professional and organized.
AD: As someone not very familiar with computer science, was it difficult to learn MongoDB technology?
RL: While someone who is not very tech savvy may have a general idea of the database functionality, it’s hard to have a deep understanding of the technology. As an intern, we went through training in our first week that provided insight into what MongoDB is, how it fits into the stack, how we compare others in the industry, and our overall value proposition. For the role I’m in, it’s important to understand the different product offerings and features, what it means to be on version 4.0 versus version 3.6 for example, and what’s important to our customers and community. It’s different than what you would need to know or how you would view the database from an engineering standpoint.
AD: What’s it like to work with mostly engineers?
RL: The company is so social and everyone's so nice, it’s not hard to hang out together, even though our jobs are so different. It’s also really nice to have a big intern class. There's 62 of us, so it’s fun to attend all the events the campus team puts on for the interns and get to know each other.
AD: If you’re not working with the technology, what sorts of project do you get to work on?
RL: I get new things to work on every day. For example, had a chance to take a first stab at the press release for MongoDB University reaching 1 million registrations, which was exciting. I’ve also helped create briefing books for customers and executives, which are prep guides for when they go into an interview or are giving a talk. It helps prepare them for what to expect in terms of talking points, background information, and questions that may be asked. I love that I get to help out on many visible things the team is working on. So when I see our CEO on CNBC, or our customers at MongoDB World using the stuff I helped to prepare, it’s really rewarding.
AD: I know the engineering interns get to identify their preferred teams and projects. Did you have input in determining what you would work on this summer?
RL: I’m valued for my writing skills, so I get to write a lot and do a lot of editing. My mentor really pushed me to come up with my own projects, and creativity is really fostered here. In the beginning of the summer I was encouraged to outline goals for the internship. At some point during the summer I had the opportunity to attend a Crisis PR webinar. Like most companies, I knew that we had some form of a crisis plan in place that plan outlines what we do, the chain of command, and who is the designated team, but I wanted to put more detail into it, like creating templates for responses. My hope is that I leave at the end of my internship having given something tangible and impactful back to the company.
AD: What’s been the biggest lesson you’ve learned so far?
RL: Preparing for all possible outcomes. In school we would analyze the scenario after it occurred, but here we want to get ahead of things. I’ve learned to do that by over communicating as opposed to under communicating.
AD: What would you say to other marketing/comms interns interested in MongoDB?
RL: A lot of companies have similar roles to what I am doing here, so when choosing where to intern for the summer I looked at other factors to differentiate each opportunity. For me, working at a company like MongoDB is ideal because it’s an exciting environment. I’m invested in MongoDB because what I’m doing has a real impact, which in turn that has made an impact on me. I truly feel like a part of the company. I’m very impressed with everyone and everything at MongoDB, and I feel lucky to be a part of it.
Employees Recognized for Work Outside of MongoDB
An organization's success can often be attributed to its people, because it’s people who dedicate their time to helping a company achieve goals and be recognized as an industry leader. We find it’s even more of an achievement when our people are recognized for the work they do outside of MongoDB.
Two passionate members of the MongoDB Engineering organization were acknowledged by separate notable organizations for their independent work.
Dr. Michael Cahill is the Vice President of Engineering (Storage). Based out of our Sydney office, Michael leads the global Storage team which is responsible for concurrency control and crash recovery. Optimizations in the storage layer can have a huge impact on making customer workloads more efficient.
Michael was recently recognized as a winner of the Test of Time Award at the annual SIGMOD conference for his work on a new algorithm for implementing serializable isolation. SIGMOD is the Association for Computing Machinery's Special Interest Group on Management of Data, which specializes in large-scale data management problems and databases. The conference is considered one of the most important database conferences in the world. Researchers and engineers working on database technology come together to present their work, and new innovations are often published first at SIGMOD.
“Serializable Isolation is the gold standard for databases: it means that applications using the database can reason as if transactions run one at a time. There is never any interference between concurrent transactions and each transaction takes the database from one consistent state to another. My contribution was to use database internals, including hooks in code for multi-version reads and an extension of intent locks, to detect potential anomalies at runtime and make executions safe regardless of the application logic.
“I’m both proud and humbled to receive the Test of Time Award this year. While I’m proud of the work we did and the impact it has had, I am humbled to see my name listed beside some of the greats of the field who blazed the trail before me.”
The main implication of Michael’s work is that there is now a way to build databases that provide serializable isolation with only a modest change to existing systems.
A. Jesse Jiryu Davis is a staff engineer at MongoDB on the Drivers Team. He leads development on the C and C++ drivers and is the author and maintainer of Motor, an async Python driver. He also pitches in on PyMongo development and oversees the design and specifications process for a lot of new MongoDB driver features. He spends time mentoring new coders and speaking at conferences.
Jesse is a member of the Python Software Foundation, which manages the Python language and the community of Python programmers, and sponsors dozens of Python conferences.
“When I joined about 7 years ago their main mission was to promote the use of Python, and they won: Python is perhaps the most popular language. Now I see the PSF devoting much more effort to expanding computer science access to poor countries and marginalized groups, using Python as a vehicle. For example, the most recent PSF grants were to girls' education events in Brazil and Cameroon.”
Jesse was recognized by the Python Software Foundation for his community service work, including his work on their blog, and his involvement with the NYC conference PyGotham.
“I was awarded for two responsibilities I've really enjoyed. My work on the PSF blog gives me an excuse to interview some of the smartest and most accomplished people I know. The second part of the award, for my work on the PyGotham conference, was mainly in recognition of my speaker-coaching program: I thought it would be helpful for first-time speakers to have professional coaching, so I raised enough money to hire my own speaking coach to spend an hour with each of them. This year we're repeating that program for PyGotham speakers and expanding it to the PyOhio conference, too. Speaking at conferences transformed my career, and I want to make sure that everyone has the same opportunity I did to learn public speaking, particularly members of groups underrepresented in tech.”
We could not be more proud of both Michael and Jesse for their recognitions. It is a true testament to the level of talent at MongoDB, and the passion of the people behind the product.
To learn more about MongoDB people and culture, click here.
The MongoDB Summer ‘18 Intern Series: Back to Back
Haley Connelly is a 5th year Computer Science Major at UT Austin, and a two time MongoDB Summer Intern.
Haley first joined MongoDB during the summer of 2017 as a rising senior. She has made her return to MongoDB for Summer 2018, as she works on her thesis in computational neuroscience. In her short time here, Haley has been able to make a giant impact, including being part of the team that helped build the storage engine used in the MongoDB Mobile product, which was released at MongoDB World 2018.
Andrea Dooley: How did you first learn about MongoDB?
Haley Connelly: I actually interviewed with MongoDB before I really knew what the company did. That year, instead of taking a summer internship I did a 6 month co-op, which is essentially a full time role, in the spring. My mentor had great things to say about the MongoDB Query Language (MQL), and even wrote a wrapper around an existing ORM to mimic MongoDB-like query capabilities. After I learned how useful MongoDB could be, and once I figured out I wanted to be a Systems Engineer, I re-interviewed with the company, which was really exciting.
AD: Can you provide insight to your first summer at MongoDB?
HC: I worked on the Storage Team, and helped engineer the mobile storage engine. I was part of the team took the design and architecture from the ground up. It was really exciting because MongoDB Mobile was announced at MongoDB World 2018, and the storage engine is now in beta. We tried to build as much functionality as possible during that summer, and it was great to see a lot of it made it into the final code.
AD: That’s a huge accomplishment! Did you know that was going to happen?
HC: At the end of the summer, all interns are required to give a presentation on their work from the summer. My partner and I received a lot of positive feedback from our presentation. We got the storage engine functionally working as a prototype, and it worked so well that another intern was actually able to use it. When i came back this summer my old mentor let me know that MongoDB Mobile was about to be released to beta testers.
AD: What are you working on this summer?
HC: This summer I’m working on the Query team, and am using Haskell, which is a functional programming language to help model the semantics of the MongoDB Query Language. The model is intended to help further optimize behavior for future versions of MQL.
AD: What made you want to come back to MongoDB for another internship?
HC: I’ll admit I was always against doing two internships at the same company. I thought it was best to try things out in order to know what you like and what you don’t like. But I figured out what I wanted in a company, and I found that in MongoDB.
AD: What in particular were you looking for in a company?
HC: MongoDB has the name recognition and is well respected in the developer community, alongside a great company culture. It’s also the perfect size company in that it’s not so large that your work seems like it doesn’t make a contribution. We are constantly promoting people to take risks and be intellectually honest, and that really shines when working with people day to day.
AD: What about the internship program itself?
HC: The fact that we get to choose what we want to work on is so awesome to me. I knew there were other teams I wanted to try out, and I knew wherever I wound up I would be able to make a genuine contribution.
AD: It sounds like you’ve gotten a lot out of your internship here. What advice would you give to someone who might be interested in interning at MongoDB?
HC: You get to work on things that matter. I’m very interested in lower level, technical work, which is hard to find as an intern. But MongoDB has provided me with the opportunity to do some real problem solving and figure things out strategically. Here you get to figure out the problems and work towards a solution, and in my opinion that’s really valuable.
MongoDB Celebrates Reaching 1,000 Employees
We’re excited to announce that MongoDB has officially reached 1,000 employees across the globe.
For some of us, it’s a time to reflect on how far we’ve come.
For others, this milestone helps to generates excitement for what is to come in the future.
A fantastic milestone for #mongodb today passing #mdb1k or 1000 employees and here's a photo of our wee celebration in Dublin to mark it. Amazing company and so much yet to come https://t.co/kqTBOw0PNa @MongoDBcareers @MongoDB @MongoDBDublin pic.twitter.com/zyuGhcFrkl— Eoin Brazil (@eoinbrazil) May 11, 2018