Angie's List is a US-based, paid subscription supported website containing crowd-sourced reviews of local businesses. Angie's List has been a trusted name for 20 years for consumers that depend on whenever they have home or health care needs. The company also offers Fair Price and Service Quality Guarantees to over 3 million members.
A group of developers joined Angie's List's engineering team and started working with them shoulder to shoulder. First, the existent monolith application was decomposed into several independent deployable units. In order to do so, DDD concepts were brought to the table: all different subdomains were identified through the input of domain experts which lead to the definition of bounded contexts and the limits and responsibilities of the new microservices themselves. Microservices were developed using Play, Akka and Slick as main technologies. An Event Bus for performing Event Sourcing was also implemented using Kafka. Additionally, all search features were refactored using ElasticSearch as their engine.
The work performed and the knowledge provided by the team was essential for meeting Angie’s List’s goals. The foundations for a renewed cutting-edge system were laid out which insured the engagement of its extensive user and customer base and the prosperity of its business operations.