Overview
As a Senior Software Engineer, you will design, build, and operate full-stack features across a Java/Spring Boot microservices backend and a React/TypeScript frontend. You will own end-to-end delivery — from database schema and API design through UI implementation — and collaborate with product, QA, and other engineering teams to ship reliable, production-grade software. This role combines hands-on technical depth with the leadership to mentor junior engineers, raise the engineering bar, and drive sound architectural decisions across the stack.
Role Description
- Design, develop, and maintain features across the full stack — Java/Spring Boot microservices and React/TypeScript frontend
- Own end-to-end delivery of features from database schema through API to UI
- Build and optimize RESTful APIs, WebSocket real-time communication, and inter-service messaging via RabbitMQ
- Write and maintain database migrations, optimize PostgreSQL queries, and manage Redis caching strategies
- Collaborate with product and QA to define requirements, estimate effort, and deliver iterative improvements
- Participate in code reviews, architectural discussions, and incident response
- Contribute to CI/CD pipelines, observability, and deployment processes
Required Skills
Backend (Primary)
- 5+ years of professional experience with Java (Java 17+, ideally Java 21)
- Strong proficiency with Spring Boot 3.x, Spring Security, and Spring Cloud
- Experience building and maintaining microservices architectures — service decomposition, API gateway patterns, inter-service communication
- Solid understanding of PostgreSQL — schema design, indexing, query optimization, migrations (Flyway or Liquibase)
- Hands-on experience with message brokers (RabbitMQ, Kafka, or similar) for event-driven architectures
- Experience with Redis for caching, session management, or pub/sub patterns
- Familiarity with OIDC/OAuth2 authentication and RBAC authorization models
- Strong unit and integration testing practices — JUnit 5, Mockito, Testcontainers
Frontend
- 3+ years of professional experience with React (v16+) and TypeScript
- Comfortable with React Context API, custom hooks, and component composition patterns
- Experience consuming RESTful APIs and working with WebSocket/STOMP for real-time UIs
- Understanding of responsive design and mobile-first development
- Familiarity with build tools like Vite or Webpack
General
- Strong grasp of REST API design principles and experience with OpenAPI/Swagger documentation
- Experience with Git workflows (feature branches, pull requests, code reviews)
- Ability to read and write SQL comfortably — not just ORM queries
- Strong debugging, profiling, and troubleshooting skills across the stack
- Clear written and verbal communication in English
Required Experience And Qualifications
- Bachelor's degree or equivalent combination of education and directly related experience.
- 5+ years of professional experience in full-stack software design and development
- Proven track record of delivering production-grade microservices and modern web applications
- Experience working in agile, cross-functional teams across global time zones
Desired Skills And Experience
- Experience with Docker and Docker Compose for local development and production
- Experience with CI/CD pipelines (Bitbucket Pipelines, Jenkins, GitHub Actions)
- Familiarity with observability stacks — Grafana, Loki, Prometheus, or similar
- Experience with WebSocket horizontal scaling (Redis Streams, Redis Pub/Sub)
- Experience with Playwright or Cypress for E2E testing
- Exposure to k6 or JMeter for load/performance testing
- Experience with OWASP security scanning or SonarQube code quality tools
- Knowledge of Change Data Capture (CDC) patterns or data replication pipelines
- Working with AI coding assistants like Cursor or Claude Code