Position: Senior Java developer
Company: GlobalLogic
Experience required: 5y
English level: intermediate

We are looking for a Java Developer who recognizes the importance of both individual and group efforts to deliver high-quality products that meet customer needs.  


Our tech stack and tools include Java 8 and 11, Spring, Spring Boot, Servlets, REST API, ORMs (Hibernate, ScalikeJDBC, SLQ ( PostgreSQL, SQL Server), Maven, Git, Azure DevOps, Kafka, Docker, Kubernetes, ELK, and Prometheus.

**Experience with:**
- the Object-oriented analysis and design (OOAD)
- the Unit testing techniques and frameworks
- An agile development environment
- Good understanding of the SOLID principles
- Technical knowledge of cloud-based systems (infrastructure, platform types, and software as a service principle) is considered an advantage
- Knowledge of ReactJS and experience with the microservice architecture or Azure technologies are considered as an advantage
- Good written and spoken communication in English

**Job Responsibilities:**
- Designing and developing a modern, enterprise-class solution that is available as Cloud (SaaS) and on-premises versions. The solution is based on a microservice architecture with Kubernetes, Kafka, and Docker technologies on board
- Following best software development practices that result in very good code quality (doing unit tests, code reviews, and knowledge sharing)
- Working in a cross-disciplinary team using the Agile development methodology
- Sharing your knowledge and experience with other team members
Your background
- Bachelor’s degree or higher in Computer Science or an equal field of study
- At least 3 years of experience in Java development
- Strong understanding of service-oriented software and large-scale distributed systems

**Project Description**
A project within the Energy domain that covers Asset Performance Management (APM) and is designed to provide health and performance insights to prevent critical asset failures while optimizing asset lifecycle costs. The software you will be working on will help clients to:

- Increased reliability by identifying, prioritizing, and resolving risks

- Reduce maintenance costs by replacing the ineffective time-based practices

- Lower capital expenditures by extending asset lifespan