Position: Senior Java Developer
Company: Freelance
Category: Java
Experience required: 3y
English level: upper

We're looking for an experienced Java software engineer with the experience of developing enterprise java web applications, familiar with challenges of cloud, and at-scale enterprise deployment.

The job is based in Lviv, Ukraine.

Technology stack:
•	Java 8 / Java 11, Gradle, Spring Framework 5, Spring Boot 2
•	PostgreSQL
•	Docker, Kubernetes, GCP
•	Jenkins, GitHub, SonarQube
•	ActiveMQ Artemis
•	Apache Drill, Apache Calcite, Hazelcast

Responsibilities:
•	Design and implement new features
•	Support existing functionality
•	Refactoring, bug fixes, and unit tests
•	Participate in peer code reviews and technical meetings 

Required Skills and Experience:
•	At least 3+ years of relevant work experience of backend development
•	Excellent knowledge of OOP programming style
•	Excellent knowledge of Java, Spring, JDBC, SQL
•	Excellent understanding of microservices architecture
•	Experience in building Web services (RESTful) and designing the API
•	Experience in test automation (unit, integration, acceptance tests)
•	Advanced knowledge of refactoring techniques, anti-patterns and code smells
•	Strong understanding of performance optimization techniques including memory leaks detection
•	Deep knowledge in developing non-blocking code, and resorting to advanced techniques such as multi-threading, when needed.