Design and develop scalable, high-performance backend services and APIs using Java and Spring Boot, following microservices and distributed system principles.
Build responsive, accessible, and performant frontend applications using React.js, TypeScript, and modern JavaScript best practices.
Own end-to-end feature delivery — from database schema and API design through to UI implementation and testing.
Architect and review solutions across both frontend and backend, ensuring consistency, scalability, and maintainability.
Design and optimise data models across relational (PostgreSQL, MySQL) and non-relational (MongoDB, Redis) databases.
Implement and maintain CI/CD pipelines for automated build, testing, and deployment across environments.
Write comprehensive unit, integration, and end-to-end tests across the full stack to maintain high code quality.
Lead and participate in code reviews, providing constructive technical feedback to peers and junior engineers.
Collaborate with product managers, UX designers, and architects to translate requirements into robust technical solutions.
Mentor and guide junior and mid-level engineers across both frontend and backend practices.
Contribute to and enforce engineering best practices, coding standards, and the software development lifecycle.
8+ years of software engineering experience with demonstrated depth in both Java backend and React frontend development.
Strong expertise in Java / Spring Boot — microservices, REST API design, Spring Security, and Hibernate / JPA.
Proven proficiency in React.js — component architecture, state management (Redux / Context API), hooks, and performance optimisation.
Solid experience with TypeScript and modern JavaScript (ES6+) in production applications.
Strong database skills — both relational (PostgreSQL / MySQL) and non-relational (MongoDB / Redis).
Experience with containerisation (Docker) and orchestration (Kubernetes) for deploying full stack applications.
Familiarity with cloud platforms (AWS, Azure, or GCP) and deploying cloud-native applications.
Hands-on experience with CI/CD tooling — Jenkins, GitLab CI, or GitHub Actions.
Strong understanding of system design, distributed architectures, and Domain-Driven Design (DDD) principles.
Excellent problem-solving skills and ability to communicate technical decisions clearly to both technical and non-technical audiences.
Experience with GraphQL APIs in addition to REST.
Exposure to event-driven architectures using Kafka or RabbitMQ.
Knowledge of server-side rendering frameworks (Next.js).
Experience with micro-frontend architectures.
AWS / Azure cloud certification.
Familiarity with accessibility standards (WCAG) and responsive design best practices.