Senior Java/Scala Engineer

On behalf of Addison Global, Ciklum is looking for Senior Java/Scala Backend Developer to join Malaga team on full-time basis

Responsibilities:
Develop Akka based microservices using Scala/Java and scale them out by using the clustering and sharding capabilities.
Apply Event Sourcing, Backpressure and CQRS patterns when applicable.
Containerize microservices using Dockers to improve testability, portability and deployability.
Produce property based and unit tests to help ensuring the quality of the code.
Design REST and/or Message based APIs and outline the interactions amongst them.
Provide feedback to the architects on the designs so we get to improve our architecture through experience.
Contribute on improving the development lifecycle and mentor other members of the team.

Requirements:
Deep knowledge of the Actor Model and experience with the Akka Framework.
Solid hands on experience on Functional/Object-Oriented Programming and developing Scala/Java applications.
Experience with REST APIs and Message Brokers.
Solid experience with GIT, SBT/Maven.
5+ years of IT experience.
Bachelor Degree in Computer Science or related disciplines.
Mastery of the Giphy plugin in Slack.

Desirable:
Microservice oriented architecture and patterns such as event sourcing and CQRS.
NoSQL databases such as Cassandra, DynamoDB, Riak.
Akka Extensions: Clustering, Sharding, Streams, Distributed Pub/Sub.
Testing libraries: ScalaTest, Specs2, ScalaCheck, Mockito.
Containerization with Docker.
A knack for benchmarking and optimisation
Familiarity with Bitbucket, JIRA and Confluence.
Experience with Agile Development Process (Scrum).
Love for innovation and new technologies

What’s in it for you?
Work in an environment made by people who wants to drive technology and not to follow;
Your opinion matters;
Great team;
Great place to make products customers love;
State of the art, cool, centrally located office with warm atmosphere which creates good working conditions;
Competitive salary.

Fields marked with an * are required