Key Responsibilities
Backend Development (Java-Focused)
- Design and implement scalable, secure RESTful and GraphQL APIs using Java 17+, Spring Boot, Spring WebFlux, Spring Security
- Use Spring Data JPA or MyBatis for data access layer, with deep understanding of persistence context, lazy/eager loading, and caching strategies
- Create asynchronous processing using Kafka, RabbitMQ, or Spring Events
- Apply OAuth2.0/JWT authentication and RBAC models via Spring Security and Keycloak
- Optimize performance of services using JVM tuning, profiling (VisualVM, YourKit), and connection pool management (HikariCP)
- Implement and consume OpenAPI/Swagger documentation and version APIs following best practices
- Manage error handling, retries, logging, and monitoring with best practices for production readiness
Frontend Development
- Build responsive and accessible user interfaces using React.js, Redux, and TypeScript
- Develop reusable UI components and state containers following Atomic Design and Context API/React Query patterns
- Handle secure API integrations, token management, and user sessions
- Implement frontend testing using Jest, React Testing Library, or Cypress
Database & Persistence
- Write optimized SQL queries for relational databases like PostgreSQL, MySQL, or Oracle
- Design data models with normalization, indexing, partitioning, and migration scripts using Flyway or Liquibase
- Integrate with NoSQL stores such as MongoDB, Redis, or Elasticsearch for specific use cases
DevOps & CI/CD
- Containerize applications with Docker, deploy via Kubernetes (EKS/GKE/AKS) or OpenShift
- Implement CI/CD pipelines using GitLab CI, GitHub Actions, or Jenkins
- Automate build/test/deploy processes for both frontend and backend
- Integrate monitoring and logging with ELK Stack, Prometheus/Grafana, or Sentry
- Store and manage secrets using Vault, AWS Secrets Manager, or Kubernetes Secrets
Agile & Collaboration
- Participate in daily stand-ups, sprint planning, and retrospectives in an Agile/Scrum team
- Collaborate with business analysts and product owners to understand requirements and translate them into technical tasks
- Conduct peer code reviews and ensure adherence to architectural principles and design patterns
- Contribute to continuous improvement initiatives in coding standards, performance, and security
Required Technical Skills
- Languages: Java 17+, JavaScript/TypeScript, SQL, HTML, CSS
- Frameworks: Spring Boot, Spring Security, Spring Data JPA, React.js or Angular
- Tools & Platforms: Docker, Kubernetes, Git, Maven/Gradle, Jenkins, GitHub Actions
- Databases: PostgreSQL, MySQL, MongoDB, Redis
- Messaging/Streaming: Kafka, RabbitMQ
- Testing: JUnit, Mockito, Testcontainers, Postman, Jest, Cypress
- Cloud & Infra: AWS/GCP/Azure (EC2, S3, Lambda, IAM), Terraform (nice to have)
- Monitoring & Observability: Prometheus, Grafana, ELK, Sentry
- Dev Practices: CI/CD, TDD/BDD, DDD, SOLID principles, Clean Architecture
Education and Experience
- Bachelors degree in Computer Science, Engineering, or a related technical field
- 5+ years of experience in full stack development, with 3+ years strong backend Java/Spring Boot expertise:
- Building large-scale web applications from scratch
- Java, Spring Boot, RESTful API design and integration
- Frontend development with JavaScript and React
- Cloud deployment using AWS
- Working knowledge of Docker, Kubernetes, Terraform, and DevOps tools
- Unit and integration testing (JUnit, Mockito, etc.)
- Debugging and performance optimization across full stack
- Experience in Agile/Scrum teams and enterprise-grade development cycles
Soft Skills & Expectations
- Strong analytical thinking, problem-solving, and debugging abilities
- Excellent written and verbal communication
- Ability to mentor junior developers and collaborate effectively in cross-functional teams
- Passion for clean code, scalable architecture, and continuous learning