Movie Theater Subscription Platform

Scala Development Services For a Movie Theater Subscription Platform

Industry

Business Type

Main technologies

Services rendered

Engagement model

Project duration

Summary

SysGears provided Scala staff augmentation services for the U.S.-based subscription movie ticketing service. Working full-time with the client, our engineer helped improve the backend architecture. Among his key responsibilities were:

  • refactoring production-running microservices to organize the codebase for better maintainability, patch CVEs, and gain performance uplift
  • optimizing ETL pipelines that handle data from multiple providers (IMDb, MovieXchange, POSitive, etc.)
  • establishing seamless data exchange between microservices
  • building admin-facing REST API endpoints

This ensures the user-facing mobile app correctly displays the current theater lineup, screening schedules, and movie details.

About Our Client

Our client is a U.S.-based movie ticket subscription service that makes attending cinemas more affordable and convenient. The end product is a mobile application that enables users to buy movie tickets using in-app credits included in their subscription plan. 

Users can browse what’s playing at a chosen theater, view film details, check showtimes, and see available seats. To keep this information current, the service’s backend should receive updates from multiple movie data providers in near real time.

Engineering Challenges Requiring Scala Team Augmentation

The solution has a microservice architecture, and several services required a revamp at the time. While the software was already live, an inconsistent codebase made it difficult to maintain and evolve.

Why The Client Has Chosen SysGears’ Scala Development Services

The client sought to hire an offshore Scala developer to augment their in-house team with senior software engineering expertise, improve their existing codebase, and accelerate releases. SysGears is a trusted Scala development company with an extensive track record of projects written in Scala. We carefully analyzed the client’s requirements and suggested hiring a senior Scala engineer with a strong portfolio of Scala projects and rich experience working in distributed teams.

What Has Been Done

ETL Development and Optimization

Our developer refactored and optimized several ETL pipelines so mobile app users always see up-to-date information about movies — synopses, posters, cast, ratings, theater screenings, and showtimes — sourced from providers such as IMDb, MovieXchange, BoxOffice, and Jack Roe. On a daily basis, dedicated ETLs ingest raw data from these disparate sources, process it, and load it to the service database.

AWS Configuration

Since data freshness is critical to the service operation, event-driven ETL pipelines were built. Our Scala developer incorporated the use of  Amazon SNS and SQS queues to enable seamless communication between microservices once new files are uploaded to the S3 bucket. He also integrated Amazon OpenSearch, which enables fast search across the movie catalog and cast members, making it easier for operational teams to find and validate content records.

POS Integration

The service integrates with POS systems used by various U.S. theater chains, including Atlas Cinemas, Entertainment Cinemas, B&B Theaters, and Brenden Theaters. Our Scala engineer implemented integration with POSitive points-of-sale to retrieve the list of theaters serviced by this POS, their showtimes, and movies shown in each screening. This ensures the service displays what is playing at a specific theater on a specific date.

Microservices Optimization

As part of the architecture improvements described above, our Scala software engineer optimized the operation of four microservices: the first one pulls raw data from the data provider’s API and queues it in Amazon SQS; the second one processes the data from the queues and stores it in DynamoDB; the third one handles IMDb file imports from Amazon S3; the fourth one provides REST endpoints for working with entities like provider movies, theaters, and similar.

API Endpoint Implementation

Our Scala backend developer built several admin-facing API endpoints that enable operational teams to manage processed movie data, which will later be displayed in the user-facing app. This helped streamline the back-office workflows and improve control over catalog quality and consistency.

Outcomes For the Client

  • Improved microservice codebase, reducing subsequent maintenance effort and accelerating ongoing development
  • Streamlined provider data synchronization, ensuring the mobile app shows up-to-date screening schedules and movie details
  • Enhanced back-office tooling, speeding up content verification and other related admin operations

All Technologies Used

Scala

Play3 Framework

Pekko (actors/streams)

AWS SQS

SNS

EKS

S3

DynamoDB

OpenSearch

ScalaTest

Redis

Kubernetes