Java Developer - GIO
Summary
Build and maintain scalable Java backend services using Spring Boot, microservices, and REST APIs, with a focus on security, performance, and testing.
- Design and develop complex, scalable, high-performance Java-based backend systems.
- Implement RESTful services and microservices using Spring Boot and related technologies.
- Build efficient and testable code following best practices and design patterns.
- Ensure secure authentication and authorization using OAuth2 and JWT.
- Collaborate with QA for robust testing and defect resolution.
- Optimize database design and query performance.
- Engage in architecture-level discussions with solution architects.
- Ensure high code quality through unit testing (JUnit), static code analysis, and peer reviews.
- Create and maintain detailed technical documentation and coding standards.
- Resolve bugs, memory management issues, performance bottlenecks, and multithreading challenges.
- Work in cross-functional teams including product managers, UX designers, and developers.
- Participate in agile ceremonies such as daily stand-ups, sprint planning, and retrospectives.
- Stay up to date with emerging technologies and propose improvements.
- Contribute to CI/CD pipelines and deployment best practices
- Bachelor’s degree in Computer Science, Engineering, or a related field.
- 5+ years of hands-on backend development experience using Java.
- Expertise in Spring Boot, Spring MVC, Spring Security, and Spring Data JPA.
- Strong knowledge of RESTful API development and microservices architecture.
- Familiarity with multithreading, synchronization, and memory management in Java.
- Experience with relational databases (MySQL, PostgreSQL, Oracle) and strong SQL skills.
- Knowledge of NoSQL databases such as MongoDB or Cassandra.
- Proficiency in debugging, problem-solving, and algorithm design.
- Experience with authentication and authorization mechanisms (OAuth2, JWT).
- Exposure to caching mechanisms (Redis, Ehcache).
- Familiarity with messaging queues and microservice communication (e.g., gRPC, RabbitMQ).
- Understanding of DevOps and CI/CD tools.
- Experience in Agile/Scrum environments.
- Excellent communication and interpersonal skills.