Hilight | Notes |
---|---|
Demo Site | Endpoint hosting REST APIs that this repository delivers. The REST APIs execute live queries on an an Amazon Redshift cluster. REST API Demo URL (Current Status: Shutdown) |
Scaling Athena | Thoughts on how to scale this application to extreme levels beyond the expectations of the current programming challenge. |
Technology Stack | This repo uses a variety of technologies including Amazon Redshift, S3, Elastic Beanstalk, Java 11, Spring Data, Spring Boot, Swagger, Gradle, JUnit, Docker and Kubernetes. See Technologies used by Athena |
Engineering Best Practices demonstrated | See Engineering best practices demonstrated in this repo |
End to end implementation | This repo implements a set of use cases with working automated tests. See What software components this repo implements |
GC Breakage Forecast Approaches | Multiple approaches on implementing a hyper scale gift card breakage forecast platform. See Discussion on multiple approaches to forecast gift card breakage |
US shoppers spent around $40 Billion last year on Gift Cards. Around $1.2 Billion of this was left unredeemed. Based on existing regulation in various states, governments can claim away this money from businesses selling these gift cards. Interestingly, as one is aware, its best to ensure that customers redeem gift cards as much as possible. That increases the chances of uplift, acquire new customers, promote new business and actually allow the business to keep the revenue from the gift card sales at the first place (technically speaking in accounting terms, the GC sale revenue is nothing more than a liability on the books till the consumer actually redeems the gift card!).
- Minimize escheatment - Its just a risk and doesn't help my business. Solve the breakage problem to start with.
- Maximize uplift - That's a major success criteria for my business.
- Tools to predict breakage values each quarter by card type. I need this for planning and to protect my Gift card business better.
- Tools to notify customers and hence prevent breakage, thereby creating uplift hopefully. This is a key success factor for Athena.
- Use historical data around breakage and/or train a model to predict breakage numbers. Find out when redemption chances become remote.
- Try to formulate a 'smart' strategy to trigger notifications to the customer so that chances of actual redemption improve. A 'dumb' strategy would be to just trigger notifications a week or two weeks prior to expiry. The smartness factor is a function of multiple parameters that might include customer profile, situational aspects, in store/online offers etc. We must try everything possible to not only just prevent breakage, but create uplift. Historically, 65% customers have a likelihood of spending 38% more than the gift card value. Tapping this opportunity should be a key success factor for Athena.
- Build a solution that scales with data volumes, is dynamic enough to cater to dynamic escheatment regulation and enables the smart insights mentioned above.
-
As a gift card issuer, I want to see by card type, breakage probability and projected breakage value at a given point in time. A simple UI is just fine. If you can aggregate by brand, that's awesome. If you can show me an overall predicted escheatment value for my business, it would be great.
-
As a gift card issuer, I want the system to tell me the best possible time when notifications should be generated to customers so that I can maximize uplift. It's awesome to see a predicted uplift value in response to this action that was taken.
See ARCHITECTURE.md for a detailed discussion.
See DEVELOPMENT.md
The APIs developed as part of the programming challenge:
Thing big, start small... The design and code developed as part of the programming challenge addresses a thin sliver of the broad objectives mentioned earlier.