Senior Java Software Engineer
RemoteDublin, County Dublin, IrelandseniorFull-time
- Posted
- today
- Source
- LinkedIn (remote, Europe)
- Field
- Engineering
Skills
ElasticsearchCommunicationPostgreSQLKubernetesREST APIsSecurityMongoDBDockerDevOpsMySQLRedisNoSQLCI/CDAgileJavaJiraSQLLLMsGitAI
Description
Altimetrik Poland is a digital enablement company. We deliver bite-size outcomes to enterprises and startups from all industries in an agile way to help them scale and accelerate their businesses. We are unique in Poland's IT market. Our differentiators are an innovation-first approach, a strong focus on core development, and an ability to attack the challenging and complex problems of the biggest companies in the world.
We are looking for an experienced Senior Java Developer with 8+ years of hands-on experience designing and developing enterprise-grade Java applications. In this role, you will build scalable, secure, and high-performance backend services, contribute to distributed system architectures, and work with modern Java technologies and cloud-native platforms.
You will collaborate with cross-functional teams in an Agile environment, applying best engineering practices and leveraging AI-assisted development tools to improve productivity and code quality.
Responsibilities:
- Design, develop, and maintain scalable enterprise applications using modern Java and Spring technologies.
- Build secure, high-performance RESTful APIs and microservices.
- Develop event-driven solutions using Apache Kafka and messaging systems such as IBM MQ.
- Design and optimize database schemas, SQL queries, and data access layers.
- Implement application security using Spring Security, OAuth2, OpenID Connect, and JWT.
- Apply resilience, caching, and performance optimization techniques to ensure system reliability.
- Write clean, maintainable, and well-tested code following established design patterns and engineering standards.
- Implement automated unit, integration, and contract tests.
- Use AI-assisted development tools to accelerate coding, testing, code reviews, and documentation.
- Deploy and support applications in containerized environments using Docker, Kubernetes, and Red Hat OpenShift.
- Contribute to CI/CD pipelines, application monitoring, and distributed tracing.
- Collaborate with distributed teams, participate in code reviews, and contribute to technical discussions and architectural decisions.
- Participate in the full software development lifecycle, including planning, development, testing, deployment, and maintenance.
Requirements:
- Java: 8+ years of hands-on experience with Core Java, preferably Java 21 LTS, and familiarity with modern Java language features and JVM internals.
- Spring: Strong experience with Spring Framework and Spring Boot, including RESTful services and microservices development.
- Databases: Strong SQL and PL/SQL skills, with experience in Oracle or equivalent relational databases such as PostgreSQL or MySQL.
- ORM and Database Migration: Experience with JPA, Hibernate, HikariCP, and database versioning tools such as Flyway or Liquibase.
- Messaging and Event-Driven Architecture: Experience with Apache Kafka and messaging systems such as IBM MQ, including consumer groups, partitioning, idempotency, and transactional outbox patterns.
- Security: Strong understanding of Spring Security, OAuth 2.0, OIDC, JWT, and role- or attribute-based access control.
- API Design: Experience designing REST APIs using OpenAPI/Swagger and familiarity with resilient service communication.
- Resilience and Caching: Knowledge of Resilience4j, circuit breakers, retries, rate limiting, and caching solutions such as Redis.
- NoSQL and Search: Exposure to MongoDB and Elasticsearch.
- Testing: Experience with JUnit 5, Mockito, AssertJ, Cucumber/Gherkin, Testcontainers, WireMock, and Spring Cloud Contract.
- DevOps and Cloud-Native Technologies: Experience with Docker, Kubernetes, and Red Hat OpenShift.
- CI/CD: Familiarity with Jenkins, GitHub Actions, GitLab CI, or Argo CD.
- Monitoring and Observability: Exposure to Micrometer, Prometheus, Grafana, OpenTelemetry, Zipkin, or Jaeger.
- Build and Collaboration Tools: Experience with Maven or Gradle, Git, GitHub or Bitbucket, SonarQube, JIRA, and IntelliJ IDEA or Eclipse.
- AI-Assisted Development: Experience using tools such as GitHub Copilot, Claude, Cursor, or Devin to support software development.
Additional Advantages:
- Experience with Spring AI and LLM integration patterns, including Retrieval-Augmented Generation (RAG).
- Familiarity with vector databases, such as pgvector, and AI-integrated backend services.
- Knowledge of JVM garbage collection tuning, performance profiling, and high-performance service communication.
- Experience with advanced Kubernetes autoscaling mechanisms, including HPA and KEDA.
JobMatch aggregates public listings. Always apply through the original posting.