Position: Senior Scala engineer (FP programming)
Company: Thinksoft
Experience required: 5y
Category: Scala
English level: upper
Published: 2020-09-01T00:00:00+03:00

The technical stack is - Scala (with Akka Http, Akka Streams, Doobie, Circle, Cats, Scalaz), AWS (specially EKS, S3, Kinesis, CloudWatch), Terraform, Kubernetes.

Working model - we follow Agile methodologies based on each of the team's needs, we operate in 2-week sprints, we do the planning, grooming and have retros. 

You will be working together in a friendly team - backend and frontend engineers, QA, DevOps, BI, PM.

Here is a short description of what our engineers mostly dealing with daily:
Infrastructure - we run pretty much everything in AWS. Migration from ECS to Kubernetes 95% complete.

Event processing - Kinesis as event processor and event stream - every service streams events to other services via kinesis events pipeline.

Microservices - all in Scala (30+ services, using cats heavily and monix for effect types). 
Code is written mainly in a functional style, moving towards more abstract functional - tagless final). Other libraries that we heavily use: cats-effect, cats-tagless, htt4s, akka-http, shapeless, circle, doobie.

Misc - We also have 1 Spark EMR instance for generating and processing reports.

Data Lake - S3

DWH - Amazon Redshift