When our engineers aren’t creating the best products to help our customers bring their big ideas to life, they’re working to bring their own ideas to fruition. Launched in 2013, hackathons are a big part of MongoDB’s engineering culture, giving our teams the freedom to create, innovate, and learn.
About Hackathons at MongoDB
Once a year, members from our Engineering department (including Product Managers, Support Engineers, Developer Advocates, and more) spend a week working on a project of their choice. Whether it be with a team or solo, the sky’s the limit. For some, it’s about creating new features or product updates to serve our customers better. For others, it’s about building internal tools and processes to make their day-to-day easier. Some engineers even use the time to work on passion projects or focus on self-improvement via online courses and reading a backlog of technical papers.
No matter the goal, the hackathon is a much-needed and appreciated week for sparking new ideas, working with different people, and building useful knowledge and skills.
How It's Judged
Our engineers battle it out to be named the winner in one of several categories. To be considered, participants create a project demo and submit it on the Thursday afternoon of hackathon week. From there, the demos are divided among four groups of judges consisting of three or four judges each. By Friday morning, the judges select demos (which are open to all employees for viewing) to move into the final round of judging.
The Prizes
For our hackathons, engineers aim to get the most votes in 10 selected categories. Some categories include:
- Most Likely to Be Adored by the Support Team
- Most Likely to Make the Company 10 Million Dollars in 2021
- Most Likely to Be Deployed by Production
- Best (Ab)Use of Cloud/Ops Manager
- Best Eng/Non-Eng #BuildTogether Award
The Projects
Past winning projects that made their way into production include MongoDB Charts, custom JS expressions in the aggregation framework, and GraphSQL support in MongoDB Realm Sync.
Out of more than 120 submitted projects, here are few that won our 2020 hackathon:
Leafy Catchy
Eileen Huang, a Product Designer based in MongoDB’s New York City headquarters, pulled together a team of designers and engineers to build a game users can play while waiting for their cluster to build.
“We wanted to show that even when doing something technical such as managing databases, people could always benefit from having a delightful moment,” she says. “Although the game isn’t live, it was a super fun week of exploring various game design techniques and trying to create a fully fleshed-out game with a playable character, sound, game UI, and more.”
Evergreen Project Visualizations
David Bradford, a New York City-based Lead Engineer for the Developer Productivity team, built a tool to visualize the runtime and reliability of the test suites in MongoDB’s continuous integration system. The tool plots the averages for all the test suites against each other and allows users to click into a given test suite to see a more detailed view of a suite’s history.
“The project was mostly to address a personal pain point,” David explains. “We see the effects of long-running or unreliable tests fairly frequently, but given the number of tests we run, it takes some investigation to know which improvements would have the most impact. Building a tool that can visualize the data makes it easy to find which test suites provide the most benefits from improvements. It also enables other teams and engineers to start the investigations themselves.”
MongoDB Charts Social Sharing
Matt Fairbrass, a Senior Software Engineer based on our Sydney team, originally wrote a proposal for MongoDB Charts Social Sharing as a Request for Comments. However, the hackathon gave him and Senior Software Engineer Hao Hu an opportunity to collaborate on a proof of concept. With the core focus on data sharing, their goal was to make it quick and easy to share individual charts with others — whether via email or by posting to one of the social networks. To do this, they added controls to the chart Embedding Dialog to make this task as simple as the single click of a button.
“As the discourse of the modern world unfortunately has shown us, being able to distinguish between what is factual and what is fake is becoming increasingly more important,” Matt states. “A result, data is now more than ever the most important tool we can use to surface the unbiased and unvarnished truth in social debate. But this is only true if the data is accessible to everyone.”
Charts are visual by their very nature, he continues, “so it’s somewhat ironic that the current experience of sharing a link to a publicly accessible chart on a social network is anything but visual. So, the second goal of our project was to generate rich preview images of the chart being shared dynamically, and automatically attach them to the social media post by using the Open Graph Protocol, all while respecting the security permissions of the chart as set by the author.”
Matt and Hao successfully tested this by extending the existing infrastructure to run an instance of Puppeteer. The system worked so well that they were able to extend the same functionality to support dynamically generating screenshots of publicly linked shared dashboards as a stretch goal.
“This project has also opened up other avenues for the MongoDB Charts team to explore for further enhancing the product, so this proof of concept has now been turned into a user story that will later be worked on by the broader team,” Matt says.
Raspberry Pi Astronomical Database
Bruce Lucas, a Staff Engineer based in New York City, created a project inspired by his personal hobby, which is to design and 3D-print an altazimuth telescope mount.
“My goal was to leverage a queryable database of stars to write software that automatically captures images, points the scope, and tracks the moving sky by using a Raspberry Pi,” he says. “To do this, I wanted to test a theory to see if a MongoDB database with geoqueries could be used and would run on the Raspberry Pi.”
Pinwheel
Emily Cardner, a Campus Recruiting Manager based in New York, partnered with engineers on a project to help manage cohorts of employees. With MongoDB’s robust New Grad Program that allows interns to rotate on various teams before being permanently placed, managing the entire process had become overly tedious and complicated, and she wanted to use an app to make it easier.
“Even before the hackathon, I did some research to see if a platform like this existed, but I couldn't find anything,” she explains. “I thought I could throw it out as an option to see if someone looking to join a project wanted to build an app. I knew it could be a cool project working with MongoDB’s Realm product and that there could be an appetite for UI folks, but there was one problem: I’m not technical at all! So, I recruited a few folks via Slack and generated a bit of interest from various teams. They came up with an awesome minimal viable product (MVP) after we had a few brainstorming sessions.”
This project is important for a few reasons, she adds. “First, I’m now working with the Engineering Corps team that creates internal tools to turn the MVP into a real product. As it turns out, other folks at the company needed cohort management tools too, so now L&D, Education, and Sales Enablement teams are all working with us on it,” she says. “Second, I learned a lot about the engineering process through this project. It was really cool to create my own mockups and collaborate with the engineers to see how products are created. I think it will help me more when working with engineers in the future.”
Emily adds that she may have influenced a new hackathon award category. “I may or may not have made up my own award and then lobbied the judges to include it,” she says. “I thought creating a #BuildTogether award would encourage more people like me who are not traditionally in Engineering to work with engineers and create cool products. The judges agreed, and we ended up winning!”
Why This Matters
Our engineers covet this time every year to explore, create, and tackle new problems. Hackathon week also offers an opportunity to connect and collaborate with others. Many projects have openings for additional members, allowing employees from various technical areas to partner with people they might not normally work with, establishing a stronger culture, and fostering cross-departmental relationships.
Hackathons allow our engineers to work on projects that are dropped or pushed down on the priority list in favor of competing priorities. Even if the projects aren’t implemented, seeing demos and having thoughtful conversations about them helps to spin up new ideas for things to add to our product roadmap. By encouraging people to step out of the day-to-day, take a moment (or a week) to think differently, and work with other people who offer new perspectives, the hackathons not only add value to our product offerings but also help our engineers expand their skills and creativity.
Interested in pursuing a career at MongoDB? We have several open roles on our teams across the globe, and would love for you to build your career with us!