JAVA Software Engineer
RichemontDescrição da oferta:
MAIN PURPOSE
Richemont is looking for a talented and highly motivated JAVA Software Engineer to reinforce our enthusiastic and dynamic “Online – Client Digital Sales” team based in Meyrin. The candidate should be highly motivated, have technical flair, excellent programming skills, whilst also having strong experience in backend, middleware related frameworks, RESTful APIs and CI/CD.
As a JAVA Software Engineer, you will be working on challenging projects for all the Richemont Maisons. Working closely with a cross-functional teams of software engineers and architects, you will develop, test, debug, deploy and support java-based solutions granting full adherence with Group and Maisons’ standards and needs in terms of e-Commerce solutions and operations.
Key Responsibilities
- Understand business and technical context, requirements, constraints and business objectives
- Perform Back-End development in the scope of technical Microservices
- Develop and perform unit test of the Product/Solution according to specifications
- Troubleshoot, debug issues and maintain the Product/Solution and the corresponding technical documentation
- Collaborate with the Support Team to solve Product/Solution software issues
- Collaborate with the DevOps team to automate the integration of developed Product/Solution (such as Continuous Integration, Continuous deployment)
- Review Functional Specifications (FUS) and translate them to technical specifications
- Support the Quality Assurance Engineer (QAE) or the Test Manager (TM) in the definition of test strategy
- Recommend changes to improve the Product/Solution
- If applicable, attend and actively contribute to Scrum ceremonies i.e. daily Stand-ups, Sprint Planning, Sprint Grooming, Sprint Reviews, and Retrospectives
REQUIREMENT
- B.Sc. or MSc in Computer Science, Software Engineering or related field
- 5+ years’ experience as a JAVA Software Engineer
- Excellent knowledge of JAVA and associated technologies
- Advanced knowledge of Spring ecosystem: Spring Boot (2.x), Spring Data JPA / Hibernate and Spring Cloud
- Strong technical background in internet related technologies including open source, J2E, and ability to discover new ones
- Excellent knowledge of web formats and protocols such as JSON, XML, HTTP, SOAP, WSDL and REST (Swagger/OpenAPI)
- A very good experience with Microservice / distributed system and Event Driven architectures (AMQP / JMS, RabbitMQ, ActiveMQ)
- Experience working with RDBMS (MySQL), NoSQL databases (MongoDB) and Search (ex. Elasticsearch)
- Experience with Docker, Kubernetes and artifact repository manager is required
- Experience with an identity and access management tool (Keycloak) is an asset
- A good technical knowledge and experience with OIDC flows
- Familiar with DevOps tools:
- IDE/Build: IntelliJ, Maven
- Atlassian: Jira and Confluence
- Versioning systems such as Bitbucket, GitLab
- Code analysis: SonarQube, Checkmarx
- CI/CD: Jenkins, Groovy, Gitlab
- Experience in Cloud technologies, tools, and services
- A good technical knowledge and experience with e-Commerce processes and solutions
- Experience of the full software development lifecycle: from requirements gathering and functional specification, to development, testing and delivery
- Familiar with agile methodologies
- Strong analytical, problem-solving and organizational skills
- Ability to work in a flat and versatile organization, and on multi-national / multi-cultural projects
- Autonomous, proactive, creative, with a strong aptitude for self-learning
- Strong customer service focus, with the ability to communicate with highly technical and business teams
- Fluency in English. French and other languages are a plus