Senior Java/Scala Software Engineer

Kyiv, Ukraine

Striving for excellence is in our DNA. Since 1993, we have been helping the world’s leading companies imagine, design, engineer, and deliver software and digital experiences that change the world. We are more than just specialists, we are experts.

DESCRIPTION


Our client is one of the world’s largest providers of financial information and risk management solutions. The company empowers its’ clients to make smarter and more sustainable investments, drives market transparency and helps preventing financial crime. Serving more than 40,000 institutions in over 190 countries, it provides information, insights, and technology that enable innovation and performance in global markets. By advancing its customers, the company encourages progress for the worldwide financial community.

The project our team is currently working on a part of a suite of DIY (do-it-yourself) tools for our client. It is aimed to accommodate an endless set of metadata use cases. Features: store XML corpuses with any metadata type (entities, categories, relations, events, custom labels). The aim of the service is to process any unstructured content type: index, use full text search.

On his role, you will have an opportunity to join the distributed customer team.

Project technologies and tools

  • Web Gateway – REST API for the clients;
  • Writer – writes data into Kafka, MySQL and AWS S3;
  • Reader – reads from the Kafka queue, indexes data into ElasticSearch;
  • Task Manager – handles reports, current tasks status.

Responsibilities

  • Complete services implementation (services are currently deployed as a separate applications: Akka HTTP; and communicate with each other using HTTP and Kafka as an Event Sourcing engine);
  • Design, develop and maintain text metadata extraction components;
  • Analyze complex textually based problems and find algorithmic solutions to them, while taking into consideration performance, scalability and robustness.

Requirements

  • 3+ years of experience in software engineering;
  • Proficiency in Scala development;
  • Expertise in the following technologies: Kafka, Akka HTTP, Akka Streams, Play Framework;
  • Experience in SQL database server;
  • Confident knowledge of Docker, AWS services (S3, cloud, Cognito), ElasticSearch;
  • Experience in microservices architecture;
  • Good communication skills;
  • Intermediate or higher English level (B1+), spoken and written.

We offer

  • Competitive compensation depending on experience and skills;
  • Individual career path in engineering;
  • Social package - medical insurance, sports;
  • Sick leave and regular vacation;
  • Partial coverage of costs for certification and IT conferences;
  • English classes with certified English teachers.