How Roswitha Found the Right Career at the Right Time
Have you ever wondered what it would be like to re-enter the workplace after years of taking a break? Many people who experience a long gap in their resume are nervous about applying for a new job. The good news is that most companies value your experience and skills as long as you are passionate and able to adapt quickly.
Roswitha Remling, a Tech Support Triage Engineer at MongoDB, experienced this first-hand. Before she came to MongoDB, she took a break from working for several years to explore the world and learn about what it was she really wanted to do. She's visited 92 countries, 7 continents, and has even learned how to fly a plane!
Announcing the 2018 Hacktoberfest Winner
On behalf of my team and everyone at MongoDB, I'm excited to announce the winner of the MongoDB Hacktoberfest - Best use of Stitch contest - Stephanie Orpilla with their application, MorningPages. It's an application designed to improve users creativity by ensuring that they write every day.
MongoDB Celebrates the Season of Giving Around the World
As the holidays quickly approach, our teams have been celebrating around the world, and also giving back to their communities. Across MongoDB, here are just a few examples of how some of our offices celebrated the season of giving in each corner of the globe.
MongoDB in 2018
Welcome to that time of the year when we look back at what we've delivered to our users and community in the past year. Here's MongoDB's 2018, month by month - it's been a great year so let's start with...
The year started with the announcement of a new Go driver in development. Go is a popular language, used widely including inside MongoDB Inc, and we decided to start developing an official driver.
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.