Guillaume VILLENA

Software Solution Engineer

Work Experience

  • Thales Alenia Space

    Software Solution Engineer

    Cannes, France
  • Thales Alenia Space

    Apprentice in IT, Network and Telecommunications

    Cannes, France
    • Analysis and processing of satellite data. Big Data Technologies
    • Development and improvement of internal engineering tools
    • Realisation of a cloud architecture for an existing product
  • De Monfort University

    Software engineer internship

    Leicester, United-Kingdom
    • Data analysis from sensors (gyroscope, accelerometer)
    • Development of an Android application that targeting athletic people
    • Working in collaboration with a startup (Attis Fitness)
  • Palais des festivals et des congrès de Cannes

    IT Project manager assistant

    Cannes, France
    • IT support to user (L1-L2)
    • Management of IT infrastructure
  • Thales Alenia Space

    Java development internship

    Cannes, France

    Internship at the end of the DUT
    Creation of a visualization tool for satellite tests data, written in Java.

  • DGIProject

    Clangue project

    Valbonne, France

    Co-founder and developer of a project in collaboration with teachers

    This project aim to propose an easy web platform to train them to new languages. The platform has an oral recording system, a qcm module, a written expression module and a video editing module.

    This project mainly uses HTML5 technologies
    Discover the platform


  • Engineering diploma in computer science networks and telecommunication (Master's degree equivalent)

    IMT Atlantique (ex Telecom Bretagne)

    Brest, France
    • Telecommunication: signal processing, software defined radio, digital electronics, antennas, modulations, wave propagation, filtering, ...
    • IT: network architecture, cybersecurity, programming, modeling, linux, windows, Databases, ...
    • DataScience: Big data architecture, Distributed infrastructure, distributed computing, Data analysis (NLP, AI, Machine Learning, DeepLearning), ...
    • Other topics: languages, GDPR and intellectual property awareness, project management, economics, communication ...
  • DUT in Networks and Telecommunications (2 years university diploma equivalent)

    IUT de Nice Sophia Antipolis

    Sophia Antipolis, France
    • Network: Architectures for business networks, configuration and maintenance of network hardware (Router, Switch, Wi-Fi, ...)
    • Telecommunication: Wave propagation, information coding, analog electronics, telephony (IPBX), Fiber optics
    • IT: Windows and Linux machine administration, Security, Programming


Brevet d'Initiation Aéronautique


The BIA is an introduction to scientific and technical culture of aeronautics and space


TOIEC Certification


Score of 900 pts
The TOEIC® is designed to assess the English language reading and writing skills of non-English speakers in the international business, commerce or industry environment.



FullStack Development
Linux, Kubernetes, Docker management
Java development
Low level development (C/C++)
Database management

Other skills

HTML 5 Bootstrap CSS 3 Git Java Linux PHP C/C++ Bash Python MVC Mysql PostgresSQL MongoDB Redis NPM NodeJs ReactJs Grafana Javascript TypeScript Docker Kafka Elasticsearch Influxdb Kubernetes Circuit design Software defined radio Electronics Signal processing Maven Spark Markdown Deep Learning Machine Learning Artificial intelligence


Flag French



Flag English



Flag Spanish




Some project to which I contributed

Self hosting - 2021

Self host logo

Self-hosting alternative service to GAFAM with open-source solutions

  • Setting up a Kubernetes cluster (5 nodes connected via Wireguard)
  • Implementation of monitoring
  • Setting up load balancing
  • Implemented distributed storage
  • Automated encrypted backup to object storage service
  • Personal cloud setup: Nextcloud, OnlyOffice, VaultWarden, Whoogle, PhotoPrism and more
Keywords: Nextcloud Vaultwarden Traefik K8S LongHorn

Simple OTP - 2020

Free OTP logo

Simple OTP offers via a very simplistic API, to generate and validate two-factor authentication codes on the HOTP and TOTP protocols. The implementation carried out in C is oriented for use in microcontrollers. This library is involved in the design of Solo Keys.
The implementation respects two RFCs: RFC4226 and RFC6238.

Keywords: Cryptography C Protocol RFC 4226 RFC 6238

Objets connectés - 2019/2020


There are a thousand and one ways to communicate. What if sending a message to someone you know becomes even easier? The idea of Blink is to offer via a capacitive sensor the possibility of sending a message to the person of their choice. The bracelet is however only the material part of the project. A smartphone application must be developed. Flutter framework was thus chosen. The connectivity between the smartphone and the bracelet is ensured by Bluetooth connectivity. The electronic circuit of the bracelet is designed to be very energy efficient. The processor is a chip from STMicroelectronics, which contains the firmware of the bracelet.

Keywords: PCB design SMD soldering Electronics STMicroelectronics TexasInstrument Bluetooth ZigBee

Participation Concour Kaggle - 2020

Kaggle logo
As part of a teaching unit, I participated with my group in a competition on Kaggle. It was a question of trying to determine with the tools of our choice, if a tweet in a corpus of tweet reported a danger, a disaster, an attack, ... The python scripts produced exploit the known word processing and language study techniques.
Placement of the "MCGR" team: 263/2686; Score: 0.85480
Keywords: Kaggle NLP Notebook IMT Atlantique

Color Gamut Display - 2020

Library for generating a gamut for colorimetric measurements.
Written in python with matplotlib and numpy, this allows you to compare for example the color space that each screen is able to cover in comparison with a known standard (Adobe RGB for example)
Keywords: Python Color space RGB Numpy Matplotlib

Astre - 2020

Astre Logo

This educational project, as part of a teaching unit at IMT Atlantique to touch on the issues of modeling, design, creation and development of an object.
This project is originally a response to the call for applications made by CNES for projects to be tested in micro gravity. Unfortunately Astre, the robot arm was not retained by CNES.

Keywords: 3D printing RaspberryPi 3D modeling Arduino Electronic Computer vision OpenCV Python C

MongoDB Rest API

MongoDB logo

This project offers via a web server written in NodeJs a simple REST API (CRUD) allowing to interface directly with a MongoDB database.

Keywords: MongoDB REST API NodeJs Swagger EspressJs

Template Latex pour rapport - 2020

Latex logo

Writing of a personalized Latex template for the various reports that were produced during my apprenticeship at IMT Atlantique. Usage is oriented so that one is focused on the content rather than the code allowing the formatting. Numerous commands have therefore been created to simplify the writing of documents as much as possible.

Keywords: Latex

OpenDNSUpdater - 2018

OpendDNSUpdater Logo
A free and open source Android application available on the Play Store which allows you to interface with the public DNS service of Open DNS. This application ensures that the Open DNS domain name filtering service works on mobile terminals that often change their Internet address. Its role is simple: notify and update the Open DNS account at each change of IP address.
Keywords: Java Android Play Store F-Droid OpendDNS - 2019

Docker bash
A script written in bash which uses only elementary commands (sed, find, echo, ls, ...) to generate readable documentation of a set of bash script. The output is in Markdown format and can be easily integrated later in GitHub, Jekyll, or Gitlab for consultation.
The generation of documentation can be automated if it is placed in a CI task.
Keywords: Bash Documentation Generator Markdown

Docker Bash - 2019

Docker bash

Docker is very present today and compatible with most platforms. However, it sometimes happens that Docker engine cannot run on the machine in question. If it is compatible with LXC containers, then it is possible to launch containers. But why not take advantage of Docker's flexibility and hundreds of pre-built images?
By a set of script written in bash, this project offers a possibility to do almost everything as with docker without having docker It is possible to download and launch images from the hub. To create these own images, ...
Under the hood, everything is written in bash, uses IPTables to open ports and redirect to services, a shared host file for the names of instances and local IP correspondence.
In four years of personal use, the tool has enabled approximately 20 images to function.

Keywords: Bash Docker LXC Linux Container Images

SQLite3 JDBC - Multiple Cipher - 2017

Implementation in the JDBC connector for SQLite of compatibility with encrypted SQLite databases. The use of this library remains compatible with the original library. Several encryption possibilities are available:

  • wxSQLite3: AES 128 Bit CBC - No HMAC
  • wxSQLite3: AES 256 Bit CBC - No HMAC
  • sqleet: ChaCha20 - Poly1305 HMAC
  • SQLCipher: AES 256 Bit CBC - SHA1/SHA256/SHA512 HMAC
  • System.Data.SQLite: RC4
Keywords: Java JDBC SQLite3 C/C++ Maven - 2018

This website, my portfolio, is itself a project. It is written in HTML5, Javascript, CSS. It is generated by NodeJs and Gulp. The CVs in PDF format are also self generated from the website. The information between the two media is therefore always perfectly synchronized.

Keywords: HTML5 CSS Javascript NodeJs Gulp Resume

PhoneNumberInput - Android library- 2017

Android Logo

This project provides a simple widget on Android for entering, formatting and syntax validation of phone numbers in an Android application.

Keywords: Java Android Widget Phone Library

Packet3Sous - 2017


Packet3Sous is a network simulator created during an educational project. The idea is to reproduce in a simplified way the operation of the Cisco packet tracer network simulator. The implementation of this simulator reproduces the theoretical behavior of equipment such as hubs, switches or routers. For this, the MAC, IP and Transport layers of the OSI model have been implemented.

Keywords: Java JavaFx Simulator Network IPv4 OSI Protocol DUT

Video Editor JS - 2015


Originally designed as an extension for the Clangue project, it is an application enabling simple video editing from your web browser using HTML5 technologies. The final rendering of the video is calculated on a server using the FFMPEG tool.

Keywords: Vidéo Editor HTML5 Canvas FFMpeg Bash PHP

Clangue - 2014

Clangue Logo

Platform for simplified learning of foreign languages. The platform was designed in collaboration with the language teachers of the Simone Veil high school in Valbonnes to best meet their needs. This allows continuous speaking, multiple choice questions, video editing as well as written expression. This platform has been used by more than 500 students from Simone Veil high school in Valbonnes for almost 2 years.

Keywords: PHP 5 HTML5 MySQL C++ FFMpeg Bash

DerGen - 2013

dergen.js simulation

Genetic drift simulation application written in Javascript used in high schools to replace a previous version written in flash.

Keywords: Javascript Simulation

Other Information



  • Photography (Galerie)
  • Music (drums, saxophone)
  • New Technologies
  • Travels (Europe and Honk Kong)
  • DIY (Do it yourself)
  • Electronics


Location: France


Phone number: