Création d’une solution de cloud computing haute
performance à destination des professionnels :
• Elaboration et création d’un cahier des charges de
la solution.
• Création du nom de domaine via OVH.
• Mise en place de la boite email en lien avec le
domaine via Google GSuite.
• Développement des bibliothèques qui seront
utilisées dans plusieurs des systèmes :
o Composants primitifs de la solution.
o Système communication API REST
(authentification via token).
o Système de gestion multi-servers (load
balancing).
o Gestion d’opérations en arrière-plan.
o Reprise d’activité en temps réel.
o Système d’envoie et de réception de mail
automatique.
o Bibliothèque de stockage des informations
utilisateur (implémentation Real Time
Firebase et MSSQL).
o Service de gestion de machine virtuelle
permettant de lier plusieurs providers de
service (Azure, Amazon Web Service,
Google Cloud Plateforme, Paperspace et
autre du moment que le système à la
possibilité d’implémenter la bibliothèque).
• Développement de la première partie de l’API
centrale : gestion de l’authentification client (avec
prise en charge de rôles pour l’administration ou les
utilisateurs dit « robot ») et stockage de la data
client.
• Création d’un système de cloud de fichier :
o Mise en place d’une interface de gestion
« Nextcloud ».
o Création dynamique de comptes
utilisateurs factices en lien avec l’API
centrale.
o Création du système de distribution des
fichiers utilisateur via un applicatif serveur
C# basé sur « linux fuse ».
• Création d’un « daemon », logiciel permettant la
communication entre une machine et le reste du
système :
o Gestion de la mise sous/hors tension de la
machine virtuelle.
o Gestion des informations d’authentification
Windows en corrélation avec l’API centrale.
o Système de fichier personnel de l’utilisateur
mappé en tant que disque dur en C# basé
sur « WinFSP ».
o Daemon serveur de streaming basé sur les
technologies « Nvidia » et « AMD » avec les
technologies d’encodage « H264 / H265 »
ou encore « OpenGL » et
« DirectX 9/10/10.1/12 » de manière à
retransmettre le flux vers le client de
restitution en utilisant le protocole Web
Socket.
o Gestion de la sécurité machine (firewall,
correctif de sécurités, etc…).
• Création d’un service de gestion d’hyperviseur
(ferme basée sur « Proxmox ») hébergée chez OVH :
o Service dédié à la configuration de
l’hyperviseur (devices passthrough,
firewall, GPU spliting, resources sharing),
un service par serveurs sur toute la ferme.
o Service chargé de donner les instructions
aux différents serveurs/services de la ferme
en fonction de la bibliothèque de liaison de
machines virtuelles.
• Liaison de la ferme de serveur, Azure, Amazon Web
Service, Google Cloud Plateforme et Paperspace à
l’API centrale.
• Création d’un client de restitution du flux vidéo via
Web Socket en utilisation « SDL2 ».
• Implémentation du module de paiement via
« Stripe ».
• Création des différentes consoles d’administration
en utilisant WPF, UWP en MVVM.
• Création de console cliente (en utilisant HTML, CSS,
JavaScript, jQuery) liée à l’API centrale.
• Passage en pré-production de l’intégralité des
services et réalisation des tests spécifiés par le
cahier des charges.
• Correction les erreurs trouvées via les tests et
passage de certains services sous linux en utilisateur
« .net core » puis passage en production après la
résolution des toutes les erreurs.
• Collecte des retours client et réalisation de
nouveaux cahiers des charges pour la création de
nouvelles fonctions à implémenter dans la solution
Création d’une bibliothèque permettant « d’attacher » une
interface graphique à un client d’API REST « universel » via
l’utilisation d’attributs sur les fonctions de ce dernier :
• Création du cahier des charges.
• Création de la bibliothèque du client d’API REST
universel + réalisation des tests unitaire +
publication vers Nuget.
• Création de la bibliothèque de contrôles utilisateur
(basée sur WPF) + réalisation des tests unitaires.
• Création de la bibliothèque de liaison entre les deux
bibliothèques précédentes + tests unitaires.
• Création d’une bibliothèque similaire pour
l’utilisation CLI (Windows uniquement) + tests
unitaires.
• Migration de la solution actuellement en .net
Framework vers .net Core + vérification du bon
fonctionnement de la solution en utilisant plusieurs
distributions Linux (via WSL).
Recodage entier d’un objet IOT depuis un code existant (qui
ne fonctionnait pas) vers un code plus propre et sans erreur :
• Passage de certaines parties du code en C++ vers du
C pour la compilation sur « Arduino Mega »
comprenant la gestion de commandes depuis un
module Bluetooth.
• Tests unitaires des différentes fonctions de l’objet.
Début d’un projet personnel visant à permettre le
développement C# sur « Arduino ».
Visual Studio Code,
CodeBlocks,
Création de ma propre base de données avec
implémentation Real Time en C# (authentification en liaison
avec Dank) :
• Création du cahier des charges.
• Développement de gestion de data des bases de
données avec cryptage AES128.
• Développement d’une interface de communication
via API REST (Json ou XML).
• Développement du serveur Web Socket via un
paquet Nuget.
Projet toujours en cours de développement….
Création d’un système d’administration et remaniement du
système existant de bornes d’arcade de jeu pour une
solution de recrutement RH 2.0 :
• Définition du cahier des charges en fonction des
demandes du client et de la solution déjà existante.
• Mise en place de machines virtuelles sur serveur
NUC via Virtual Box :
o Machine virtuelle prenant en charge la
plateforme de jeu (Docker sous Ubuntu).
o Machine virtuelle pFsense (gestion DHCP,
DNS et « routeur » d’un fake WAN (depuis
l’autre machine virtuelle vers le LAN
(tablettes).
• Création d’un réseau (via machine virtuelle
pFsense, switch Ethernet et NUC).
• Installation et configuration d’un serveur de base de
données Microsoft SQL Server pour la sauvegarde
des données de la plateforme jeu (sur NUC).
• Développement et tests de la plateforme
d’administration :
o Serveur centrale (communication via API
REST et Web Socket) sous forme de service
Windows :
▪ Communication en temps réel avec
les autres équipements (physiques
ou virtuels).
▪ Stockage des informations (via base
de données MSSQL) de la
plateforme de jeu.
▪ Gestion des machines virtuels
(interprétations de commandes
PowerShell vers Virtual Box) : mise
sous tension, mise hors tension,
gestion réseau, gestion des disques
durs pour mise à jour de la machine
virtuel contenant la plateforme de
jeu et interprétation des erreurs de
mise à jour.
o Interface d’administration (pour tablette
d’administration). Utilisation de WCF avec
navigation MVVM :
▪ Gestion de déconnection
volontaire du réseau.
▪ Mise hors tension de l’appareil.
▪ Mise hors tension de la totalité de
la solution.
▪ Transfère du nouveau disque dur
depuis un stockage externe vers le
serveur central.
o Application tablette de jeu :
▪ Réattribution automatique d’IP.
▪ Gestion de l’affichage du jeu en
mode « kiosk ».
• Intervenant en maintenance technique et
préventive sur le salon du « forum des métiers »
lors du premier déploiement de la solution.
• Déplacement et intervention chez le client final
pour maintenance et mise à jour de la plateforme
de jeu.
• Préparation de la migration de la solution vers
docker « en dure » sur le serveur NUC, projet qui ne
verras jamais le jour suite à l’abandon de la solution
par le client.
Système d’authentification centralisé permettant de gérer
l’identité d’utilisateurs en fonctions de projets (par exemple
Tizzl, Volga dans sa future version et de futurs projets) :
• Création du cahier des charges.
• Développement de la solution.
• Réalisation des tests unitaires.
• Mise en production.
Création d’un projet permettant à n’importe qui d’envoyer
et de recevoir des SMS de manière programmée via son
téléphone personnel. Solution destinée au petits
développeurs :
• Création du cahier des charges.
• Mise en place du serveur de base de données
(MySQL sur Debian).
• Création d’un API centrale (ASP.NET) hébergé sur
un serveur IIS.
• Création de l’interface graphique utilisateur (UWP,
MVVM).
• Création des applications de gestion SMS (Xamarin
pour Visual Studio et Xamarin Studio).
• Réalisation des tests unitaires.
• Mise en pré-production de la solution.
• Correction des bugs trouvés.
Participation à projet de création de jeu vidéo :
• Correction des bugs majeurs de la solution.
Création du système « motion » des caractères
(déplacements, i...