Chargement en cours...

MICHAEL GRAF

Consultant full-stack
Java/Typescript - Angular
17 ans d'expérience

A PROPOS

17 ans d'expérience, 17 ans de passion

L'éco-système des technologies web change et les navigateurs deviennent plus puissants que jamais.

L'adoption des frameworks comme Angular et React, des librairies comme Vue et des langages comme TypeScript et Javascript est grandissante.
D'autres solutions sont prometteuses, comme les Progressive Web Apps ou encore WebAssembly.
Ces technologies s'appuient sur un nombre croissant de services back-end, de Java à Firebase, hébergés sur un Tomcat dédié ou packagés via Docker...

Ces passionnantes avancées techniques permettent aux clients de satisfaire les nouvelles exigences de qualité, de performance et de productivité du marché, en apportant des solutions dans cet environnement concurrentiel, et en permettant un Time-To-Market plus court.

J’ai pu mettre à profit ces technologies dès leurs débuts, en créant mes premières applications single page en 2012, notamment pour des grands comptes.

Au delà de la technique, mon but est de répondre aux attentes client le plus exactement possible.
Les méthodes agiles facilitent le feedback client mais ne suffisent pas.
Le rôle d'un bon consultant est d'écouter, d'analyser, de vérifier sa compréhension en reformulant et en proposant des simplifications fonctionnelles et techniques, pour diminuer les coûts et respecter les deadlines, sans compromettre la qualité.

Développeur Java EE (J2EE/JEE), mon expertise back-end m’a largement permis d'appréhender les patterns de programmation comme MVC et l'architecture hexagonale, ainsi qu'utiliser quotidiennement le Test-Drivent Development pour créer du code robuste et de qualité, me permettant de créer des applications de gestion complètes et implémenter les fonctionnalités attendues.

J'ai participé à plusieurs projets pour divers clients français comme la Société Générale, Sanofi Aventis et Carrefour, et plus récemment en Suisse pour la banque Pictet, la banque Lombard-Odier ou encore l'Etat de Vaud.

J’ai tout au long de ma carrière bénéficié du sérieux de ces corporations pour me permettre d’affiner mon expertise. J’ai eu la chance d’implémenter des concepts de programmation à la fois efficaces, performants, complexes, et s’adaptant au plus près d’un besoin client souvent exigeant et évolutif.

COMPETENCES

langages de programmation, méthodes et frameworks où j’ai une solide expertise

Java
90
Typescript
Javascript
ES6
85
Angular
80
React
80
HTML5
CSS3
80
Node
npm
75
Spring
Spring MVC
Spring Boot
85
JPA
Hibernate
80
SQL
80
Git
95
Jira
BitBucket
Jenkins
Sonar
Maven
90
Agile
Scrum
TDD
90

Les technologies s'envolent, les concepts restent

Un bon développeur connait un large panel de technologies, maitrise les fondamentaux et pratique considérablement. Cela permet d'avoir le recul nécessaire à la création de meilleurs produits.

EXPERIENCE

Globaz, Neuchâtel, Suisse

Développeur back-end

Mission : Développement d’une application pour proposer des stratégies de placement dans le cadre légal d’un plan de prévoyance professionnel 2e pilier

  • Développement, intégration et tests
  • Respect de délais stricts

Environnement Technique : Java, Quarkus, REST, Hibernate, Envers, Liquibase, PostgreSQL, Keycloak, Docker, Git, Sonar, ArchUnit, Renovate, Dependency-Track, Gitlab, Jira, TDD, DDD, architecture hexagonale, Feature Workflow, Scrum, Agile

Octobre 2023 – Décembre 2023 (3 mois)
Janvier 2021 - Septembre 2023 (33 mois)

9mp.org, Lausanne, Suisse

Expert technique full-stack

Développement de diverses applications (apprentissage, quizz, génération d'image)

  • Développement, intégration et tests
  • Veille technologique

Environnement Technique : Java, NextJS, React, Flutter, Web3/Solidity, outils de Machine Learning

Etat de Vaud, Lausanne, Suisse

Expert technique full-stack

Première mission (2016-2018) : Portail sécurisé de cyber administration

Fonctionnel : Délivrance de prestations d'état dématérialisées (ex : Actes d'état civil, Autorisations municipales, etc.), gestion d'identité et gestion de la communication par voie électronique entre autorités et administrés - équipe Cyber (PEE)

  • Développement Full Stack : JavaScript/Angular et Java/Spring/Hibernate
  • Mise en place d'un Feature Workflow assurant une meilleure qualité de code
  • Découverte du fonctionnel étatique : expérience positive avec une administration publique
  • Synchronisation avec de multiples équipes, notamment métier, architecture, ESB, infra, éditique, archivage, etc.

