|
|
@@ -0,0 +1,292 @@
|
|
|
+<%= inspect(@basics) %>
|
|
|
+<!DOCTYPE html>
|
|
|
+<html lang="en">
|
|
|
+
|
|
|
+<head>
|
|
|
+ <meta charset="UTF-8">
|
|
|
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
|
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
|
+ <title>Document</title>
|
|
|
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/8.0.1/normalize.min.css" integrity="sha512NhSC1YmyruXifcj/KFRWoC561YpHpc5Jtzgvbuzx5VozKpWvQ+4nXhPdFgmx8xqexRcpAglTj9sIBWINXa8x5w==" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
|
|
+ <style>
|
|
|
+ @import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800);
|
|
|
+ @charset "utf-8";
|
|
|
+
|
|
|
+ @-webkit-viewport {
|
|
|
+ width: device-width;
|
|
|
+ }
|
|
|
+
|
|
|
+ @-moz-viewport {
|
|
|
+ width: device-width;
|
|
|
+ }
|
|
|
+
|
|
|
+ @-ms-viewport {
|
|
|
+ width: device-width;
|
|
|
+ }
|
|
|
+
|
|
|
+ @-o-viewport {
|
|
|
+ width: device-width;
|
|
|
+ }
|
|
|
+
|
|
|
+ @viewport {
|
|
|
+ width: device-width;
|
|
|
+ }
|
|
|
+
|
|
|
+ html {
|
|
|
+ background-color: rgb(51, 73, 96);
|
|
|
+ }
|
|
|
+
|
|
|
+ * {
|
|
|
+ box-sizing: border-box;
|
|
|
+ }
|
|
|
+
|
|
|
+ body {
|
|
|
+ width: 80ch;
|
|
|
+ margin-top: 2em;
|
|
|
+ margin-bottom: 2em;
|
|
|
+ margin-right: auto;
|
|
|
+ margin-left: auto;
|
|
|
+ padding: 1em;
|
|
|
+ background-color: white;
|
|
|
+ font-family: 'Open Sans', Arial, Tahoma;
|
|
|
+ font-weight: 400;
|
|
|
+ }
|
|
|
+
|
|
|
+ ol,
|
|
|
+ ul {
|
|
|
+ list-style: none;
|
|
|
+ }
|
|
|
+
|
|
|
+ dl {
|
|
|
+ display: grid;
|
|
|
+ grid-template-columns: auto 1fr;
|
|
|
+ }
|
|
|
+
|
|
|
+ dt {
|
|
|
+ grid-column: 1/2;
|
|
|
+ }
|
|
|
+
|
|
|
+ dd {
|
|
|
+ grid-column: 2/3;
|
|
|
+ }
|
|
|
+
|
|
|
+ #basics {
|
|
|
+ display: grid;
|
|
|
+ justify-items: center;
|
|
|
+ }
|
|
|
+
|
|
|
+ #basics>h1,
|
|
|
+ #basics>h2 {
|
|
|
+ text-transform: uppercase;
|
|
|
+ }
|
|
|
+
|
|
|
+ data.name::after {
|
|
|
+ content: attr(value);
|
|
|
+ }
|
|
|
+
|
|
|
+ data.position[lang="fr"]::after {
|
|
|
+ content: 'Poste: ' attr(value);
|
|
|
+ }
|
|
|
+
|
|
|
+ data.position[lang="en"]::after {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+
|
|
|
+ dt.work_location+dd::before,
|
|
|
+ data.work_location::after {
|
|
|
+ content: '🏢 ' attr(value);
|
|
|
+ }
|
|
|
+
|
|
|
+ dt.location::after,
|
|
|
+ data.location::after {
|
|
|
+ content: '🏠 ' attr(value);
|
|
|
+ }
|
|
|
+
|
|
|
+ time::after {
|
|
|
+ content: attr(datetime);
|
|
|
+ }
|
|
|
+
|
|
|
+ li h1,
|
|
|
+ li h2,
|
|
|
+ li h3 {
|
|
|
+ font-weight: 500;
|
|
|
+ }
|
|
|
+
|
|
|
+ .achievement {
|
|
|
+ font-size: 0.6em;
|
|
|
+ }
|
|
|
+
|
|
|
+ #skills .tools::after {
|
|
|
+ content: "Outils";
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+</head>
|
|
|
+
|
|
|
+<body>
|
|
|
+ <div id="basics">
|
|
|
+ <h1><%= @basics.name %></h1>
|
|
|
+ <h2><%= @basics.label %></h2>
|
|
|
+
|
|
|
+ <dl>
|
|
|
+ <dt class="location">Lieu</dt>
|
|
|
+ <dd><%= @basics.location.city %></dd>
|
|
|
+ </dl>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div id="work">
|
|
|
+ <h1>Expériences professionnelles</h1>
|
|
|
+ <ol>
|
|
|
+ <%= for work <- @work do %> <li>
|
|
|
+ <div>
|
|
|
+ <h1><%= work.name %></h1>
|
|
|
+
|
|
|
+ <dl>
|
|
|
+ <dt class="position" lang="fr">Poste</dt>
|
|
|
+ <dd lang="fr"><%= work.position %></dd>
|
|
|
+ <dt class="start_date">Date début</dt>
|
|
|
+ <dd><time class="start_date" datetime="<%= work.startDate %>"></time></dd>
|
|
|
+ <dt class="end_date">Date fin</dt>
|
|
|
+ <dd><time class="end_date" datetime="<%= work.endDate %>"></time></dd>
|
|
|
+ <dt class="work_location"></dt>
|
|
|
+ <dd>Paris</dd>
|
|
|
+ </dl>
|
|
|
+ </div>
|
|
|
+ </li>
|
|
|
+ <% end %>
|
|
|
+ <li>
|
|
|
+ <div>
|
|
|
+ <h1>Parrot</h1>
|
|
|
+
|
|
|
+ <dl>
|
|
|
+ <dt class="position" lang="fr">Poste</dt>
|
|
|
+ <dd lang="fr">Ingénieur logiciel embarqué</dd>
|
|
|
+ <dt class="start_date">Date début</dt>
|
|
|
+ <dd><time class="start_date" datetime="2014-09"></time></dd>
|
|
|
+ <dt class="end_date">Date fin</dt>
|
|
|
+ <dd><time class="end_date" datetime="2017-05"></time></dd>
|
|
|
+ <dt class="work_location"></dt>
|
|
|
+ <dd>Paris</dd>
|
|
|
+ </dl>
|
|
|
+
|
|
|
+ <p class="summary" lang="en">
|
|
|
+ Development and architecture on Parrot's drones software (Bebop Drone, Bebop Drone 2.0, Minidrones)
|
|
|
+ </p>
|
|
|
+
|
|
|
+ <ul class="achievement">
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </li>
|
|
|
+
|
|
|
+ <li>
|
|
|
+ <div>
|
|
|
+ <h1>CEA</h1>
|
|
|
+
|
|
|
+ <dl>
|
|
|
+ <dt class="position" lang="fr">Poste</dt>
|
|
|
+ <dd lang="fr">Ingénieur chercheur</dd>
|
|
|
+ <dt class="start_date">Date début</dt>
|
|
|
+ <dd><time class="start_date" datetime="2009-11"></time></dd>
|
|
|
+ <dt class="end_date">Date fin</dt>
|
|
|
+ <dd><time class="end_date" datetime="2014-08"></time></dd>
|
|
|
+ <dt class="work_location"></dt>
|
|
|
+ <dd>Saclay</dd>
|
|
|
+ </dl>
|
|
|
+
|
|
|
+ <p class="summary" lang="en">
|
|
|
+ R&D works on PharOS, a safe embedded RTOS for automotive (now Asterios, promoted by KRONO-SAFE company), and
|
|
|
+ on safe and secure hypervision
|
|
|
+ </p>
|
|
|
+
|
|
|
+ <ul class="achievement">
|
|
|
+ <li>
|
|
|
+ <h1 lang="en">Industrialization of PharOS</h1>
|
|
|
+ <h2 lang="en">Micro-kernel porting on PowerPC and ARM embedded targets, and POSIX simulator</h2>
|
|
|
+ <h2 lang="en">Development of a dual-core version of the micro-kernel for an automotive demonstrator</h2>
|
|
|
+ <h2 lang="en">Design of a new architecture of the micro-kernel wrt portability on different hardware
|
|
|
+ targets and distribution of task scheduling (centralized or distributed)</h2>
|
|
|
+ <h2 lang="en">Participation to the CEA / KRONO-SAFE joint laboratory for the technological transfer</h2>
|
|
|
+ </li>
|
|
|
+
|
|
|
+ <li>
|
|
|
+ <h1 lang="en">Prototype of an automated memory protection system for PharOS</h1>
|
|
|
+ <h2 lang="en">PharOS implements spatial isolation of user tasks / system tasks</h2>
|
|
|
+ <h2 lang="en">On embedded targets without a MMU, this is achieved via manual configuration of a Memory
|
|
|
+ Protection Unit whose capacity is limited</h2>
|
|
|
+ <h2 lang="en">This prototype used graph theory techniques to automatize generation of code that would be
|
|
|
+ executed on context switches and ensure the spatial isolation</h2>
|
|
|
+ </li>
|
|
|
+
|
|
|
+ <li>
|
|
|
+ <h1 lang="en">Safe and secure hypervision</h1>
|
|
|
+ <h2 lang="en">Adaptation to a proprietary security-oriented hypervisor</h2>
|
|
|
+ <h2 lang="en">CEA project leader on a collaborative project of hardware / software co-design of a secure
|
|
|
+ many-core chip</h2>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </li>
|
|
|
+ </ol>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div id="skills">
|
|
|
+ <h1>Compétences</h1>
|
|
|
+
|
|
|
+ <ul>
|
|
|
+ <li>
|
|
|
+ <h1>Backend</h1>
|
|
|
+ <ul>
|
|
|
+ <li>Elixir</li>
|
|
|
+ <li>Python</li>
|
|
|
+ <li>Django</li>
|
|
|
+ <li>HTTP</li>
|
|
|
+ <li>Rest</li>
|
|
|
+ </ul>
|
|
|
+ </li>
|
|
|
+ <li>
|
|
|
+ <h1 class="tools"></h1>
|
|
|
+ <ul>
|
|
|
+ <li>Git</li>
|
|
|
+ <li>Linux</li>
|
|
|
+ <li>Python</li>
|
|
|
+ </ul>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div id="education">
|
|
|
+ <h1>Formation</h1>
|
|
|
+
|
|
|
+ <ol>
|
|
|
+ <li>
|
|
|
+ <h1>PLATO Créateurs</h1>
|
|
|
+
|
|
|
+ <dl>
|
|
|
+ <dt class="location"></dt>
|
|
|
+ <dd>Versailles</dd>
|
|
|
+ </dl>
|
|
|
+ </li>
|
|
|
+ <li>
|
|
|
+ <h1>Ecole nationale supérieure de l'Electronique et de ses Applications</h1>
|
|
|
+ <h2>Diplôme d'ingénieur, Mécatronique & Electronique Embarquée 2006 - 2009</h2>
|
|
|
+ <p>
|
|
|
+ Generalist formation in electronics : analog and digital electronics, software, signal processing, control
|
|
|
+ theory, …
|
|
|
+ Last-year specialization in « Mechatronics and Complex Systems », which has a focus on embedded systems,
|
|
|
+ system modeling and mechanics</p>
|
|
|
+ </li>
|
|
|
+ </ol>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div id="languages">
|
|
|
+ <h1>Langues</h1>
|
|
|
+
|
|
|
+ <ul>
|
|
|
+ <li>Français (langue maternelle)</li>
|
|
|
+ <li>English (fluent)</li>
|
|
|
+ <li>Português</li>
|
|
|
+ <li>Deutsch</li>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+</body>
|
|
|
+
|
|
|
+</html>
|