Adrien HAUTOT

Bonjour, bienvenue sur mon site internet.
Je suis développeur informatique spécialisé dans l'informatique de gestion et les développements web.
Auto entrepreneur, je suis à votre disposition pour tous vos projets informatiques de développement.

Je vous invite à accéder à la liste de mes projets, à mon CV ou encore à me contacter.

Langages de programmation


PHP

JavaScript

HTML

CSS

Mes compétences en php

Je développe en php depuis 2007 et j'ai pu parfaire mes compétences sur un certain nombre de projets:

  • Création d'un framework orienté gestion: Abah-foundation.
  • Création d'une librairie de création de formulaires: Php-Form.
  • Création d'un outil de gestion de dépendances pour projets PHP: Php-Depends.
  • Création de sites internet:
  • Maîtrise de l'ORM Doctrine.
  • Maîtrise de la librairie Log4Php.
  • Maîtrise du framework PhpUnit.

Mes compétences en JavaScript

  • Création d'un jeu Javascript multijoueur: jeu
  • Maîtrise du framework JQuery: utilisation sur tous mes sites et sur mon framework Abah-foundation
  • Création de plugins JQuery:
    • ArticleCarousel utilisé sur ce site
    • LoadSpinner utilisé par ArticleCarousel. Dessine sur un élément canvas
  • Utilisation de RaphaelJs: librairie Javascript de dessin vectoriel
  • Maîtrise de la technologie AJAX
  • Maîtrise des standards Json et Yaml
  • Maîtrise du framework JsUnit
  • Utilisation de Node.js et du module socket.IO pour la communication temps réel de mon jeu JavaScript

Mes compétences en html

  • Création d'un framework Web orienté gestion: Abah-foundation
  • Création d'une librairie de création de formulaires: Php-Form
  • Création de sites internet:

Mes compétences en css

  • Création d'un framework Web orienté gestion: Abah-foundation
  • Création d'une librairie de création de formulaires: Php-Form
  • Création de sites internet:

JAVA

PYTHON

RUBY

C++

Mes compétences en java

  • Utilisation du socle technique Scub-foundation
    Technologies utilisées:
    • Librairies:
      • HSQLDB: Système de gestion de bases de données relationnelles embarqué
      • JUnit: Bibliothèque de tests unitaires pour le langage de programmation Java
      • DBUnit: Extension de JUnit qui permet par exemple d'utiliser des jeux de données pour les tests unitaires
      • Hibernate: Framework open source gérant la persistance des objets en base de données relationnelle
      • Hibernate Search: Permet d'utiliser toute la puissance de la recherche full text
      • Lucene: Moteur de recherche full text
      • Spring: Framework open source JEE pour les applications 3-tiers (Supporte l'IOC et l'AOP)
      • GWT: Boîte à outils développée par Google, qui permet de développer en Java plus facilement des solutions Web/AJAX
      • Dozer: Permet de faire du mapping d'un bean Java vers un autre
      • CAS: Gestion de l'authentification unique (Single Sign On)
      • DBCP: Permet de mettre en place un pool de connexion
      • Log4j: Paramétrage des logs (niveaux, portée, etc…)
      • IText: Génération de fichiers au format pdf à la volée
      • Jamon: Monitoring d'applications en production
      • SiteMesh: SiteMesh est un framework qui facilite la disposition du contenu dans les applications Web
      • POI: POI permet la manipulation de fichiers basés sur les standards OOXML et le format de document composé OLE 2 de Microsoft
      • Quartz: Quartz est un programmateur de tâches planifiées
      • JMS: JMS et une API qui définit les standards d'échange de messages entre applications JEE
    • Infrastructure:
      • Maven: Outil pour la gestion et l'automatisation de production des projets Java
      • Subversion: Système de gestion de versions (SVN)
      • JOnAS: Serveur d'applications J2EE Open Source
      • PostgreSQL: Système de gestion de bases de données
      • Mantis: Outil de gestion des demandes
    • Outils:
      • JDK: Environnement dans lequel le code Java est compilé pour être transformé en bytecode afin que la JVM puisse l'interpréter
      • Eclipse: IDE (en français Environnement de Développement Intégré) libre
      • EclEmma: Plug-in Eclipse de vérification de couverture des tests
      • Web Tools Platform: Plug-in Eclipse pour faciliter le développement web
      • SpringSource Tool Suite: Plug-in Eclipse pour faciliter le développement Spring
      • M2Eclipse: Intégration de Maven pour Eclipse
      • Checkstyle: Outil de contrôle de code
  • Création d'applications pour répondre à des besoins ponctuels de clients dans le cadre de mon apprentissage chez agifa
  • Création d'applications pour le framework Abah-foundation: gestion des fichiers de langues, des déploiements, des dépendances...
  • Création d'une machine virtuelle pour la salle de Travaux Pratique du lycée Turgot Limoges (87) dans le cadre du projet industriel de BTS IRIS. La machine virtuelle représente un ascenseur qui doit communiquer avec un Automate Programmable Industriel et réagir au programme chargé par l'élève comme le ferait un véritable ascenseur.
    Interfaçage du Java avec du C++ pour l'acquisition de données: utilsation du JNI (Java Native Interface).
  • Programmation client/serveur