Seconde mission (2019-2020) : Pôle formation professionnelle étatique

Fonctionnel (2019) : Amélioration d'une application de gestion des inscriptions aux examens, des procédures de qualification, de la délivrance des titres et de l’archivage électronique
Fonctionnel (2020) : Développement quasi-intégral d’une application BackOffice réceptionnant les demandes des prestations cyber de la DGEP (pôle formation).
Les apprentis effectuent la demande de formation depuis le portail cyberadministration au travers des prestations publiques Contrat d'apprentissage et Maturité Professionnelle Post-CFC.
Les gestionnaires de dossier, réceptionnent, contrôlent, traitent, enrichissent la demande pour finaliser le contrat d’apprentissage qui est ensuite enregistré dans l’application de gestion centralisée.

  • Développement Full Stack : JavaScript/Angular et Java/Spring/Hibernate
  • Partage de l'expertise de la première mission avec la nouvelle équipe : bonnes pratiques, outils, etc. pour améliorer l'efficacité et la qualité
  • Utilisation des fonctionnalités du framework développé dans la première mission pour accélérer et standardiser les développements de nouvelles prestations étatiques

Environnement Technique : Java, Javascript, Angular, REST, JSON, JEE, Spring MVC, Spring Data, Hibernate, SQL Server, Oracle, Jaxb, Jackson, ESB, Git, Tomcat, Jira, Bitbucket, Feature Workflow, Jenkins, Scrum, Agile

Novembre 2016 - Décembre 2020 (50 mois)
Septembre 2016 - Octobre 2016 (2 mois)

Lombard-Odier, Genève, Suisse

Développeur front-end

Mission : Séniorisation du projet

Fonctionnel : Gestionnaire de droits d'accès

  • Contexte commercial initialement difficile
  • Restauration de la confiance client grâce notamment à une fréquence accrue des livraisons et du feedback, inspirée de la méthodologie Scrum
  • Mise en place de toute la partie front-end

Environnement Technique : Javascript, AngularJS, Swagger, REST, JSON, Git, Scrum, Agile

E-just, Genève, Suisse

Expert technique full-stack

Mission : Développement d‘une application d’arbitrage juridique

Fonctionnel : Résolution de conflits commerciaux en ligne

  • Développement Full Stack : JavaScript/Angular et Java/Spring/Hibernate
  • Qualité de code garantie notamment par un Feature Workflow et des pull request validées après un code review systématique entre collaborateurs
  • Start-up en pleine expansion, investissement ambitieux, conquête d'un marché inexploré, ambiance de développement bouillonnante et innovative

Environnement Technique : Javascript, AngularJS, REST, JSON, JEE, Spring MVC, Spring Data, Hibernate, SQL Server, Spring Security, Flyway, Jackson, Git, Tomcat, Jira, Bitbucket, Feature Workflow, Scrum, Agile

Novembre 2015 – Août 2016 (10 mois)
Avril 2015 - Août 2015 (5 mois)

Ateliers Nomades, Genève, Suisse

Formation technique complémentaire

Exploration technologique et développement d'applications

Environnement Technique : AngularJS, React, Ionic

parrain.org, Genève, Suisse

Expert technique full-stack

Mission : Développement d’un site internet de crowdfunding

  • Conception du site (Javascript, AngularJS)
  • Apport d’expertise pour le backend Java (JHipster, Spring, OAuth)
  • Conception de la communication client/serveur (JSON, REST)
  • Prise en charge de la partie exploitation (hébergement, installation et configuration serveur, workflow de développement, Git, Jenkins, etc.)
  • Développement, tests et intégration

Environnement Technique : JHipster, Javascript, AngularJS, REST, JSON, JEE, Spring MVC, Spring Data, Hibernate, SQL Server, Spring Security, Jenkins, Git, Cloud9, Docker

Novembre 2014 – Mars 2015 (5 mois)
Septembre 2013 – Octobre 2014 (14 mois)

Blue Infinity / Pictet, Genève, Suisse

Expert et Lead Technique Javascript / Angular.js

Mission : Développement de plusieurs applications business client léger (navigateur)

