Colin Guyon, Software Engineer

{ Web Full Stack / WebAssembly / UI · IHM / Embedded / IOT / Robotics }

38 years old colin.guyon@gmail.com +336 62 35 66 83 colinguyon.fr driving license
PROFESSIONAL EXPERIENCE
  • Software Engineer, simulation softwares in the medical field | InSimo 2018 - 2025 • 7 years 2 months
    • Team player in an agile environment, contributing to biomechanical simulation softwares for surgical training and education.
    • Offline-First web app with cloud synchronization, JavaScript (ES6), Electron, Vue JS, Jest, Node.js, CouchDB + PouchDB, JSON Web Token, Nginx + Lua ....
    • Online ultrasound simulator (diagnosis of COVID and other pathologies): diSplay by InSimo.
    • Performance with WebAssembly (compiled C++, running in the Web Browser) (Emscripten).
    • Python et C++, SOFA Framework (physics engine), distributed compilation, CMake, FASTBuild.
    • Git, unit testing, end-to-end testing with Playwright, continuous integration.
    • DevOps: Docker, Linux servers.
    • Bluetooth Low Energy, Web Bluetooth.
    • Occasional use of Blender 3D software.
  • Embedded Software Engineer, UI & Middleware, Linux, digital TV | Wyplay 2010 - 2018 • 7 years 6 months
    • Team player in an agile environment, working for worldwide operators: Vodafone, SFR, R, Proximus, CANAL+, SKY, AT&T ....
    • UI tech. leader / Python referent. Conception of a MVC framework and associated tools. Python apps, embedded in set-top-boxes / media-centers. Web Apps for some clients (JS / HTML / CSS).
    • Middleware development in C/C++, REST server in Python. Android: AOSP / Java / JNI / PyJnius.
    • Conception, development, maintenance of components. Code reviews, continuous integration.
    • Version control: Git and Mercurial.
  • Engineer application internship (Linux embedded, UI, digital TV) | Wyplay 2010 • 6 months

    Optimisation and enrichment of the applicative and UI/graphic framework. Embedded Linux, Python.

  • Software development internship | Ifremer (French research institute for sea exploitation) 2009 • 4 months

    Development of a data management system and aiding of underwater glider remote piloting. Python programming, JABBER / XMPP protocol, Linux.

EDUCATION
  • 2006 - 2010 Engineering school | ISEN Toulon, France (Superior Electronics and Numeric Institute)

    2nd year of preparatory class followed by the engineer curriculum, broad-based then with a strong emphasis on informatics and digital electronics. Last year: software engineering in information systems.

  • 2005 - 2006 Preparatory class | CIV, France (International Center of Valbonne)

    Mathematics, physics, chemistry and engineering sciences.

  • 2002 - 2005

    Jean Moulin High school (Draguignan, France): Scientific Baccalaureat (mathematics speciality).

SKILLS
  • Python, Cython: Used for many years. Object-oriented programming, Embedded Linux, UI, Web backend and REST server (Flask - similar to Django, SQLAlchemy, Jinja, Bottle), Kivy, ctypes, PyJnius, pytest, mock, Jupyter Notebook, Web scrapping.... Profiling, optimization, memory leaks tracking, development of tools.... Migrations of legacy Python 2 projects to Python 3.

  • C, C++: Embedded middleware, UI, microcontrolers. GDB, Valgrind ....

SKILLS (continuation)
  • Linux At work (ideally) and personal environment

  • JavaScript, HTML, CSS Embedded or desktop web apps and websites. ES6, Node.js, Express, Vue JS, React, Jest, Electron, Babel, Webpack, Stapes, Promise, lodash... and "vanilla" JavaScript

  • WebAssembly, allowing to bring C/C++ to the Web. Emscripten.

  • Java, especially Android applications

  • Graphic design and implementation of graphical user interfaces: 2D & 3D UI using Python, C, OpenGL, Web FrontEnd ...

  • SQL databases SQLite, MySQL, ... and NoSQL MongoDB, CouchDB

  • Git and Mercurial

  • Microcontrolers dsPic, Arduino and similar, ESP32 (WiPy), nRF52832 (BLE Nano v2), nRF52840... C, C++ or MicroPython.

  • Raspberry Pi (personal projects using Python / C / Cython).

  • I2C, SPI, UART, PWM, analog peripherals and sensors: accelerometer, gyroscope, light, temperature, motion (PIR), distance (IR), rotary encoder, capacitive switch, LED driver, servo drive, 7 segments display, .... Bluetooth, Bluetooth LE (low energy), Web Bluetooth.

  • PHP

  • Graphic design & 3D : Good knowledge of Adobe Photoshop. Gimp. Blender (occasional).

  • English frequently used at work. TOEIC (885 points) as well as FIRST Certificate of Cambridge (European level: B2) during my engineering curriculum.

  • Agile methodologies

