Position: Java Developer
Company: Mirantis
Experience required: 3y
English level: intermediate

Mirantis is looking for an experienced Java Software Engineer for joining a challenging project with our partner - telco company in Australia. Candidates should have decent written and good  spoken English in order to communicate with customer and colleagues.
Goal of the project is to create a stable and efficient microservice architecture-based platform that automates network configuration processes and provides various aspects of networking services via interacting with other microservices and hardware systems.
Technologically it consists of a set of synchronous (e.g. REST-based) or asynchronous (e.g. AMQP-based) endpoints with a possibility of a user interaction through Web UI.
Responsibilities
Design and develop scalable REST/AMQP based services with zero downtime
Work closely with customers and contractors in a collaborative development environment
Conform to the development practices: Code Reviews, CI/CD, automated tests, etc.
Troubleshoot problems in the QA and production environments
Occasionally travel to customer sites
Requirements
2+ years (for Middle level candidates) or 4+ years (for Senior level) experience on real-world projects
RDBMS-related knowledge (basic concepts, SQL, practical experience with at least one RDB)
Experience with the following technologies/tools: Servlet API, JDBC, JPA, Spring Framework (Boot, Core, etc.)
Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations
Experience in communicating with end users, other technical teams, business analysts and management to collect requirements, describe software product features, technical designs, and product strategy
Strong background in object oriented design, data structures, algorithms and distributed programming
Experience with designing and implementing highly available REST services
Upper-intermediate written (for Middle level candidates) and written+spoken (for Senior level candidates) English
Desired
*nix operating systems experience
Cloud platforms (AWS, Azure) and relative tools (e.g. AWS SDK for Java) experience
Understanding of JAX-RS and experience with at least one implementation
Knowledge of messaging systems/protocols: AMQP (RabbitMQ), Kafka, etc.
Experience with issue-tracking systems, such as JIRA
Source control (preferably Git) usage experience
We offer:
Competitive salary (after interview)
Career and professional growth
20-working days paid vacation
Medical insurance
Benefit program