Fonctionnel : gestion de référentiel client, gestion de flux de documents

  • Conception de l’architecture logicielle côté interface web (Javascript, AngularJS)
  • Conception de la communication client/serveur pour des données JSON complexes (REST)
  • Développement, tests et intégration
  • Application critique et urgente livrée avec succès dans les délais et le budget

Environnement Technique : Javascript, AngularJS, REST, JSON, JEE, Spring MVC, Spring Data, Hibernate, SQL Server, Spring Security, Jenkins, Sonar, Git, SVN, Tomcat

9mp.org - Incubateur de projets, Lyon, France

Lead developer

Mission : Développement de plusieurs sites web (Jeu, chat, gestion prospect)

  • Direction, coordination et organisation
  • Encadrement et formation de 7 personnes
  • Développement et intégration, référence technique auprès des membres de l’équipe
  • Mise en place de serveurs : installation/configuration
  • Veille technologique 

Environnement Technique : Angular.js, Node.js, Jquery, HTML5, CSS3, Bootstrap, Ruby, Java, php, flash media server, windows 7, mac os X, Debian en ssh + bash en CLI pour les serveurs

Février 2012 – Juillet 2013 (18 mois)
Février 2010 – Février 2012 (24 mois)

Softeam / Société Générale SGCIB, Paris, France

Ingénieur conception et développement

Mission : Services d’agrégation de données hétérogènes

Fonctionnel : Gestion des données de pricing et des Key Process Indicators

  • Reporting hiérarchique
  • Meetings quotidiens Agile
  • Rédaction de spécifications et de documentation
  • Conception de l’architecture applicative
  • Développement et intégration

Environnement Technique : Java, EJB, JPA, Oracle, Spring, Hibernate, Swing, Web Services, Maven, Tibco (bus d’entreprise pour le parsing des KPI), JMS

IAE Sorbonne, Paris, France

Formation

Diplôme MBA

(Master d’Administration des Entreprises)
option Gestion de Projet

Septembre 2008 - Juillet 2009
Mars 2006 – Juillet 2008 (28 mois)

Cosmosbay-vectis / Sanofi-Aventis, Lyon, France

Ingénieur conception et développement

Mission : Applicatifs J2EE de gestion

  • Recueil des besoins utilisateurs
  • Assistance à la conception de l’architecture des bases de données
  • Développement, tests et intégration
  • Familiarisation avec le progiciel de gestion du groupe (SAP)

Environnement Technique : Java/J2EE, HQL, Eclipse, Oracle, SAP, Struts, Spring, Hibernate

 Sword Group / EDF, Lyon, France

Ingénieur conception et développement

Mission : Refonte d'applications en un portail web

  • Modélisation de données grâce à UML
  • Découverte de l’architecture 3-tiers et de portails Web complexes
  • Projet dynamique : pic d’effectif à 20 personnes pour 5 mois
  • Spécifications, développement, documentation et tests

Environnement Technique : Java/J2EE, JBuilder, Weblogic, EJB, MDB, JMS, Oracle, UML

Octobre 2005 - Février 2006 (5 mois)
Avril 2004 - Septembre 2005 (18 mois)

Sword Group / Ministère de l’agriculture, Lyon, France

Ingénieur conception et développement

Mission : Client lourd SIG (Système d’Information Géographique)

  • Rédaction de spécifications
  • Développement des fonctionnalités requises
  • Documentation
  • Ecriture de scénarios de tests
  • Maintenance et résolution des erreurs

Environnement Technique: Windows, Java, Swing, FOP, JBuilder, Eclipse, PowerAMC

Sword Group / Mutuelle Adrea (ex-Unio), Lyon, France

Ingénieur conception et développement

Mission : Numérisation, indexation, recherche et consultation de documents

  • Seul intervenant direct avec le client : recueil des besoins, rédaction de spécifications
  • Installation et paramétrage de progiciels de GED
  • Développements, documentation, tests

Environnement Technique : Windows, Java, VB, SQL, Kofax Capture, Filenet, SQL Server, SVN, Tomcat

Septembre 2003 - Mars 2004 (7 mois)

FORMATION

MBA (Master d’Administration des Entreprises)

option Gestion de Projet

2009

IAE Sorbonne, Paris

Le MBA couvre les problématiques de l'entreprise : législation, gestion, etc.

Diplôme d’ingénierie en informatique

option Logiciel

2002

UTBM, Belfort

Un enseignement varié et spécialisé, technique et humain

LANGUES

TEMOIGNAGES

Merci à eux pour leur feedback