Over the past 14 months, Monetate engineers have had four Hack Days events, ranging from a single day to our most recent four-day hackathon.
During Hack Days, everyone in engineering gets to work, alone or in teams, on a project of their own choosing.
Some of the finished hackathon projects were relevant to our business, such as new product features and improvements to existing features. Some will never become part of our codebase, but allowed the engineer to learn a new language or API. And some were just off-the-wall ideas but a whole lot of fun to put into practice.
Of particular note this time around, all four of the quality-assurance engineers who participated in Hack Days got their hands dirty with some code.
Below are brief summaries of some of the projects that our engineers worked on during the final Hack Days of 2012:
Eric Snyder wrote a program to produce product recommendations using a genetic algorithm.
Derek Spicer, one of our project managers, learned Python and the Salesforce API and wrote code to pull SalesForce contact and account information into Jira, a spreadsheet, and a web page.
Jeff Patti and Jason Stelzer investigated the use of Graphite for real-time system monitoring.
QA engineer Kim Killaly got her feet wet in front-end engineering by working on some open tickets. She learned how to use our in-house action-building tools and performed cross-browser debugging.
Ashley Sheppard added some new features to our banner actions and experimented with ways to make it snow on clients’ sites.
Mary Beth Gombola and Tristan Hoffmann built a web app using Rails and Resque scheduler to monitor the price of an item and send an email alert when the price drops.
Patrick O’Brien and Jon Aldinger redesigned a client-facing dashboard to include real-time statistics and analytics, as well as frequently accessed links.
Spencer Creasey, Jon Aldinger, and Gil Raphaelli upgraded an internal debugging and profiling tool.
QA engineer Becky Hernandez-Cuebas learned how to use the Lingo object-oriented programming language in conjunction with Director to animate a short film.
Rob McGinley worked on a bunch of helpful little backend projects as well as some user-interface enhancements.
Jeff Horwitz automated the process of consolidating multiple production databases for use on individual development servers.
Chris West created a gravity DOM doodle, a JSON string editor, and a generic date difference function.
Tom Chandler started with FloraJS and added consumption, production, and reproduction to produce a self-sustaining ecosystem.
Ram Parthasarathy created a way to deliver customized messages to users with in-page notifications.
Jeremy Clewell used Python and the PySerial module to communicate over USB with a micro-controller and thermal printer, which prints out responses to custom queries made to a web service.
QA engineer Yaffa Landis wrote an automated-testing script to ensure that updates to our production scripts don’t break existing functionality.
Luke Walker wrote an iPhone theramin app.
Mike Hand worked on a number of new product features involving page scroll and banner placement.
Shaun Gallagher and Dave Scarlatella continued work on a user interface for creating and editing templates used in client campaigns.
Geoff Young worked on a product-search feature that presents meaningful content when the search returns no results.
Mike Brewster worked on a bookmarklet that searches through properties and values of a given object for a given string.
Chris Conley wrote a script that allows our engineers to compare recent active versions of our production scripts.