Position: Scala Developer
Category: Scala
English level: upper
Years of experience: 5


LivePerson

Technologies: Scala, Java, Apache Kafka, Apache Spark, Cassandra, Docker

Description: LivePerson is a company that develops conversational commerce and AI software.
The main goal was to build a service that would predict agent and user behaviour based on data from Kafka, and then to use this new data to manage engagements (invites).
Also, our team inherited 4 complex services from which we were maintaining, fixing and updating.

Responsibilities: Architecture design, decision making, back-end development, designing and creating new features, refactoring, mentoring.

==================================================

Database migration

Technologies: Scala, Amazon DocumentDB, IBM Cloudant, ReactiveMongo, Akka Streams, Play Framework, ScalaTest

Description: The main goal of the project was to move the application (on the microservice architecture) and data from IBM Cloudant to Amazon DocumentDB without changing API and main functionality so that we could switch between the two databases, and cease using Cloudant at some point in the future.
Our job was to develop the corresponding DocumentDB service layers that would replicate the defined Cloudant behavior and produce the same output. To validate the interchangeability, we used different types of tests: unit, integration, migration and e2e.

Responsibilities: Back-end development, designing and creating new features, data migration, optimization, refactoring.

==================================================

Nielsen

Technologies: Scala, Apache Spark, Apache Hadoop, Amazon Web Services

Description: Collecting, processing and delivering big data related to TV viewings and people's preferences. Nielsen company operates all over the world satisfying needs of advertising agencies, worldwide corporations and other service providers.

Responsibilities: Back-end development, optimization, refactoring, unit and integration testing, mentoring of junior developers.
Сложные задачи. Профессиональный рост. Адекватный менеджмент.