Monitoring of the devices fleet. Development of the mobile app that provides real-time monitoring of the devices (elevators, security doors) fleet. The details of each device can be displayed and it can be called (using ANEP Mobile) for further configuration.
Flutter, Dart, Google Maps (with custom clustering), BLoC pattern, TDD
[2019 / 2020]
ANEP Mobile
— ANEP
Elevator alarm configuration tool. Development of a server app that calls elevator alarm boxes to configure them. I also developed the Android application, that triggers jobs on the server to interact with the alarm boxes.
Mobile app for a file management platform. Complete rewrite of a mobile application to navigate through directories, download files and display pictures on the Solar System. The app is compatible with iOS and Android thanks to the Flutter technology.
Flutter, Dart
[2017 / 2018]
Borgward BX7
— Parrot
Car infotainment system based on Android. Development of specific apps (Tuner, Multimedia). Architecture of the communication service with the car’s contructor backend. OS tweaks to enhance the integration inside the vehicle.
Android, Java, C++, Bash
[2018]
DCP / IDConfig
— JCDecaux
Abribus management system. Django backend to manage more than 10 000 city furniture configurations. Development of a client Android Application to let the maintenance operator retrieve furniture data. Identification is done through a configurable Beacon, NFC Tag or QRCode.
Python, Django, Android, Kotlin
[2017]
AutoTune
— Arkamys
Low latency audio acquisition software. Development of a multi-channel audio acquisition software using the low latency library PortAudio. The captured audio could then be visualized on complex graphs, handling more than 96 000 dots.
C++, Qt, PortAudio
[2017]
PoudlardExpress
— Bilberry
Weeding system management on a train. Multi-threaded, real-time weeding system mounted on a train. Aggregation of various inputs to trigger nozzles opening on an automatic train:
Real-time display of the system state using the D-Bus protocol
300 ms window to analyze and trigger or not the nozzles
C++, Qt, CAN, ZeroMQ, D-BUS
[2016]
Scan3D
— Arteractive
Automatic morphology measurement software. With the input data of a Kinect Explorer, the software extracted body morphology data from analyzed slices using custom OpenGL code and OpenCV filtering.
C++, Qt, OpenCV, OpenGL, Kinect
[2016 / 2017]
Atelier 27
— Eram & Unistudio
3D printed shoe heel with a tablet configurator. A unique way of customizing a shoe heel: visualization and creation of a unique heel before printing it in live with a 3D printer.
The project was presented during the exhibition Equip’Mag in Paris mid-september 2016 and the VAD Conext in Lille mid-october 2016. Several medias covered the announce like Les Echos, Le Monde, M6, BFM TV, Europe 1, Francer Inter, France Bleue and many more.
WebGL, JavaScript, Python, Django, Android, 3D printing
[2013 - 2016]
Livetouch
— JCDecaux
Lead dev on an Android OS fork for outdoor 55" furnitures. I migrated the Android framework from the version 4.0.4 to the 4.3 (C++ and Java middleware). The Android behavior was deeply modified to match a public outdoor usage (custom app lifecycle, remote-control modules). My work also included:
Integration of peripherals : Barcode scanner, NFC, VoIP handset
Global project Architecture with Python scripting, Git workflow
Maintenance and release of a custom SDK for third-party developers
Continuous Build system with Jenkins jobs
Android, Java, C++, Git, Bash, Python
[2013]
NeuronalMind42
— Mind42
Developer of a client application to manage MindMaps. I was a user of the mind42.com website and wanted to access and edit mindmaps from my Android phone. After discussing with the owner of mind42, we agreed on a developer API and I developed and published with a friend the NeuronalMind42 Android application. It features:
Custom drawing of the mindmaps (pictures, font, colors, icons)
Full MindMaps access and edition
Offline access of MindMaps
Collaborative access to a MindMap with live updates
Android, Java
[2013]
Mobile apps for Leclerc / Crédit Agricole
— Ezeeworld
Heavy work on the mobile apps of Leclerc & Crédit Agricole. I revamped the Android Leclerc app Qui est le moins cher to update it with the latest UI guidelines. I also squashed, many, many bugs.
Java, Android, Objective-C, iOS, git
[2012 - 2013]
Solar
— Atexia Software
Lead dev of a Dropbox like product: Solar. I was involved in the development of a full backend that managed user files and virtual objects. To name a few features:
Automatic PDF conversion
Automatic generation of previews (full sized picture and PDF)
Multiple file upload
Zip download of directories
User statistics with graphs of the system usage
The system was automatically deployed with custom scripts Bash scripts and Ansible rules. I also developed a full-featured Android application with tablet support, push messaging, and maintained the iOS app.
Android OS fork maintenance to build a DECT Android Tablet Phone. The Android RIL with the GSM implementation was replaced by the DECT protocol. Heavy modifications of the Phone and Contact app to support a split view, custom UI. Implementation and integration of the accelerometer driver in the Linux Kernel.
C++, Java, Android Framework, Linux Kernel, Bash, Python, git
[2007 - 2010]
IP Camera Manager
— Wasatis
IP Camera Management system. Remote control of IP Camera for security purposes. I developed a custom motion detector using C++ and OpenCV to trigger alerts and recording on a backend. I was heavily involved in the backend development in PHP, which stored thousands of records and let the user:
Schedule periodic or one-time recordings
Navigate through recording, frame by frame or using a video player
Access remotely to the IP Cameras with a live view and perform actions (Pan, Tilt, Zoom)