#Development #Passion #Business #TechnoEnthousiast
More informationsWith a solid -year background in web development, I stand out for my T-Bone expertise, mastering both front-end and back-end, with a particular focus on JavaScript (Angular, NestJS, Node.js) and a proven competence in Java. My commitment to Clean Architecture and Clean Code allows me to offer scalable, high-performance, and maintainable solutions, meeting the complex challenges of modern web projects.
Unit Testing and Clean Code Specialist: My expertise goes beyond coding. Driven by a passion for quality, I optimize every line of code through rigorous unit testing and strict adherence to Clean Code principles, ensuring reliable and high-performing applications.
Expanded Skills in DevOps: Beyond traditional development, my skills also encompass the DevOps realm. Thanks to my in-depth knowledge, I facilitate and optimize application life cycles, from continuous integration to deployment, thus ensuring efficient performance management.
Adaptability and Global Vision: Flexible in my working methods, I am ready to adapt to various collaboration models (contract or time & material) and to take on international challenges. My approach is to openly discuss each project to define together a pricing strategy that reflects the specificity and ambition of your projects.
I am here to turn your challenges into successes. Let's start the dialogue and together bring forth innovative and sustainable solutions.
#WebDevelopment #JavaScript #Java #DevOps #CleanCode #CleanArchitecture #TechnologicalInnovation
#Developer fullstack | October 2023 - today
In the context of my personal project, "yoda.prof", I undertook the development of a SaaS dedicated to online training, utilizing a variety of digital content such as videos, slides, and PDFs. The goal was to create an intuitive and engaging platform, enabling users to effectively learn and train in various fields.
One of the key innovations of "yoda.prof" was the integration of artificial intelligence to offer predetermined training scenarios. This feature aimed to provide a personalized learning experience, adapting the journey according to the progress and specific needs of each user.
Although "yoda.prof" did not evolve into a startup, this project allowed me to deepen my skills in developing SaaS solutions and integrating AI into web applications. I faced various technical challenges, including the management of digital content, optimizing user experience, and implementing AI models to support interactive and adaptive learning.
This personal project was an enriching experience, providing a platform to experiment with advanced technologies and explore the possibilities offered by AI in the field of digital education. It highlighted my ability to turn an idea into a functional product, demonstrating my passion for innovation and continuous improvement in the development of technological solutions.
Technical stack : Angular, PrimeNG, NestJS, Jest, Postgresql, Keycloak, Docker, Github CI. Trunc-based developement, TDD, hexagonal architecture, continuous CI/CD
#Solution Architect | April 2022 - October 2023
At Aptic, I was involved in an ambitious project to completely overhaul their application, a platform that mediates between training centers, funding organizations, and learners facing barriers to accessing digital tools. This mission highlighted the importance of creating an accessible, intuitive, and high-performing solution, tailored to the specific needs of each user group.
The rebuild from scratch required the establishment of new architectures for both the front-end and back-end, thus ensuring a solid foundation for the development and future expansion of the application. This fundamental step involved careful design, aimed at optimizing user experience, system performance, and maintainability.
The development of the necessary functionalities for this overhaul was guided by a deep understanding of the challenges faced by end-users, particularly accessibility for those who struggle with digital tools. This included creating clear and simple user interfaces, implementing interactive guides, and ensuring compatibility with various devices and technological aids.
This work at Aptic highlighted my ability to transform complex and varied requirements into concrete and effective technical solutions. It also demonstrated my commitment to developing applications that not only meet the immediate needs of users but also facilitate broader inclusion, making education and training more accessible to everyone. This project was a significant opportunity to contribute to an important social cause while tackling stimulating technical challenges.
Technical stack : Angular, PrimeNG, NestJS, Jest, Postgresql, Make(previously integromat), Docker, Gitlab CI, Kubernetes. Trunc-based developement, continuous CI/CD
#Frontend Architect | December 2022 - September 2023
At Primobox, I played a pivotal role in the digital transformation of their legacy HR management application, leading the development of a modern front-end and significantly contributing to the back-end architecture. This project involved creating a solid foundation for the application's renewal while ensuring the continuity and enhancement of the services offered.
The front-end overhaul was accomplished by establishing an innovative architecture for two distinct applications, while sharing a common local library. Developed and managed via Storybook, this library enabled efficient harmonization and reuse of UI/UX components, thus facilitating consistent development and maintenance of the applications. This approach not only optimized development resources but also enhanced the overall user experience with a unified and intuitive user interface.
Besides the front-end work, I also developed back-end functionalities, contributing to the application's robustness and scalability. This required a deep understanding of the specific business needs in HR management, as well as the rigorous application of best practices in software development.
Furthermore, I embraced the role of mentor within the team, guiding developers in their proficiency in Angular and Jest. Through targeted training sessions and continuous support, the team quickly became autonomous and skilled, thereby strengthening Primobox's ability to innovate and efficiently meet its clients' demands.
Technical stack : Angular, PrimeNG, Jest, Storybook, Java, MSSQL, Docker, Gitlab CI
#Backend developer | July 2021 - April 2022
At PrestaShop, I had the unique opportunity to contribute to the development of two open-source libraries, strengthening the technical infrastructure of the platform and facilitating the integration of modern and scalable technologies.
The first task was updating PrestaShop's core library. This update allowed PrestaShop to efficiently integrate the CQRS library from NestJS with the EventStore database, marking a significant technical evolution. Thanks to this library, PrestaShop could benefit from a more robust and scalable architecture, thereby optimizing the management of events and commands within the application.
The second contribution was developing an interconnection library designed to abstract and facilitate communication between two projects using different and incompatible versions of EventStore. This innovation solved a major compatibility challenge, enabling smooth and seamless interaction between various components of the PrestaShop ecosystem, despite version discrepancies.
These projects at PrestaShop allowed me to demonstrate my ability to work on complex open-source solutions, requiring a deep understanding of modern software architectures and the ability to solve high-level technical problems. My work contributed to the continuous improvement of the PrestaShop platform, enhancing its flexibility, scalability, and capacity to integrate cutting-edge technologies.
Technical stack : NestJS, Jest, Eventstore, Microservices, cqrs
#Lead développeur / Scrum Master | Febrary 2021 - June 2021
Initially on an "emergency" mission, it was crucial to deploy the flagship product for a key client. I took the lead on important topics and onboarded new arrivals. Once this client was successfully launched, we established a team topology that enabled the industrialization of development:
I collaborated daily with international team members (Russians, Ukrainians), requiring fluent English every day. I also shared best development practices and supported the more junior members in the background.
Technical stack : Angular, Jest, Agility, Scrum
#Developer | June 2020 - january 2021
Following a version release, it is traditionally used by the team to address bugs. Therefore, I enhanced my skills in the technical and extensive functional aspects of the project. This period was also utilized to implement technical improvements on the main project:
For a PDF production and printing application (related to the results provided by the main application):
Technical stack : Node.js, Angular, Jest, inversifyJS, PDF, Clean Architecture
#Lead Developer | November 2019 - April 2020
At Maincare, following the acquisition of a company introducing a new development framework, I was tasked with mastering this framework and creating POCs to demonstrate its mechanics, aiming to enhance our team's skills. This challenge proved to be an opportunity to showcase our team's ability to tackle technical challenges with innovation and adaptability.
We quickly faced obstacles that required rethinking our approach. Supported by management and through team collaboration, we adopted creative solutions, leading to a significant evolution in our development process. We moved to advanced VueJS development using TypeScript, supported by Jest for unit testing on the front end, and modernized the back end with JUnit. This shift was made possible by our team's dedication and collaborative spirit.
Expanding from 2 to 5 developers, we showcased our collective ability to adapt and grow, embracing both the original framework and our new direction. We focused on development excellence, incorporating Clean Code, SOLID principles, TDD, and pair programming, transitioning to an Agile methodology with two-week sprints, product demos, grooming sessions, and retrospectives, significantly improving our workflow and team cohesion.
Implementing a complete CI/CD pipeline for the project highlighted our commitment to continuous improvement and efficiency. Furthermore, enhancing communication with the framework teams in Dijon bolstered our collaboration, emphasizing the importance of teamwork in achieving our common goals.
Technical stack : Java, Vue.js, JavaScript, gitlab cicd, TypeScript, Jest, JUnit, TDD
#Developer and associate | June 2019 - March 2020
At Zyps, an innovative startup focused on securing domain names for businesses on the Internet, I took on the role of developer, with the flagship project being the enhancement of a front-end intended to effectively illustrate our solution's capabilities. My challenge was to design a user interface that clearly demonstrates the functionalities offered by our service.
Technical stack : Angular, Keycloak, HTML/CSS
#Developer | April 2018 - November 2019
At Betclic, I was involved in developing features for the company's web application, using Angular versions 5, 6, and 7. This initial phase of work continued until February, when the project shifted in a new direction. Starting in February, a unique opportunity arose: to contribute to the development, from the early stages, of a brand new brand for Betclic. This project, highly confidential before its launch, was an exciting and demanding adventure. By adopting Angular 7 for this initiative, our team dove into a rich and complex development environment.
The use of RxJS was central to our work, with particular attention paid to managing memory leaks. The implementation of Server Side Rendering (SSR) added an extra layer of technical innovation to our project. Our commitment to Clean Code and SOLID principles, along with the rigorous application of Test-Driven Development (TDD), were essential to maintaining our code's high quality and reliability.
Team collaboration was strengthened through regular code review sessions and pair programming, crucial for sharing knowledge and ensuring code excellence. Adopting an Agile methodology, we developed features in close collaboration with the Product Owner (PO), during bi-weekly sprints, allowing for steady progress aligned with the project's goals.
This work took place in an international context, requiring daily communication in English and providing the opportunity to work in a multicultural environment, thereby enriching my professional and personal experience.
Technical stack : Angular, HTML/CSS, RxJS, TDD, Server Side Rendering, MVP, Karma
#Lead developer | December 2017 - March 2018
At La Banque Postale, I contributed to the development of several applications, leveraging my expertise in Spring and Angular technologies. These projects allowed me to implement innovative solutions that met specific needs in a demanding and highly secure environment.
One of the standout projects was the development from scratch of a password management application. To achieve this, I designed a robust back-end using Spring, paired with a dynamic front-end in Angular 4, all while integrating OpenDJ as the LDAP server. This project enabled me to tackle challenges related to securing and efficiently managing user access.
Additionally, I was involved in creating REST services, utilizing the power of Spring and adopting a Test-Driven Development (TDD) approach. This method, based on writing source code guided by unit tests, was crucial for ensuring the quality and reliability of the developed services, strictly following the provided technical documentation.
Lastly, I participated in the development of functionalities for the bank's most significant Angular 5 project, dedicated to the banking sector. This ambitious project included setting up REST services in Spring, developed from detailed specifications. This experience was an excellent opportunity to contribute to the digital evolution of La Banque Postale, developing solutions that precisely meet the requirements and high standards of the banking sector.
Technical stack : Angular, NgRx, RxJS, HTML/CSS
#Developer | April 2017 - November 2017
At La Banque Postale, I played a key role in the evolution of the internal portal for branch advisors. This mission required innovative and technical development, covering both front-end and back-end aspects to enhance the efficiency and user experience of advisors.
For the front-end part, I worked with FwAd, a proprietary framework inspired by AngularJS, chosen for its ability to provide a smooth and responsive user experience. This technology enabled me to develop intuitive and efficient interfaces, simplifying the daily operations of branch advisors with streamlined navigation and enhanced functionalities.
On the back-end side, I utilized Java with Spring Boot and Maven, adopting a REST architecture to ensure the robustness and scalability of services. This approach allowed for the creation of effective back-end solutions capable of managing large volumes of data while ensuring optimal performance.
The project was carried out in an AGILE context, with several development teams working in parallel on different aspects of the portal. This collaboration required tight coordination and fluid communication between teams to master a vast and complex functional set. My involvement in this project not only strengthened my technical skills in full-stack development but also honed my ability to work effectively within AGILE teams, thereby contributing to the continuous improvement of the internal portal used by banking advisors.
Technical stack : JavaScript, Maven, Spring Boot, Java, REST
#Developer | November 2016 - March 2017
At EDF, I contributed to the design and development of a POC (Proof of Concept) for a user interface, demonstrating my ability to navigate complex and evolving technological environments. This project enabled me to apply my front-end and back-end development skills, as well as actively participate in an Agile development process.
The front-end development started with Angular2, before transitioning to React following a strategic technological direction change. This experience not only strengthened my flexibility and ability to adapt to different technology stacks but also allowed me to contribute to the creation of a responsive and high-performance user interface. On the back-end side, I worked with Java and Spring Data on an Apache JBoss server, developing robust and reliable REST services.
Agile methodology was at the heart of this project, with my active participation in planning poker, designing user stories, and breaking them down into weighted tasks. Working closely with the team and the client, along with the support of several SCRUM Masters, we maintained transparent communication and frequent updates on project progress. This methodology ensured a rapid adaptation to client feedback, thus optimizing the development of the POC.
I also played a key role in implementing new features on both the front and back ends and in writing unit tests for the front end using Karma. My contribution was crucial for the preparation and success of regular demonstrations, showcasing our progress and receiving constructive feedback for continuous adjustments. This project at EDF was a great opportunity to demonstrate my technical expertise while developing a client-centered approach in an Agile framework.
Technical stack : Angular, React.js, jboss, Java, Spring Data, REST
#Developer | May 2015 - October 2016
At the Regional Council of Aquitaine, I had the opportunity to participate in the development and support of a large-scale project, intended for about 4000 users. This experience was marked by the application of in-depth software development skills, as well as a significant contribution to the continuous improvement of the application.
The development focused on JAVA/J2EE, incorporating the use of Struts 1.2 in a legacy context, which presented unique challenges related to the integration and maintenance of older technologies. Concurrently, the PostgreSQL database management system was used, requiring technical expertise to efficiently manage data and ensure system integrity.
On the front end, I was tasked with developing and integrating various functionalities, using JavaScript and CSS to ensure consistency with the organization's graphical charter. This work not only improved the user interface but also contributed to providing a smooth and engaging user experience.
This mission at the Regional Council of Aquitaine showcased my ability to work on complex projects, requiring both solid technical know-how and a special focus on user experience. It also highlighted my skill in navigating mixed development environments, combining modern and legacy technologies, while actively contributing to the support and evolution of a critical system for the organization.
Technical stack : java J2EE, Struts, PostgreSQL, SQL
#Developer | September 2015 - April 2016
At Orange, I was involved in developing features for a project aimed at around 200 users, an experience that underscored my versatility and adaptability in web development. The project benefited from my technical expertise in implementing robust and user-friendly solutions.
The development core was based on PHP and Zend2, providing a solid foundation for building dynamic web applications. The use of MySQL as a database management system enabled efficient data handling and ensured the performance and security of the processed information.
On the front end, I managed the integration of modifications and the addition of new features, using JavaScript and CSS to strictly adhere to Orange's graphical charter. This included creating and modifying AJAX calls, essential for enhancing the application's interactivity and the overall user experience.
This mission at Orange offered me the opportunity to demonstrate my ability to effectively contribute to the growth of a technological project, ensuring the development of features that are both innovative and in line with expectations in terms of design and user experience. It highlighted my commitment to providing high-quality solutions tailored to the specific needs of a demanding corporate environment.
Technical stack : PHP, Zend 2, MySQL, JavaScript, css
#Developer | Février 2014 - August 2015
At Yellow Pages, my role focused on automating various manual tasks, a challenge that required a deep understanding of internal processes and the ability to develop innovative solutions to optimize operational efficiency.
I contributed to automating a significant part of the data integration chain, a project that significantly reduced the time and resources needed to process and integrate vast data sets into the company's systems. To achieve this, I developed a Java application with a SWING user interface, thus facilitating end-user interaction with the automation process.
The use of the POI API for modifying Excel documents was a key aspect of this project, allowing for efficient and precise data manipulation within spreadsheets. Moreover, integration with the Oracle DBMS through its API enabled smooth data management between applications and the database, thus ensuring the integrity and security of the processed information.
To complement these automations, I also developed Excel macros in VBA, aimed at further accelerating data processing. These macros optimized internal workflows, reducing the time needed for recurring tasks and thus improving overall productivity.
My time at Yellow Pages highlighted my ability to identify process optimization opportunities and develop advanced technological solutions to address them. This project not only improved the company's operational efficiency but also contributed to better resource allocation, freeing up time for higher-value tasks.
Technical stack : Java, Java Swing, Oracle Database, Macros Microsoft Excel, Visual Basic for Applications (VBA)
#Developer | December 2012 - December 2013
In this dynamic startup, I was tasked with developing new features for the main application, directly addressing the evolving needs of clients. My work was based on Java J2EE, a technology of choice for creating robust and scalable solutions in a rapidly changing environment.
In addition to feature development, I implemented a server monitoring solution using Nagios. This initiative enabled real-time surveillance and proactive management of IT infrastructures, thus ensuring optimal availability and performance of the services offered by the startup. Integrating Nagios into our ecosystem marked a turning point in how we approached system maintenance and reliability, providing unprecedented visibility into the state of our infrastructure.
Technical stack : java J2EE, Nagios
2007-2012
High Performance Computing
consists in
optimisation of massively parallel computers's programming, like
super calculators. Those machines are composed of several CPUs and GPUs, all of them
linked by a
network.
This kind of programmation raises some specific problematics in performance
and
ressources consuming.
An attempt to dev a POC in angular, with an hexagonal architecture inside.
Do you know Event Modeling? Do you know NestJS? CaviaJS is a framework built on top of NestJS making it easy to create commands, queries, events etc in an event modeling context.
While working with Eventstore projections, it can be blindfull to work with vanillaJS. This lib makes it simple to build projections with TS, making it easier to test.
Base n calculator, allowing to add 2 base 5 numbers if you want (spoil : converts in base 10 and then reconvert in origin base). (Python)
The result was so counter intuitive that I wanted to verify by myself. (Java)
Chrome extention aimaing to navigate throw google search results with keys. (Typescript)