senior java developer
1 Ιουλ 2026 · Generali Greece
Περιγραφή Θέσης
The Senior Java Developer plays a leading role in designing, developing, and evolving complex backend systems and enterprise‑level services. They are responsible for delivering high‑quality, scalable, secure, and performant backend solutions while guiding team members, enforcing engineering standards, and ensuring architectural consistency across applications. The Senior Java Developer collaborates closely with Solution Architects, Tech Leads, and cross‑functional teams to drive technical decisions, shape backend architecture, and support the end‑to‑end delivery of critical business solutions.
They ensure that backend components align with architectural principles, adhere to security and compliance requirements, and meet business and operational needs. The Senior Java Developer mentors junior and mid‑level engineers, contributes to process improvements, and plays an active role in resolving complex technical challenges across systems and integrations.
Their responsibilities include:
Leads the design and implementation of backend services, business logic, and system integrations using Java and Spring Boot.
Architects, builds, and maintains high‑quality REST APIs, ensuring reliability, scalability, versioning, and robust error-handling.
Reviews, refactors, and optimizes existing applications to improve performance, maintainability, and resiliency.
Performs deep technical analysis, identifies root causes of complex issues, and provides long-term, sustainable solutions.
Reviews and approves code contributions from team members, enforcing engineering excellence, consistency, and best practices.
Designs and implements automated tests (unit, integration, and component-level), ensuring comprehensive coverage and system reliability.
Works closely with Solution Architects to influence system design, propose architectural improvements, and ensure alignment with target architectures.
Leads modernization initiatives, including migration from legacy systems, introduction of new frameworks, or improvements to deployment pipelines.
Provides technical leadership during incident resolution, production troubleshooting, and performance investigations.
Contributes to documentation of technical decisions, architectural diagrams, API specifications, and internal guidelines.
Collaborates with DevOps teams to improve CI/CD pipelines, enhance observability, and ensure robust deployment and monitoring practices.
Ensures that applications comply with internal security standards, data protection rules, and operational guidelines.
Mentors junior and mid-level developers, providing guidance, training, and support for their technical growth.
Identifies opportunities for team and process improvements and contributes to evolving development practices.
Performs any other duties assigned by their direct manager or supervisor.
Desired Capabilities
Advanced proficiency in Java (Java 8+), including streams, concurrency, multithreading, and functional programming patterns.
Deep understanding of enterprise software architecture, SOLID principles, design patterns, and clean code practices.
Strong hands-on experience with Spring Boot and the Spring ecosystem (Spring MVC, Spring Data, Spring Security, Spring Cloud).
Expertise in building and maintaining RESTful APIs, including advanced versioning strategies, authentication/authorization patterns, and API governance.
Strong knowledge of relational databases, SQL performance tuning, ORM frameworks (JPA/Hibernate), and transaction management.
Familiarity with microservices, distributed systems, event-driven architectures, and messaging technologies (Kafka, RabbitMQ).
Experience with performance profiling, application monitoring, logs, metrics, tracing, and observability stacks.
Solid understanding of CI/CD pipelines, Git workflows, automated testing, and DevOps-aligned development practices.
Hands-on experience with containers (Docker) and cloud platforms (Azure, AWS, GCP).
Strong ability to lead technical discussions, make architectural recommendations, and influence decision‑making.
Ability to manage complex tasks independently, support project delivery, and act as a technical reference for the backend team.
Comfortable collaborating with architects, product owners, front-end teams, and infrastructure teams.



