Java Software Engineer
oliverpeters
Job Description
-
Design, develop, and maintain high-quality backend services and APIs using Java 17+
-
Work with Spring Boot and Spring Cloud for building scalable microservices
-
Implement and optimize data access layers using Hibernate / JPA
-
Integrate and manage messaging systems such as Kafka or RabbitMQ
-
Deploy and manage applications in AWS / Azure / GCP environments
-
Develop and maintain CI/CD pipelines using Jenkins / GitHub Actions / GitLab CI
-
Work with Docker and Kubernetes to containerize and orchestrate services
-
Write clean, testable code following TDD and best practices
-
Collaborate with frontend, DevOps, and QA teams in an Agile environment
-
Contribute to architectural discussions and help shape technical direction
Key Technologies
-
Core Language: Java 17+
-
Frameworks: Spring Boot, Spring Cloud, Micronaut or Quarkus (optional)
-
Persistence: Hibernate, JPA, PostgreSQL, MySQL, MongoDB
-
Messaging & Streaming: Apache Kafka, RabbitMQ
-
Cloud Platforms: AWS, Azure, or Google Cloud
-
Containerization: Docker, Kubernetes, Helm
-
CI/CD & Build Tools: Maven, Gradle, Jenkins, GitHub Actions, GitLab CI
-
Testing: JUnit 5, Mockito, Testcontainers, Cucumber
-
Version Control: Git, Bitbucket
-
Observability: Prometheus, Grafana, ELK Stack, OpenTelemetry
Required Skills & Experience
-
3+ years of professional experience in Java software development
-
Proven experience with Spring Boot and RESTful API design
-
Solid understanding of microservices architecture and distributed systems
-
Experience with relational and NoSQL databases
-
Familiarity with cloud platforms (AWS preferred)
-
Experience working in Agile / Scrum teams
-
Strong debugging and problem-solving skills
-