Votre navigateur est obsolète !

Pour une expériencenet et une sécurité optimale, mettez à jour votre navigateur. Mettre à jour maintenant

×

Hassane AZZI

Backend Development Engineer C++ / Java / Python

Mobility: Île-de-France, Toulouse, Bordeaux
Activities: Software Development, Operations Research, Optimization, Machine Learning
Defense clearance: Secret Defense (currently valid)
Employed Open to opportunities
Professional Profile
Computer Science Engineer, option: Operations Research & Optimization (M2INFO_RO - 2016) from ENAC (Ecole Nationale de l'Aviation Civile), I apply my expertise in operations research, advanced algorithms, and software development (C++, Java, Python) to projects across various industrial sectors. My combined scientific and technical skills enable me to develop robust and optimized solutions tailored to challenges of performance, reliability, and operational efficiency.
  • As part of a temporary increase in activity for various projects with the Naldeo company, my role during this mission is to support different clients (Omexom, Valorem and Urbasolar) in the development of optimal management solutions for hybrid energy systems in non-interconnected zones (ZNI), in particular overseas departments and regions (Corsica, Martinique, Guadeloupe, Reunion Island and Mayotte). This advanced energy management solution is capable of maximizing the revenues of hybrid power plants, by optimizing production in real time according to the announced program, the actual state of the plant and the updating of production forecasts.
Detailed Description
  • Sizing studies and performance assessment of hybrid power plants
  • Development and delivery of the ENERBIRD EMS software system (energy optimization, control, and monitoring) for several hybrid renewable energy plants (wind and solar), integrating battery storage.
  • Implementation of optimization and operations research algorithms (MILP, MINLP, genetic algorithms) to control renewable energy generation and storage plants.
  • Development of a machine learning predictive model capable of estimating electrical energy production with improved accuracy over a 24-hour horizon.
  • Design of energy simulators and management of commissioning and acceptance testing phases.
  • Participation in defining the technological development roadmap.
  • Technical Environment: Python, Visual Studio Code, Machine Learning (Neural networks), Scikit-Learn, PyCharm, MLflow, GitLab, Matlab/ Simulink, Optimization Tools and Frameworks (PuLP, Gekko, Pyomo), Model Predictive Control (MPC), SCADA.
Company Description
NALDEO Digital for Climate, a subsidiary of the NALDEO Group, specializes in consulting and developing digital tools to support climate action and the energy transition.
  • For the client SCLE SFE, and within the "Reliability" team, the mission consists of developing a software application (Vcard) for simulating high-voltage substation cards.
Detailed Description
  • Modification and restructuring of the software architecture (addition of new features)
  • Development of a GUI using Qt5 on Linux (Virtual Machine) for managing the boards via a CAN interface. It also allows the user to activate the outputs of each board.
  • Implementation of unit and integration tests for the GUI
  • Writing of project documentation and deliverables
  • Corrective and evolutionary maintenance of the GUI
  • Technical Environment: C/C++17, Linux (Ubuntu, Debian), Qt5, Python (PyCharm), Shell/Bash, GitLab, Jenkins, SonarQube, CAN
Company Description
SCLE SFE is a French company specializing in the design, manufacture, installation and maintenance of electronic equipment and software for the energy and rail transport sectors.
Company website
  • As part of the continuation of the internship carried out in Cherbourg for the E3S (Energy Smart Sailing Ship) project, this assignment involved completing the development phase of the project.
Detailed Description
  • Development of an EMS (Energy Management System) using a microservices architecture with Spring Boot, structured in multiple software layers and enabling communication between components via REST APIs.
  • Writing of unit and integration tests using JUnit and Mockito
  • Implementation of the energy management optimization algorithm in C++
  • Technical Environment: C++17, Java 11, Spring Boot, Microservices, Visual Studio Code, REST API, TCP/IP, Kafka, Git, Bitbucket, SonarQube, Maven, Jenkins, JUnit, Mockito, MySQL
  • Mission: As part of the E3S (Energy Smart Sailing Ship) project led by the Naval Engineering and Energy Research & Innovation Unit at SEGULA Technologies, the objective of this mission was to implement a hybrid intelligent energy management system (EMS) capable of managing the production and consumption flows of electric energy on board a long-distance cruising sailboat.

    The sailboat is equipped with renewable energy sources (solar panels, wind turbines, a hydrogenerator, a diesel generator, and a battery bank) installed on board, ensuring safety during navigation and maximum comfort for passengers (air conditioning, internet, television, shower, etc.).
Detailed Description
  • Development of a modeling approach and resolution of the robust optimization problem under uncertainties depending on weather conditions
  • Implementation of the software solution in a digital tool developed using GLPK-C++
  • Study of different solution scenarios based on weather forecasts
  • Analysis of uncertainties related to changing weather conditions during navigation
  • Technical Environment: C++11, GLPK, Microsoft Visual Studio 2017, Control Systems, Operations Research, Artificial Intelligence, Human-Machine Interaction, MATLAB
  • In air traffic management, separation distances must be respected to avoid any risk of collision between aircraft. Two aircraft are considered to be in conflict if the distance separating them is less than 5 nautical miles (NM) horizontally or 1,000 feet (ft) vertically. In other words, an air conflict corresponds to a loss of separation between two or more aircraft that find themselves too close to each other, in violation of predefined safety standards. The resolution of air conflicts is based on the implementation of avoidance maneuvers, such as changes in speed, altitude, or heading, in order to reestablish minimum separation distances. Each maneuver generates a cost, particularly in terms of kerosene consumption, depending on its nature. The objective of this project is precisely to minimize the total cost of maneuvers applied to aircraft, while ensuring compliance with safety standards.
Detailed Description
  • Modeling the optimization problem as a constrained mathematical model, then solving it using the Simulated Annealing method
  • Implementing the optimization solution in Java 8 using Eclipse
  • Analyzing the various results obtained (computation time, cost value) based on the number of aircraft
  • Conducting tests on instances provided by ENAC (École Nationale de l'Aviation Civile)
  • Technical Environment: Java 8, Eclipse, MATLAB, Air Traffic Management (ATM), air conflict, Simulated Annealing Method, Hill Climbing, Tabu Search, Genetic Algorithm, A* (A Star) Algorithm, DO-178
Company website
  • Airport traffic management poses many optimization challenges, making air traffic difficult to predict. In this context, assigning parking stands to aircraft, finding optimal landing sequences on one or multiple runways, as well as planning strategic taxi routes are major issues for air navigation services.The goal of this mini-project is to develop a flight sequencing strategy for arrivals at airports to avoid congestion caused by closely spaced aircraft arrivals.
Detailed Description
  • Conducting a comparative study between several optimization models and approaches, namely: two-level stochastic optimization, robust optimization (with scenarios)
  • Modeling the problem as an Integer Linear Programming (ILP) problem
  • Implementing the ILP solution with Python using the PuLP optimization library
  • Performing some tests on the solution and evaluating the impact of the number of runways on the objective function of the problem
  • Technical Environment: Python 3, Microsoft Visual Studio 2010, optimization tools (PuLP), Linux, Air Traffic Management (ATM)
Company website
  • This project aims to develop and implement a Machine Learning algorithm able to detecting anomalies in a system, using novelty detection and outlier detection techniques.
Detailed Description
  • Development and implementation of an algorithm in Python with Scikit-learn, presented as a Jupyter Notebook.
  • Examples of practical applications:
  • Identification of defects in parts on the manufacturing line
  • Detection of financial fraud in the banking sector
  • Technical Environment: Python 3, Jupyter Notebook, Scikit-Learn, Machine Learning Algorithms
  • Case study and application to solve real-world industrial problems: Knapsack problem, Vehicle Routing Problems (CVRP) applied to logistics.
  • Modeling and solving optimization problems using solvers
  • Technical Environment: IBM ILOG CPLEX Optimization Studio, LocalSolver, Pyomo, Mathematical Modeling, Combinatorial Optimization, Linear Programming