For the second year in a row, Foghorn teamed up with Ellie Mae to compete in the “AWS Non-Profit Hackathon for Social Good.” After last year’s victory assisting Thorn in Protecting AWS S3 Resources, we knew how tough of a challenge we had ahead of us. We walked into a room and saw 30 teams ready to put their skills to the test and help one of the four charities participating. We were given 13 hours (9AM – 10PM) to understand four Non-Profit challenges, choose one of them to work on, and finalize a viable solution with a corresponding presentation to share with the top tier judges.
We chose to assist GameChanger, a company that leverages gaming to engage and inspire children suffering from life-threatening illnesses. Their challenge was focused on performing load testing for their Twitch integration. This integration featured a response message from Amazon Pay after a donation, triggering a lambda which posted a thank you message to the Twitch channel. Given that this was slated to go live in a few weeks, they needed to QA prior to launch.
We decided the best method to perform the load testing was to mock the Amazon Pay notifications and Twitch responses. We opted to containerize these tasks to ensure our test harness was completely independent of their code while testing GameChangers’ lambda and nothing else. Additionally, we wanted a cost-effective and simple way to deploy the test harness and destroy it when we were finished.
Once we agreed upon a design, we wanted to take it a step further and engage the Twitch Community to donate even more. After looking into the Twitch response, we saw it included a link to donors’ avatars. For more impact, we decided to convert the event image into a mosaic comprised of every donor’s avatar.
We hoped this would help further visualize the goal, encouraging others to donate more and, as a result, “clear up” the image.
Our Tasks:
- Mock AWS Pay Notifications (Container)
- Mock Twitch Responses (Container)
- Create Test harness (AWS CloudFormation ECS cluster, EMR)
- Determine how to visualize the results (AWS CloudWatch)
- Mosaic Creator (S3 Notifications, SQS, Container, Python)
The team was successful in completing all of the tasks that we outlined above. We provided GamerChangers with working code, diagrams, and examples of how it worked. As with most Hackathon codes, we know there are still some bugs that need to be cleaned up. As a result, we are still in touch with the GameCharger team to help answer any outstanding questions during the transition.
While we “won” the Hackathon, receiving front row tickets to Dr. Werner Vogels’ memorable keynote, a group picture with Dr. Werner Vogels, and lunch with Jeff Barr, the Non-Profit companies were definitely the winners. All the designs and code created was provided to the non-profits, allowing them to continue to make an impact in a more efficient way.
PS: Look for a future blog post that will go into more technical details on how our solution works under the covers!