Backend Engineer - SRE
We are looking for a skilled Java Backend Developer to design, develop, test, and maintain scalable, secure, and high-performance backend applications. The ideal candidate should have strong experience in Java, Spring Boot, REST APIs, microservices architecture, database management, and cloud or deployment technologies.
Key Responsibilities
Design, develop, and maintain backend services using Java and Spring Boot.
Build and integrate RESTful APIs and microservices.
Write clean, reusable, maintainable, and efficient code.
Work with relational and NoSQL databases to design schemas and optimize queries.
Implement authentication, authorization, and application security.
Identify and resolve performance bottlenecks, bugs, and production issues.
Write unit and integration tests using JUnit, Mockito, or similar frameworks.
Collaborate with Product Managers, Business Analysts, QA Engineers, DevOps Engineers, and frontend developers.
Participate in code reviews, technical design discussions, and Agile/Scrum ceremonies.
Use Git and CI/CD pipelines to manage code changes and deployments.
Monitor application performance, troubleshoot issues, and support production releases.
Follow coding standards, secure development practices, and engineering best practices.
Required Technical Skills
Programming: Core Java, OOP, Collections, Exception Handling, Multithreading, Java 8+ features.
Frameworks: Spring Boot, Spring MVC, Spring Security, Spring Data JPA, Hibernate.
API Development: REST APIs, JSON, HTTP methods, API versioning, Swagger/OpenAPI.
Architecture: Microservices, design patterns, distributed systems fundamentals.
Databases: MySQL, PostgreSQL, Oracle, or similar relational databases; SQL query optimization.
Messaging: Kafka or RabbitMQ, where applicable.
Testing: JUnit, Mockito, integration testing.
Build Tools: Maven or Gradle.
Version Control: Git, GitHub, GitLab, or Bitbucket.
DevOps and Cloud: Docker, Kubernetes, Jenkins, AWS/Azure/GCP, depending on the project.
Monitoring: Logging, metrics, and troubleshooting using tools such as ELK, Grafana, or Prometheus.
Qualifications
Bachelor's degree in Computer Science, Information Technology, or a related field, or equivalent practical experience.
Strong analytical, problem-solving, and debugging skills.
Understanding of data structures, algorithms, and software engineering principles.
Good communication and collaboration skills.
Experience working in Agile development environments.
Skills
- Agile
- API
- Authentication
- AWS
- Azure
- Bitbucket
- CI/CD
- Cloud
- Design Patterns
- DevOps
- Distributed Systems
- Docker
- ELK
- GCP
- Git
- GitHub
- GitLab
- Gradle
- Grafana
- Hibernate
- Integration Testing
- Java
- Jenkins
- JPA
- JSON
- JUnit
- Kafka
- Kubernetes
- Maven
- Microservices
- Mockito
- Multithreading
- MVC
- MySQL
- NoSQL
- OOP
- OpenAPI
- Oracle
- PostgreSQL
- Prometheus
- RabbitMQ
- RDBMS
- REST
- Scrum
- Spring
- SQL
- Swagger
- Version Control
As published by recruitee
Full name, Email, CV, Cover letter, Phone