diff --git a/index.html b/index.html index f1fa0ed..944ad7d 100644 --- a/index.html +++ b/index.html @@ -2,9 +2,9 @@ - + - CV Nicolas Marsal + Nicolas Marsal
diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000..8ff6dba Binary files /dev/null and b/public/favicon-16x16.png differ diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png new file mode 100644 index 0000000..9d7288a Binary files /dev/null and b/public/favicon-32x32.png differ diff --git a/public/favicon.ico b/public/favicon.ico index df36fcf..90fe3c7 100644 Binary files a/public/favicon.ico and b/public/favicon.ico differ diff --git a/src/assets/sheets-of-paper-a4.css b/src/assets/sheets-of-paper-a4.css index e360357..7cff6dd 100644 --- a/src/assets/sheets-of-paper-a4.css +++ b/src/assets/sheets-of-paper-a4.css @@ -10,7 +10,7 @@ /* Reflect the paper width in the screen rendering (must match size from @page rule) */ width: 21cm; /* Reflect the paper height in the screen rendering (must match size from @page rule) */ - min-height: 29.7cm; + min-height: 29.6cm; /* Reflect the actual page margin/padding on paper in the screen rendering (must match margin from @page rule) */ padding-left: 0cm; diff --git a/src/data/experiences.ts b/src/data/experiences.ts index 917d869..775ec9e 100644 --- a/src/data/experiences.ts +++ b/src/data/experiences.ts @@ -5,6 +5,7 @@ import { Ansible, Bash, Blend, + Codecept, CSHARP, DevOps, Docker, @@ -15,6 +16,7 @@ import { Gwt, Helm, HtmlCss, + Java, Jee, Jenkins, JUnit, @@ -22,10 +24,12 @@ import { Linux, Pencil, React, + ReactNative, Scrum, Skaffold, SpringBoot, Svn, + Typescript, UIAutomation, UX, WPF, @@ -36,22 +40,30 @@ const experience = (): Experience[] => { company: "Sunday", startAt: 2021, endAt: 2022, - role: "Ingénieur Logiciel Senior", + role: "Développeur Senior Full Stack", missions: [ { - description: - "Conception/Développement/DevOps pour un logiciel de déploiement d'un ERP, avec la création d'une stack dev entièrement sur cluster", - skills: [SpringBoot, React, Kubernetes], + description: "Développement d'une application B2B pour restaurateurs", + skills: [ + SpringBoot, + React, + Java, + Typescript, + Kubernetes, + Docker, + Agility, + DevOps, + ], }, { description: - "Développement d'une application de gestion de compatibilités de versions entre les modules d'un ERP", - skills: [SpringBoot, Angular, Docker, Scrum], + "Développement d'une application mobile à destination des serveurs pour le suivi des paiements", + skills: [ReactNative, SpringBoot, Kubernetes, Docker, Agility], }, { description: - "Diffuseur technique : conception, développement et utilisation d'outils de livraison en production", - skills: [Bash, Ansible, Linux], + "Mise en place de tests E2E performants, fiables et facile à écrire", + skills: [Codecept, Typescript, Agility], }, ], }, @@ -59,21 +71,29 @@ const experience = (): Experience[] => { company: "Mipih", startAt: 2017, endAt: 2021, - role: "Ingénieur Logiciel Senior", + role: "Développeur Senior Full Stack", missions: [ { description: - "Conception/Développement/DevOps pour un logiciel de déploiement d'un ERP, avec la création d'une stack dev entièrement sur cluster", - skills: [SpringBoot, Angular, Kubernetes, Helm, Skaffold, Scrum], + "Développement d'une application de déploiement d'un ERP, avec la gestion d'une stack dev entièrement sur cluster", + skills: [ + SpringBoot, + Angular, + Kubernetes, + Helm, + Skaffold, + Scrum, + DevOps, + ], }, { description: "Développement d'une application de gestion de compatibilités de versions entre les modules d'un ERP", - skills: [SpringBoot, Angular, Docker, Scrum], + skills: [SpringBoot, Angular, Scrum], }, { description: - "Diffuseur technique : conception, développement et utilisation d'outils de livraison en production", + "Support opérationnel et conception d'outils de livraison en production", skills: [Bash, Ansible, Linux], }, ], @@ -82,7 +102,7 @@ const experience = (): Experience[] => { company: "Lyra Network", startAt: 2012, endAt: 2017, - role: "Ingénieur Logiciel", + role: "Développeur Senior", missions: [ { description: @@ -94,10 +114,6 @@ const experience = (): Experience[] => { "Responsable projet : création d'un outil de déploiement d'applications et mise en place de tests sous Docker", skills: [Groovy, JUnit, Docker], }, - { - description: "Responsable Gestion de configuration du service", - skills: [Svn, Git], - }, { description: "Concepteur et développeur UX pour la plateforme de paiement", @@ -109,18 +125,13 @@ const experience = (): Experience[] => { company: "Studec", startAt: 2010, endAt: 2012, - role: "Ingénieur Logiciel", + role: "Leader Technique", missions: [ { description: "Responsable technique du projet @CERES (plateforme de LMS) avec pour mission principale la modernisation du projet", skills: [Jee, ExtJS], }, - { - description: - "Encadrement technique de l'équipe française et de l'équipe indienne", - skills: [], - }, { description: "Mise à niveau de la plateforme en JEE et de l'UX en GWT", @@ -134,31 +145,26 @@ const experience = (): Experience[] => { ], }, { - company: "SOGETI HT", + company: "Sogeti High Tech", startAt: 2006, endAt: 2010, - role: "Ingénieur Logiciel Débutant", + role: "Développeur", missions: [ { description: "UX designer sur un projet pour Dassault Aviation avec de fortes contraintes d'ergonomie et de performances", - skills: [Pencil, Blend], + skills: [Pencil, Blend, UX], }, { description: - "Conception/développement d'un framework graphique pour permettre de répondre aux contraites d'ergonomie de Dassault Aviation", - skills: [DotNET, WPF, CSHARP], + "Développement d'un framework graphique pour permettre de répondre aux contraites d'ergonomie de Dassault Aviation", + skills: [DotNET, WPF, UX, CSHARP], }, { description: "Création d'une application de tests UX automatiques avec une conception basée sur le découplage du scénario, du modèle représentant l'IHM et des données", skills: [UIAutomation, CSHARP], }, - { - description: - "Conception et développement sur un projet de R&D pour l'affichage de jeux de données complexes", - skills: [UX, CSHARP], - }, ], }, ]; diff --git a/src/data/informations.ts b/src/data/informations.ts index 7f9c01f..4e8d1ad 100644 --- a/src/data/informations.ts +++ b/src/data/informations.ts @@ -5,13 +5,11 @@ const informations = (): Information => { firstName: "Nicolas", lastName: "Marsal", title: "Développeur Sénior", - presentation: - "Développeur avec plus de 16 années d'expériences dans la réalisation de\n" + - "projets s'appuyant sur Java et son écosystème, j'ai rajouté une dimension full\n" + - "stack à mes compétences ces dernières années.\n" + - "Adepte du clean code et du refactoring, j'ai à cœur d'écrire du code de qualité\n" + - "et maintenable, si possible en pair programming.\n" + - "La communication est clé dans mes échanges avec mes pairs.", + presentation: `Développeur avec 16 années d'expériences dans la réalisation de clients lourds ou web, initialement + développeur UI, j'ai ensuite pû ajouter à mes compétences le développement de backend, et plus particulièrement le DevOps ces dernières annnées. + Adepte du software craftsmanship, j'ai à coeur de produire et maintenir un code facile à comprendre, modifier ou tester. + La communication est clé dans mes échanges avec mes pairs. + `, email: "nicolas.marsal@gmail.com", address: ["25 rue de la Moselle", "31100 Toulouse"], birthDay: new Date(1982, 11, 3), diff --git a/src/data/skills.ts b/src/data/skills.ts index eebd26a..971d76c 100644 --- a/src/data/skills.ts +++ b/src/data/skills.ts @@ -40,6 +40,7 @@ export const SpringBoot: Skill = { export const Jee: Skill = { name: "JEE", score: 26, parent: [Java] }; export const Gwt: Skill = { name: "GWT", score: 4, parent: [Java, UX] }; export const Typescript: Skill = { name: "Typescript", score: 25 }; +export const Codecept: Skill = { name: "CodeceptJS", score: 25 }; export const Javascript: Skill = { name: "Javascript", score: 19 }; export const Angular: Skill = { name: "Angular", @@ -51,6 +52,11 @@ export const React: Skill = { score: 17, parent: [Typescript, UX], }; +export const ReactNative: Skill = { + name: "React", + score: 17, + parent: [Typescript, UX], +}; export const ExtJS: Skill = { name: "ExtJS", score: 14,