Senior Backend Developer- Java
Summary
Algoworks is hiring a Senior Backend Developer (Java) to work remotely from India, building and maintaining enterprise-grade microservices. Day to day that means Java/Spring Boot REST APIs, Kafka/RabbitMQ event-driven messaging, Docker and Kubernetes deployments, CI/CD, and heavy Microsoft SQL Server stored-procedure and query-performance tuning.
- Design, develop and maintain scalable backend applications using Java and Spring Boot.
- Develop clean, maintainable and testable code following coding standards and best practices.
- Apply Object-Oriented Programming, SOLID principles and established design patterns.
- Build enterprise-grade applications capable of supporting distributed workloads.
- Build and enhance RESTful APIs following Microservices architecture principles.
- Design loosely coupled, resilient and highly available microservices.
- Implement API Gateway, Service Discovery and OpenFeign patterns.
- Implement circuit breaker and resilience patterns using Resilience4j/Hystrix.
- Integrate applications with third-party systems and internal enterprise services.
- Develop event-driven integrations using Kafka or RabbitMQ.
- Design reliable messaging and asynchronous communication solutions.
- Support integration between distributed services and enterprise applications.
- Ensure secure and reliable communication across application components.
- Deploy, manage and troubleshoot applications running on Kubernetes clusters.
- Work with Docker and containerized application deployments.
- Collaborate with DevOps teams on CI/CD pipelines and deployment automation.
- Troubleshoot Kubernetes deployment, networking and application-related issues.
- Work with Kubernetes monitoring and orchestration practices.
- Exposure to Helm and managed Kubernetes services is preferred.
- Develop and maintain Microsoft SQL Server databases.
- Create and optimize complex Stored Procedures, Functions, Views and Triggers.
- Analyze SQL query performance and implement optimization strategies.
- Design and optimize database indexing strategies.
- Perform execution plan analysis and database performance tuning.
- Ensure efficient data access and reliable database operations.
- Participate in code reviews and ensure adherence to development standards.
- Mentor junior developers and contribute to technical knowledge sharing.
- Participate in architecture discussions and technical design decisions.
- Collaborate with development, QA and DevOps teams throughout the delivery lifecycle.
- Troubleshoot production issues and provide timely resolutions.
- Analyze application, API, database and infrastructure-related issues.
- Support production deployments and release activities.
- Identify root causes and implement sustainable solutions to recurring issues.
- Contribute to application stability, performance and continuous improvement.
- 6+ years of experience in backend Java application development.
- Strong experience with Java 8/11/17.
- Strong expertise in Spring Boot, Spring MVC and Spring Data JPA.
- Experience with Spring Security and Hibernate/JPA.
- Strong RESTful API development experience.
- Strong understanding of Microservices architecture.
- Experience with Kafka or RabbitMQ.
- Hands-on experience with Docker and Kubernetes.
- Strong Microsoft SQL Server experience.
- Extensive experience writing and optimizing Stored Procedures.
- Strong knowledge of SQL query optimization, indexing and execution plan analysis.
- Experience with Git and Maven/Gradle.
- Experience with CI/CD tools such as Jenkins, GitHub Actions or Azure DevOps.
- Strong debugging, analytical and problem-solving skills.
- Strong understanding of OOP, Design Patterns and SOLID principles.
- Core Java 8/11/17.
- Spring Boot.
- Spring MVC.
- Spring Data JPA.
- Spring Security.
- Hibernate/JPA.
- RESTful APIs.
- Microservices architecture.
- Kubernetes.
- Docker.
- Microsoft SQL Server.
- Complex Stored Procedures.
- SQL query optimization and performance tuning.
- Kafka or RabbitMQ.
- Git.
- Strong debugging and problem-solving skills.
- Experience designing scalable and distributed enterprise applications.
- Helm.
- AWS, Azure or GCP.
- AKS, EKS or GKE.
- Jenkins, GitHub Actions or Azure DevOps.
- SonarQube.
- Nexus/Artifactory.
- API Gateway.
- OpenFeign.
- Resilience4j/Hystrix.
- Distributed caching using Redis.
- ELK Stack.
- Prometheus or Grafana.
- OAuth2, JWT and API security.
- Event-driven architecture.
- Domain-Driven Design (DDD).
- Event Sourcing.
- Experience working in Agile/Scrum teams.
- Strong analytical and problem-solving skills.
- Excellent understanding of backend architecture and enterprise application development.
- Strong focus on writing clean, maintainable and testable code.
- Ability to troubleshoot complex application, database and Kubernetes issues.
- Strong ownership and accountability for development and production support.
- Good communication and collaboration skills.
- Ability to work effectively with development, QA, DevOps and business teams.
- Willingness to mentor junior developers and contribute to team growth.
- Strong focus on performance, scalability, reliability and continuous improvement.
Skills
- Agile
- AI
- AKS
- API
- Api Security
- Artifactory
- Automation
- AWS
- Azure
- Azure DevOps
- CI/CD
- Design Patterns
- DevOps
- Docker
- EKS
- ELK
- Event Driven Architecture
- GCP
- Git
- GitHub
- GitHub Actions
- GKE
- Gradle
- Grafana
- Helm
- Hibernate
- Java
- Jenkins
- JPA
- JWT
- Kafka
- Kubernetes
- Maven
- Microservices
- MVC
- Networking
- OAuth
- OOP
- Prometheus
- RabbitMQ
- Redis
- REST
- Scrum
- SonarQube
- Spring
- SQL
- SQL Server