Processing a JSON object containing details of a product, and its' attributes (formatting, filter invalid values, sorting attributes). Code written with attention to OO design pattern best practices, Spring annotations and Java 8 lambdas