Mes compétences en Python

Création de modules supplémentaires pour le logiciel OpenERP: ERP libre et open source écrit en python.

Mes compétences en Ruby

Création d'une application "surveille ce prix" pour Scub basée sur RoR (Ruby on Rails) et l'API google products.
Le principe étant de demander à l'application de prévenir lorsque le prix d'un produit donné descend en dessous d'un certain seuil.

Mes compétences en c++

  • Programmation client/serveur
  • Liaison série RS232 / RS422 / RS485, parallèle, réseau intranet (TCP/IP), bus de terrains (bus Can)
  • Pilotage de parties opérantes

Base de données


MySQL

PostgreSQL

Oracle

SqlServer

Access

Mes compétences en base de données MySQL

Tous mes sites internet utilisent une base de données Mysql

Mes compétences en base de données PostgreSQL

  • L'application OpenERP sur laquelle j'ai travaillé durant mon apprentissage fonctionne avec une base PostgreSQL.
  • Les application sur lesquelles j'ai travaillé pour Scub fonctionnent sous PostgreSQL.

Mes compétences en base de données Oracle

  • Première année du master CS2I: construction de requêtes, compréhension du fonctionnement de la base...
  • Seconde année du master CS2I: Administration de la base, clustering...

Mes compétences en base de données SqlServer

  • Utilisation pour des projets spécifiques
  • Utilisé pendant l'unité d'enseignement client/serveur en seconde année du master CS2I

Mes compétences en base de données Access

Utilisation pour des besoins spécifiques et notamment sur des logiciels de gestion utilisés par Agifa.


Autres compétences

Systèmes d'exploitation


LINUX

WINDOWS

Mes compétences en systèmes Linux

  • Installation et paramètrage systèmes (Debian, Ubuntu...
  • Installation d'applications sur serveur linux distant (connexion SSH): OpenERP, Zimbra...
  • Sécurité des systèmes: pare feu, proxy...

Mes compétences en systèmes Windows

  • Utilisation au quotidien
  • Utilisation du système depuis sa version 3.1


Structuration de données


XML

YAML

JSON

Mes compétences en XML

Nombreuses utilisations du xml:

  • Dans le cadre de développements pour OpenERP, les vues étant décrites en xml.
  • Pour mon framework Abah-foundation, pour les fichiers de configurations, ant...
  • Programmation de scripts pour Ant
  • Définition des dépendances pour Php-Depends...

Mes compétences en YAML

  • Utilisation pour la définition des données et des modèles pour Doctrine

Mes compétences en JSON

  • Manipulation AJAX
  • Utilisation pour différents plugins jquery
  • Structuration des données de mon jeu JavaScript en JSON


Tests unitaires


PhpUnit

JsUnit

JUnit

DbUnit

Selenium

Mes compétences en PhpUnit

Les tests unitaires font partie intégrante du processus d'intégration continue. De ce fait, PhpUnit est intégré dans mon framework Abah-foundation pour de multiples utilisations: non régression, tests multicas...

Mes compétences en JsUnit

Les tests unitaires font partie intégrante du processus d'intégration continue. De ce fait, JsUnit est intégré dans mon framework Abah-foundation pour de multiples utilisations: non régression, tests multicas...

Mes compétences en JUnit

Création de tests unitaires Square, pour la CRM de la Smatis lors de mon apprentissage dans le société Scub.

Mes compétences en DbUnit

Création de tests unitaires pour la CRM de la Smatis lors de mon apprentissage dans le société Scub.

Mes compétences en Selenium

Les tests unitaires font partie intégrante du processus d'intégration continue. De ce fait, Selenium est intégré dans mon framework Abah-foundation afin de pouvoir mettre en place des tests fonctionnels des applications.



Intégration continue


Sismo

Hudson

Mes compétences en Sismo

Sismo est un "serveur d'évaluation continue". Il ne fait rien de plus que lancer les tests et envoyer les résultats. Je l'ai mis en place et testé pour mon framework Abah-foundation. J'ai rapidement abandonné Sismo pour une plateforme d'intégration continue avec plus de fonctionnalités comme Hudson afin de pouvoir reproduire le processus de développement que je souhaitais.

Mes compétences en Hudson

Hudson est une plateforme d'intégration continue écrite en Java qui possède un certain nombre de plugins pour s'adapter à des projets PHP que j'ai mis en place pour mon framework Abah-foundation. Contrairement à Sismo, les possibilités de la plateforme sont moins limitées et prennent en compte:

  • Lancement des tests.
  • Compatibilité avec de nombreux frameworks de tests: PhpUnit, JsUnit, Selenium, CheckStyle...
  • Mise en place d'une version de recette des projets.
  • Mise à jour automatique des bugs Mantis lorsqu'ils sont corrigés...

Copyright © Adrien HAUTOT 2011 - 2012