Position: Java Software Engineer
Company: Mirantis
Category: Java
Experience required: 3y
English level: intermediate

Company Description
Mirantis is the fastest way to modern apps, providing containers-as-a-service at enterprise scale. The company uses a unique as-a-service model to deliver Kubernetes and related open source software, empowering developers to build, share and run their applications anywhere - from public cloud to hybrid cloud to the edge. Mirantis serves many of the world’s leading enterprises, including Adobe, DocuSign, Liberty Mutual, PayPal, Reliance Jio, Splunk, STC, Vodafone, and Volkswagen. Learn more at www.mirantis.com.

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 stakeholders 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 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

Qualifications
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 other technical teams, business analysts and management to collect requirements, describe software product features and technical designs

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 BPMN 

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

Additional information
What does Mirantis offer you? 

Competitive salary (after interview)

Career and professional growth

20-working days paid vacation

Medical insurance

Benefit program