Developed in Scala, with 3 Docker containers linked