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.