- Writing reusable, testable, and efficient code;
- Design, implementation, and maintenance of low-latency, highly available, and performant services;
- Implementation of security and data protection;
- Performance analysis of applications, monitoring and identification of problems that can occur from concurrent processing.
- 5+ years of hands-on experience in software development;
- Experience with developing and implementing REST APIs for the microservices architecture;
- Experience with continuous integration and continuous delivery tools;
- Experience working in an Agile environment;
- Experience in test-driven development;
- Experience working with any of the following is a big plus: Redis, Kafka, Vert.x, Node.js, Elasticsearch;
- Excellent knowledge of Relational (PostgreSQL) and NoSQL (MongoDB, Apache Hbase/Cassandra) databases;
- Depth knowledge of Java;
- Knowledge of traditional build systems (Gradle, Maven);
- Familiarity with containerization (Docker, Kubernetes) and logging/monitoring solutions;
- Good understanding of cloud infrastructure platforms, especially AWS, as well as infrastructure as Code tools (e.g. CloudFormation, Terraform, Ansible).