PROFESSIONAL EXPERIENCES

Backend GO Developer

June 2023 - Present
Hornetsecurity (Formerly Vade), Paris France

  • Marketplace-Gateway:
  • The project aims to simplify the integration of Hornet Security products for marketplaces. They only send notifications (creation, conversion, cancellation) to our gateway, which handles the necessary actions on the Hornet Security side. This solution is transparent for marketplaces, without the need for specific product integration.

    • Cross-team collaboration (product, development, and QA) to write detailed technical specifications and validate implemented solutions.
    • API design and documentation using OpenAPI 3 to promote an API-first approach.
    • Development of a secure webhook allowing marketplaces to send notifications (creation, conversion, cancellation) via API calls.
    • Asynchronous notification handling via RabbitMQ, with processing and sending results back to the marketplaces.
    • Development of a Go worker to process notifications, perform necessary actions, and interact with internal systems like CP and Subman.
    • Implementation of functional tests with Python and unit tests with Go to validate the stability and performance of services.
    • Building CI/CD pipelines with Docker, GitLab CI, ArgoCD, and Vault for automating tests, deployments, version management, and securing secrets.

    Technical environment: Go, REST, RabbitMQ, GitLab, Docker, Redis, Vault, ArgoCD, Swagger, Sonar, Pytest.

  • Partner Portal:
  • The Partner Portal is a web platform dedicated to managing the complete lifecycle of licenses for cybersecurity solutions (M365 and GWS). This project relies on a microservices architecture to manage trial and production licenses, multi-tenant clients, and access to marketing and technical resources.

    • Cross-team collaboration (frontend, product, SRE) to meet business needs and ensure integration of solutions.
    • Development and optimization of secure, high-performance APIs for license provisioning and lifecycle management.
    • Integration of NATS to synchronize data between the Partner Portal and external systems (Salesforce, Scheduler, DocuSign) via asynchronous messages.
    • Writing unit tests in Go and automated functional tests in Python to validate the stability of developed features.
    • Profiling, monitoring, and tracing with OpenTelemetry (Jaeger), Prometheus (Grafana), and optimization of backend services to improve latency and scalability.
    • Proactive and reactive production incident management via tools like Jira and Kibana to ensure high availability.

    Technical environment: Go, MySQL, MongoDB, Cassandra, InfluxDB, REST, NATS, GitLab, Docker, ArgoCD, Kibana, Prometheus, Grafana, OpenTelemetry, Jaeger, Sonar, Swagger, Pytest.

    JAVA/Spring Boot Backend Developer

    May 2021 - December 2022
    NTT Data - Mission at Inditex, Casablanca Morocco

  • Microservice Scan Documents:
  • Development of a microservice to allow Stradivarius store managers to manage administrative documents. The microservice encodes and encrypts files for secure storage on a NAS server. Via web services, managers can easily download, retrieve and manage these documents, ensuring their security and accessibility.

    • Configured API Gateway Kong to manage and secure the microservice, including setting up routing, load balancing, rate limiting, and authentication mechanisms.
    • Development of an OAuth2 authorization module and OpenId connect authentication.
    • Development of REST CRUD web services for the management of administrative documents.
    • Configured the NAS server for storing scanned documents by setting up shared directories, access controls, and network connectivity, ensuring secure and efficient document storage.
    • Writing functions for unit tests with Junit 5 and Mockito.

  • Microservice Sales Book:
  • Inditex expressed the need to adapt and develop new functionalities in a microservice to improve the budget and sales of Stradivarius stores. The microservice allows Stradivarius store managers to call web services that manage the store's sales book in order to adapt to business needs.

    • Development of budget management services.
    • Development of sales management services.
    • Development of observation management services.
    • Development of sales report and budget management services.
    • Development of sales history and budget tracking services.
    • Management of the configuration cache with Ehcache.
    • Analysis and correction of anomalies reported on Jira.
    • Writing functions for unit tests with Junit 5 and Mockito.

    Technical environment: Java 11, Spring Boot, Spring Data JPA, Maven, REST, MySQL, MongoDb, Gitlab, Vault, Keycloak, Docker, GitHub Enterprise, Spinnaker, OpenShift Entreprise, Sonar, Swagger, JFrog, Junit5, Mockito.

    JAVA/JEE Backend Developer

    November 2019 - April 2021
    Eurafric Information, Casablanca Morocco

  • WorkFlow :
  • Development of a web application that covers the events (opening, control, modification, validation and closing) of commercial operations abroad (transfer, finex, credoc) on behalf of BMCE bank customers.

    • Implementation of the architecture of the solution.
    • Participation in the development and validation of specifications and functional specifications.
    • Design and production of an EJB meeting the functional specifications, by requesting the web services of the information System.
    • Development of a Java batch, generator of event reports of validated accounting documents.
    • Development of business reporting services.
    • Development of mailing services.
    • Creation of schema, tables, indexes and sequences with SQL scripts.
    • Generation and correction of entities from the database.
    • Realization of graphical interfaces for data entry and display.
    • Automation of build and deployment scripts.
    • Writing functions for unit tests with Junit 5 and Mockito.
    • Acceptance of web services tests by SoapUI.
    • Code Quality Validation with SONAR.


    Technical environment: JAVA/JEE (EJB3), Spring, Hibernate, Maven, SOAP, DevBooster(C#/.net), HTML, CSS, JavaScript, XML, WebSphere, Oracle 11, Gitlab, Jenkins, Sonar, Nexus, Junit5, Mockito.

    Education

    Computer engineering degree

    2015 - 2019
    National School of Applied Sciences, Tetouan

    Math-physics preparatory classes

    2013 - 2015
    CPGE Al Khawarizmi, Rabat

    SKILLS

    Operating system:

    Windows 10, Linux (Ubuntu).

    Language:

    GO, JAVA, C#, HTMl5, CSS3, JavaScript, SQL.

    Framework:

    Angular, Spring (MVC, Boot, Data JPA, Batch).

    Application Server:

    WildFly, Tomcat, Websphere.

    Web Service :

    REST/SOAP.

    Database:

    MySQL, Oracle, MongoDb, Casandra, InfluxDb.

    Test:

    Junit, Mockito, Pytest.

    CI/CD:

    GitHub Entreprise, GitLab, Jenkins, Docker, Spinnaker, ArgoCD, Openshift Entreprise, Sonar, Nexus.

    Logging/Monitoring:

    Kibana, Grafana, Prometheus, OpenTelemetry, Jaeger.

    Agile:

    Kanban, Scrum.