We are seeking a Senior Software Engineer with deep expertise in Java and Spring Boot to join a client-facing engineering team. You will design, build, and maintain scalable, secure, high-performance backend services and APIs that power business-critical systems. Frontend experience, especially with Angular, is a strong advantage.
This role offers the opportunity to work on enterprise-grade, cloud-ready solutions, shape backend architecture, and collaborate with cross-functional teams. We encourage the responsible use of modern AI-assisted software engineering workflows, including coding assistants and agentic engineering practices, to accelerate development, prototyping, debugging, testing, documentation, and code exploration, while maintaining strong engineering standards for security, maintainability, and code quality.
If you are passionate about robust backend design, clean code, and using AI to boost developer productivity, this role is for you.
Key Responsibilities:
Design, develop, test, and maintain backend services and RESTful APIs using Java and Spring Boot.
Build well-structured, scalable services following clean architecture, domain-driven design, and SOLID principles.
Design efficient data models, write optimized queries, and manage transactions and data integrity in relational databases (MySQL).
Implement secure APIs using Spring Security, including authentication and authorization (OAuth2, JWT).
Build and maintain integrations with databases, third-party APIs, messaging systems, and other internal services.
Contribute to microservices and modular architecture decisions, including service boundaries, API contracts, and inter-service communication.
Optimize backend performance, scalability, reliability, and resilience (caching, connection pooling, async processing, fault tolerance).
Write thorough automated tests (unit, integration, and contract) to ensure high code quality.
Implement logging, monitoring, and observability practices to support production stability.
Support or contribute to frontend development (Angular) where needed to deliver end-to-end features.
Use AI-assisted development tools for code generation, prototyping, refactoring, debugging, testing, technical research, and documentation.
Apply modern AI-assisted software engineering workflows responsibly, ensuring AI-generated code is reviewed, understood, tested, and validated before it reaches production.
Evaluate AI-generated code for correctness, security, performance, maintainability, and alignment with project standards.
Collaborate with clients and cross-functional teams to clarify requirements and deliver aligned technical solutions.
Participate in code reviews, architecture discussions, and knowledge-sharing sessions, and mentor other engineers.
Troubleshoot, debug, and improve existing applications and production issues.
Maintain technical documentation covering designs, APIs, integrations, and development standards.
What We Expect:
5+ years of hands-on backend software development experience with Java.
Strong proficiency in Java (17+ preferred), including collections, concurrency, streams, and JVM fundamentals.
Extensive experience with Spring Boot (3.x preferred) and the Spring ecosystem: Spring MVC, Spring Data JPA/Hibernate, and Spring Security.
Strong experience with MySQL or other relational databases, including schema design, indexing, query optimization, and transaction management.
Proven experience designing, building, and documenting RESTful APIs (OpenAPI/Swagger) and working with JSON.
Solid understanding of microservices architecture, distributed systems concepts, and common integration patterns.
Strong knowledge of object-oriented design, clean code, SOLID principles, and common design patterns.
Experience with automated testing frameworks such as JUnit 5, Mockito, and Test containers or equivalent.
Experience with build tools (Maven or Gradle), Git, pull-request workflows, and CI/CD pipelines.
Working knowledge of Docker and containerized application deployment.
Basic understanding of cloud platforms such as AWS, Azure, or GCP.
Experience with, or willingness to adopt, AI-assisted development tools such as GitHub Copilot, ChatGPT, Claude, Cursor, or equivalent.
Ability to independently review, test, debug, and improve AI-generated code rather than relying on generated output without validation.
Awareness of responsible AI considerations, including data privacy, intellectual property, information security, hallucination risks, and protection of client information.
Experience working in Agile/Scrum environments.
Ability to work independently and make sound technical decisions in a client-driven environment.
Strong communication, analytical, and problem-solving skills.
Bachelor’s degree in Computer Science, Information Technology, Engineering, or a related field.
Nice to Have:
Frontend experience with Angular (v19+ preferred), TypeScript, JavaScript ES6+, HTML5, and CSS3.
Understanding of Angular architecture, reusable components, state management, routing, and forms.
Experience with messaging technologies such as Kafka or RabbitMQ.
Experience with caching technologies such as Redis.
Experience with Kubernetes, cloud-native development, or serverless architectures.
Familiarity with observability tools (e.g. Prometheus, Grafana, ELK, OpenTelemetry).
Domain knowledge of event ticketing, reservation, e-commerce, or other high-volume transactional platforms.
Practical experience with AI-assisted software engineering, prompt engineering, agentic coding tools, or AI-assisted code reviews.
Experience using AI to speed up unit testing, documentation, migrations, or legacy code analysis.
Passion for keeping up with developments in Java, Spring Boot, backend architecture, and AI-assisted software engineering.