Once again, my night’s sleep was interrupted by an insistent alarm. I sat up in a brief moment of panicked confusion and tried to make sense of what was going on. Had the Metadata Registry’s web server crashed again, requiring a midnight trip to the office? Was there an infant in the house in need of a night feed? It took a few more seconds before I reached clarity — I was up at this ungodly hour on a weekday intentionally, for Day 17 of Advent of Code.
Created by Eric Wastl, Advent of Code is a series of programming challenges released every night at midnight (Eastern time) between December 1st and 25th. Each challenge is a holiday-themed two-part puzzle that participants can solve with any programming language they prefer. Novetta has been a proud corporate sponsor of Advent of Code since 2016 and also maintains a private employee leaderboard with cash prizes. Over 100 Novetta employees (13% of the entire company) joined the fun this year, including our President and CEO, Tiffanny Gates, and several members of the executive leadership team.
The reasons for participating in Advent of Code are myriad. Some employees use the competition to flex their problem-solving skills or get hands-on with a new programming language. Others try to solve the challenges as quickly as possible, or design solutions for maximum performance, brevity, or elegance. As a former software engineer, I joined to keep my technical skills from withering on the vine. I also wanted to share a fun experience with talented engineers across our geographically-dispersed company, many of whom I only know through their chat avatars.
The Day 17 puzzle involved a North Pole reservoir for thirsty elves. Given a cross-section of sandy ground, participants were challenged to determine how much water flowing out of a spring would seep into natural clay cisterns underground. I began Day 17 by studying the problem statement to confirm my understanding of the requirements. I then prototyped possible algorithms on a piece of scratch paper (the back of which was scrawled with abandoned algorithms for making elves navigate a cave). After a couple iterations on paper, I switched to the keyboard to code in the boring, yet reliable, Java language.
This pattern of rapid requirements analysis and iterative exploration followed by focused execution is also how our company develops advanced analytics for Intelligence, Defense, Federal, and commercial customers. Novetta nurtures a culture of innovation and creative problem-solving, encouraging employees to approach analytic challenges from unexpected angles. The data scientist doing multivariable calculus in her head, the DevOps cloud guru optimizing the ingest pipeline, and the computer science intern with an encyclopedic recall of data structures and algorithms — every employee contributes a unique perspective for rapidly evolving missions, where established practices are too rigid, slow, or costly.
I lucked out on Day 17. My solution worked with minimal debugging and I was the first Novetta employee to finish the puzzle. I attribute my success to being comfortably efficient with my language and development environment along with a significant investment in continuing education (hundreds of hours making waterfalls in Minecraft and Terraria). It also didn’t hurt that several competitors had taken the night off to get some rest!
Advent of Code has been a rewarding experience in spite of its effect on my sleep schedule. It’s inspiring to see other employees pop up on the leaderboard in real-time and to commiserate over particularly tricky puzzles. I’m also excited to see some intense competition from our new engineering colleagues at Berico Technologies (a cloud and analytics company that Novetta acquired in November).
Shared experiences like this are just one of the many reasons that Novetta is a Great Place to Work. I’d like to participate again in 2019, although I’m currently lobbying for Novetta to send us all to an earlier time zone for the duration of the competition, say, Hawaii?
And the NOVETTA winner is….
1st: Matt Boehm, 50 stars with median solve time of 36:39
2nd: Nathan Shirley, 50 stars +5:05 (41:44) <- his median solve time was 5 min 5 sec slower than the Matt’s
3rd: Jonathan Skeate, 50 stars +14:50 (51:29) <- 14 min 50 sec slower than Matt
With a record number of 108 Novettans participating this year, we earned a total of 1,816 stars; 9 of these players earned all 50 stars. Congratulations to everyone who participated! We’d also like to mention that, among the thousands of worldwide players, Matt Boehm, Nathan Shirley, Jonathan Skeate, Mike Herms and Ryan Widmaier recieved GLOBAL RECOGNITION by posting times fast enough to be in the first 100 in the world for a puzzle. Matt and Nathan each did it 7 times!!