Java Software Architect
In this role
- You will work with business and software engineering teams to build Java applications from the ground up.
- You will guide teams on the end-to-end project lifecycle, covering the initial conception, business requirements, software architecture, technical lead, coaching, and flawless delivery
- You will ensure compliance of development with architecture patterns and ensure quality of design and code through systematic design reviews and code inspections.
- You will provide technological and architectural support to the development team, give technical recommendations, advise on their execution, setup tools/framework to improve efficiency.
- You will lead the CI/CD activities to ensure proper deployment of the solution through all our environments as well as the software delivery to our customers.
- You will review business specification and work in tight collaboration with business analysts to provide them efficient technical solution ensuring the global coherence of the product.
- You will investigate and diagnose deployment and performance issues related to micro-services architecture on a container platform.
- You will support pre-sales on tender responses, proof-of-concept work and the design of innovative solutions, with an emphasis on scalability, modularity, flexibility, and performance
- You will run group-wide thought leadership initiatives to advance our architectural practice and sustain our technical excellence
Ce que nous proposons
- A pleasant working environment in an experienced, motivated and uncomplicated team
- Exciting and innovative projects using the latest technologies and business models.
- Flat organizational hierarchies and cross-functional teamwork
- A supportive culture with excellent opportunities for professional and personal training and development
About your profile
- Master degree in Computer Science / Software Engineering
- 6+ years of experience in designing and implementing large-scale JAVA applications
- 4+ years of experience in coaching development teams and supporting business analysts
- 4+ years of experience in collaboration and development with offshore centers
- Good communication skills
- Strong hands-on experience with frameworks such as Spring / Spring Boot, JPA / Hibernate and build tools such as Maven
- Solid knowledge of integration patterns and best practices such as synchronous vs. asynchronous communications, RESTful APIs, GRPC framework, messaging, publish-subscribe
- Deep understanding of multi-tier architectures and microservices (load balancers, caching, web servers, application servers, networking, databases, content delivery networks)
- Good knowledge of domain modeling and domain-driven design
- Hands-on experience with containers and orchestration platforms such as Docker, Kubernetes or OpenShift
- Strong knowledge of best practices and tooling for CI/CD pipelines, DevOps, agile methods, automated testing, code quality, such as Jenkins, Jira, JUnit, Fitness, Ranorex, Selenium, SonarQube
- Experience in monitoring, troubleshooting and profiling containers platform systems.
- Experience with front-end JavaFX frameworks, front-end frameworks such as React, Angular, Vue.js is a plus
- Experience with some cloud services such as AWS is a plus
- A passion for clean code and pragmatic, elegant design
- Enthusiasm, creativity, flexibility, team spirit, and general awesomeness in software engineering
- Fluent in French and in English