Software Engineer (Java) | Luxury Retail Sector

  • Lisboa
  • Capgemini
. Java Software Engineer - Lisbon   Capgemini Portugal is currently looking for a Software Engineer (Java) to join one of the world’s most prestigious and innovative companies in the luxury industry.   Our Client is the owner of prestigious Maisons distinguished by their craftsmanship, creativity, and technological innovation. Our Client’s ambition is to nurture the unique heritage and values of its Maisons and businesses, while enabling them to grow and prosper in a responsible, sustainable manner over the long term. To leverage Lisbon’s tech spirit and infuse it into its brand-new Tech Competence Centre, our Client is looking to reinforce its technical capabilities on state-of-the-art technology and respond to the growth of their business. Their Lisbon teams will be an extension of its central Group Platforms teams and will be fully integrated in the core technology workforce. They look forward to welcoming their TCC employees and onboarding them on an exciting adventure managing modern solutions and innovative technologies through global, scaled platforms to create business value with pace and agility.   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 E.ngineer (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. . Academic Background B.Sc. or MSc in Computer Science, Software Engineering or related field   Skills & Experience 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. Fluency in English. French and other languages are a plus. . Desired Personal Skills 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.   Interview Process Our team will actively review all applications. If your application is selected, we will reach out to you for an informal introductory call.  The next step will be meeting our Client’s team for a technical interview with team members, selected candidates will move to final interview with the Hiring Manager and HR team. Additional rounds may be engaged on a case-by-case basis.   Important note: For this role you will be initially offered a contract for Capgemini Portugal. More details will be shared during the interview process.