SIDE PROJECTS
  • 2024

    Creation of a general-purpose temperature probe producing a graph, especially to be used in my solar oven (base: my connected thermostat for small ceramics oven created in 2020).

  • 2021 - 2025

    Ponctual improvements of my homemade wooden alarm clock / jukebox (see below)

  • 2020

    Connected thermostat (K-thermocouple, up to ~1300°C) for a small ceramics oven. Raspberry Pi Zero W, Python & Sanic Web server, Vue JS. Control and clear definition of the firing program of the ceramics with a curve, from any device (smartphone, computer...).

  • 2019

    Connected photo frame and dashboard Raspberry Pi, touch screen, Python, Kivy UI framework. Remote sensors with ESP32 microcontroller (Pycom WiPy 3), MicroPython, Bluetooth LE (low energy).

  • 2018

    Website for an agency specialized in engineering of buildings.
    JS / HTML / CSS / SVG (Front-End) & Python / Flask / Jinja2 / SQLAlchemy / SQLite (Back-End).

  • 2016 - 2017

    Creation of an interactive lamp, with brightness management depending on the position of the hand of the user. Arduino (Trinket), C/C++, infrared distance sensor, PIR motion sensor.

  • 2016 - 2017

    Creation of a wooden tactile lamp, with motion sensing. Arduino, C/C++, 3W LED and RVB LED, EEPROM.

  • 2016 - 2022

    Creation of a connected luminous alarm clock, controllable with a smartphone Android app and Bluetooth connection. Wooden casing, 3W LED, digital display, temperature and motion sensors, music player, light beats according to bass/medium/trebles (optimized calculation of FFT in C thanks to GPU_FTT), Bluetooth LE remote actions ...
    Python / C / Cython / Android native application / Raspberry Pi.
    Some components published as open source on Github (en attendant plus).
    See details on wakepiup.colinguyon.fr.

PERSONAL PROJECTS (continuation)
  • 2013

    Website for an urbanism agency: hets.colinguyon.fr. HTML, CSS, JavaScript, Python backend: Flask, SQLAlchemy, Jinja2. (Formerly habitatetsociete.fr)

  • 2010

    My new photography website: photo.colinguyon.fr. HTML, CSS, JavaScript, jQuery, AJAX & JSON, PHP 5, SQL database.

  • 2009

    Creation of a RGB lamp with dsPic microcontroller. Color change by inclination with 3-axis accelerometer, Bluetooth PC connection with a Java software: LED management depending on sound.

  • 2009

    Website for an urbanism agency: PHP, MySQL, XHTML, CSS, JavaScript, AJAX.

  • 2007

    My first photography website: colin.guyon.free.fr/photo. XHTML, CSS, JavaScript.

ENGINEERING SCHOOL PROJECTS (ISEN Toulon, France)
  • 2009 - 2010

    5th year project: Services platform for the students, Source Control Management server, mail (Zimbra), wiki, blogs... Linux environment.

  • 2009 - 2010

    Java projects, working in teams:

    IRC chat client/server (CMMI level 3, 5 persons). Java + OpenGL (JOGL) UI. Communication protocol based on serialized objects. Drawing features, web server....

  • 2009

    4th year technical project (5 persons team): realization of a Quadcopter, controlled by computer using Bluetooth. Creation of the 2D + 3D graphic interface of the control software using Java + OpenGL (JOGL). Live visualization of the orientation of the helicopter with a 3D model.

  • 2009

    Project for Junior-ISEN-Toulon: multilingual website for a winemaker, using PHP, MySQL, XHTML, CSS, JavaScript and AJAX, with an administration backoffice: client management, image gallery...

  • 2008 - 2009

    Low-level graphical optimization project. Aim: create a 2D/3D animation in C + OpenGL, then optimize it to increase the FPS as much as possible while keeping an identical rendering compared to the non-optimized version. Best project.

  • 2008 - 2009

    ISD at the students' union. Conception and realization of the association's website (PHP, MySQL, HTML, CSS, JS, AJAX).

  • 2007

    Technical project in electronics (4 persons team): realization of a heart beat meter (the usage of a microcontroller being forbidden).

  • 2007

    Technical project in informatics (4 persons team): realization in C of a fish simulation software with predators and baits. Realization of the UI using 2D + 3D OpenGL, and integration of the modules including the physic engine.

PERSONAL INTERESTS AND LEISURE ACTIVITIES
  • Photography: photo.colinguyon.fr

  • Electronic creations and DIY, design and objects creations, manual work, woodworking
    (in particular my wooden alarm clock / music jukebox: wakepiup.colinguyon.fr)

  • Windsurfing, sailing, biking, climbing

  • Sciences, Ecology, Low Tech

  • Drawing, watercolor and gouache, ceramics / pottery (beginner)

  • Music, Guitar

  • Github profile: github.com/colin-guyon