You're seeing this page as if you were . The main menu is still yours, though. Exit from immersion
Emmanuel VasseurEV

Emmanuel Vasseur

Tech Lead FullStack Java Spring Boot Angular

€700/day
Paris, FR
15+ years

Average response time: 1 hour

Freelancer profile translated to English.
Back to original language

About Emmanuel

I am a pragmatic developer, technical leader, with over 20 years of experience.
I started with Java and Spring, and I also developed with older web technologies, before switching to TypeScript and Angular.
I embraced agility and then recognized myself in the values of software craftsmanship about ten years ago.

With these 20 years of experience, I can bring you my expertise on:
- Designing solutions that meet your functional needs
- Implementing continuous integration and continuous deployment pipelines (CI/CD, Docker, Kubernetes, ...)
- Applying good development practices (testing, clean code, pair programming, ...)
- Developing modules, backend services, APIs (Spring boot, Java)
- Developing user interfaces (Angular, TypeScript)
- But above all, I like to learn, improve, and share, work together, and excel collectively
  • French

    Native or bilingual

Can work on-site
Paris (up to 30km)

Experience

  • Société Générale Corporate & Investment Banking
    Senior Developer – Technical Leader – Software Crafter
    BANKING AND INSURANCE
    February 2022 - Today (4 years and 4 months)
    This assignment took place within the structured finance domain, in the Liquidity team, on the Origination platform (8 teams, 90 people).
    The Liquidity team develops applications that allow ALM managers (liquidity managers) to monitor their activities and optimize liquidity costs.

    Within a team of 9 people and in relation with other teams on the platform, the activity revolves around the evolution of applications within the Liquidity scope:
    - Continuously add features and value to the applications
    - Provide technical assistance and expertise to the team, especially during application redesigns
    - Participation in various chapters and community events, continuous improvement of the platform

    Main functional projects:
    - decommissioning of platform-specific repositories in favor of official repositories
    - automation of laborious and risky manual edge cases during certain client drawdown requests
    - addition of history in the application for mapping back-office deals with front-office deals

    Batch module migration:
    - transition from a legacy module deployed on a Windows VM to independent Spring Boot Batch components deployed as Kubernetes cronjobs
    - reduction of cyclomatic complexity by 2 and cognitive complexity by 3
    - creation of dashboards in Kibana to monitor batch execution and be proactive in case of errors

    Rewriting of the 2 major frontend components:
    - transition from Maven modules containing Javascript/AngularJS code exposed by backends to independent TypeScript/Angular components
    - isolation of business rules and frontend-specific modeling in pure TypeScript code


    Simplification of the main legacy monolith:
    - implementation of a hexagonal architecture
    - parallel run of legacy/new code with comparison of outputs and replay of audit traces for the safety net
    Java Typescript Spring Angular Docker Kubernetes Spring boot Spring Batch Spring Cloud Spring Data JPA AssertJ Cypress Bootstrap Jest IntelliJ GitHub Github Actions Kibana RabbitMQ Oracle PostgreSQL Scrum CI/CD DevOps Tech Lead Software Craftsmanship Clean Architecture Clean Code Hexagonal Architecture TDD SQL Pair Programming
  • BNP Paribas
    Technical Leader - Sofware Crafter
    BANKING AND INSURANCE
    October 2018 - December 2021 (3 years and 3 months)
    Paris, France
    Technical leader and software craftsman within 2 domains (10 teams).

    Participation in the development of applications in an Agile/SCRUM context:
    - analysis of needs, breakdown into epics and user stories, and estimation of development complexity
    - definition and review of application architecture and design
    - testing and development of features with adequate quality for a scalable and maintainable product over time
    - implementation of indicators in metrology tools for production monitoring

    Technical assistance and expertise to other teams.

    Dissemination of craft & devops culture and practices:
    - awareness of testing practices to have comfort and a safety net during refactoring and clean code sessions
    - evangelization of code review and pair programming
    - isolation of business code through modules (clean/hexagonal architecture) and modeling of business language elements using Domain Driven Design patterns
    - reflection and implementation with teams of Git flows and continuous integration pipelines
    - workshops with a team taking over an outsourced application to understand legacy code (implementation of automated tests, code refactoring)
    - deployment of applications in the BNP Paribas dedicated cloud in collaboration with ops through docker images, kubernetes descriptors, and infra-as-code practices
    - participation in the creation and animation of a community addressing difficulties encountered on the workstation and development environment at BNP Paribas
    Java Typescript Spring Angular Kubernetes Software Craftsmanship Coaching Scrum DevOps CI/CD Tech Lead Lead Developer Behavior-Driven Development BDD Gherkin Cucumber Docker Spring boot Spring Data Domain Driven Design DDD Clean Code Test Driven Development TDD Clean Architecture Hexagonal Architecture HTML CSS SQL Git Maven Node.js Jenkins Gitlab CI SonarQube
  • ORANGE
    Expert Java and Continuous Integration - Technical Lead
    TELECOMMUNICATIONS
    March 2016 - September 2018 (2 years and 6 months)
    Paris, France
    Within an agile plateau of 70 people, organized into 6 multidisciplinary and self-managed SCRUM teams, responsible for the order taking application for mass-market multi-service offers.
    More than 50,000 orders are placed there daily, from mobile phones, physical stores, the online store, Liveboxes, and customer support.

    The peculiarity of this plateau is its agile maturity. Since its creation 10 years ago, the teams (product owner, scrum master, development team) decide for themselves how the application should evolve.
    The focus is particularly on quality with a culture of testing and software craftsmanship through BDD practices, pair and mob programming, clean code, and dojos.

    Major functional projects completed:
    - redesign of VOIP management within the application
    - redesign of line management in view of the shutdown of the PSTN and the decommissioning of applications related to this technology

    Implementation of functional tests using Cucumber:
    - definition of a common language with studies and non-technical people
    - replacement of GUI tests on VOIP management with functional tests to make them sustainable
    - adoption by the plateau and emergence of numerous tests, subsequently integrated as a complement to functional documentation
    - integration of studies into team sprints through the writing and verification of functional tests

    Execution of workshops on DSL and Jenkins pipelines:
    - leading workshops on new Jenkins 2 features and the implementation of DSL jobs and pipelines under Git
    - conversion of existing jobs to DSL jobs under Git, normalization and factorization of job fragments
    - creation of a pipeline integrating GUI tests, quality checks, and deployment to integration environment

    Software craftsmanship culture:
    - implementation and participation in communities of practice around development and tooling
    - execution of dojos
    - organization and execution of agile serious games (battlecodes)
    Java Software Craftsmanship Test Driven Development Behavior-Driven Development Pair Programming Cucumber Docker Scrum Clean Code Craftsmanship Craft TDD BDD Continuous Integration Typescript Angular Spring GWT Groovy Kibana Elasticsearch Eclipse Git Maven Gradle Jenkins SonarQube Nexus Apache Tomcat JIRA Jonas

Recommendations

Be the first to recommend Emmanuel

Help this freelancer shine by sharing your experience working together.

These freelancer profiles also match your criteria

AgathaA

Agatha Frydrych

Backend Java Software Engineer

4.7

(3)

2

BaptisteB

Baptiste Duhen

Fullstack developer

4.6

(4)

5

AmedA

Amed Hamou

Senior Lead Developer

4

(2)

7

AudreyA

Audrey Champion

Web developer

4.3

(3)

4

Education

  • Engineering degree, specialization in software engineering
    Sup Galilée
    2004

Skill set

Categories