Sobre este puesto de Senior Java Backend Engineer | Spring Boot | Microservices | Kafka en SSC HR Solutions
Senior Backend Engineer (Java)
Job Description
We are looking for a Senior Backend Engineer (Java) with strong experience in building scalable, high-performance backend services and REST APIs using Java and Spring Boot. The ideal candidate will have hands-on experience developing microservices, event-driven systems, and distributed applications that operate reliably under heavy load.
The role involves designing and developing backend services, working with relational databases and caching technologies, implementing event-driven architectures, and optimizing application performance. You will also contribute to CI/CD pipelines, automated testing, code reviews, and software design practices.
Key Responsibilities
- Design, develop, and maintain high-performance backend services and REST APIs using Java and Spring Boot.
- Build and maintain scalable microservices with a focus on reliability, maintainability, and performance.
- Develop event-driven architectures and asynchronous processing flows using Kafka or similar streaming platforms.
- Design and optimize relational database solutions, including PostgreSQL, with a strong focus on query performance and efficient data handling.
- Implement and optimize caching solutions using Redis, Ignite, or similar technologies.
- Develop and integrate gRPC services for efficient communication between distributed services.
- Design and implement multi-tenant backend services, ensuring appropriate tenant isolation, scalability, and security.
- Containerize and deploy services using Docker and Kubernetes.
- Contribute to CI/CD pipelines and automated deployment processes.
- Write unit, integration, and performance tests to ensure application reliability and quality.
- Apply appropriate design patterns, clean code principles, and software engineering best practices.
- Participate in code reviews, technical discussions, and architectural decisions.
- Perform performance profiling, troubleshooting, and tuning to optimize services under heavy workloads.
- Monitor and analyze application performance, database queries, resource utilization, and system bottlenecks.
- Collaborate with other engineers and teams to design and deliver reliable distributed systems.
Requirements
- 5+ years of professional software development experience, with strong hands-on experience in Java.
- Strong production experience with Java and Spring Boot.
- Proven experience building microservices and REST APIs at scale.
- Hands-on experience with Kafka or similar event-streaming platforms.
- Strong knowledge of PostgreSQL or other relational databases, including query optimization and database performance.
- Experience with Redis, Apache Ignite, or similar caching technologies.
- Experience with gRPC and distributed service-to-service communication.
- Experience designing multi-tenant applications and services.
- Experience with Docker and Kubernetes.
- Good understanding of CI/CD practices and deployment automation.
- Strong knowledge of unit testing, integration testing, and automated testing practices.
- Good understanding of software design patterns, clean code, and SOLID principles.
- Experience participating in code reviews and collaborative software development.
- Practical experience with performance profiling, load testing, troubleshooting, and application tuning.
- Strong understanding of scalable, reliable, and distributed backend architectures.
Technical Stack
Java | Spring Boot | Microservices | REST APIs | Kafka | PostgreSQL | Redis / Apache Ignite | gRPC | Docker | Kubernetes | CI/CD