Re:Invent Hackathon – Defending the Title

| | | 0 comments

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:

  1. Mock AWS Pay Notifications (Container)
  2. Mock Twitch Responses (Container)
  3. Create Test harness (AWS CloudFormation ECS cluster, EMR)
  4. Determine how to visualize the results (AWS CloudWatch)
  5. 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!

Related Blogs

Container Orchestration

Container Orchestration

As nearly 70% of all developers adopt containerization as their method of expedient deployment and cost-savings, managing containers has become one of the most important facets of computing. The following is a primer on the concept of container orchestration, covering...

Migrating to the Cloud Using Lift and Shift

Migrating to the Cloud Using Lift and Shift

What is Lift and Shift in Cloud Migration? You’ve completed all due diligence, decided which platforms fit your operation, and finally accepted that a move to the cloud is the best way to scale. With that big decision out the way,  the next one comes in the form of a...

Demonstration of Penetration Testing Techniques

Demonstration of Penetration Testing Techniques

Join Foghorn’s diligent, cloud security pro, Dennis Pelton, as he takes us on a super helpful, 6-minute tutorial highlighting techniques he has in his penetration testing toolbox. In this exercise, he looks at two types of attacks- cross-site scripting and SQL...