Adrien Marquès Freelance Go engineer

Go specialist crafting robust and future-proof solutions. Passionate about refactoring and architecture for long-term maintainability and flexibility. While primarily focused on Go, I also apply these skills to IoT prototypes.

Currently unavailable
Full remotePart/Full-timeGo

Find me on GitHub Malt

R-Smart

Go (lang)Go (lang)
WebWeb
RESTREST
GNU/LinuxGNU/Linux
GitGit
R&DR&D
gRPCgRPC
Micro servicesMicro services
KubernetesKubernetes
SCRUMSCRUM
DockerDocker
LoRaLoRa
MongoDBMongoDB
ArchitectureArchitecture
ChirpStackChirpStack
RefactoringRefactoring
TimescaleTimescale
AtlassianAtlassian
PostgreSQLPostgreSQL

Developed a micro-services application for LoRa device management in Smart Cities. Designed and implemented GO micro-services for bidirectional communication with LoRa devices.

Key points

  • Led major refactoring and architecture improvements
  • Migrated JS micro-services to TypeScript
  • Implemented GRPC in micro-services
  • Designed and implemented device control system
  • Created minikube development environment
  • Developed GO libraries for error handling and business transactions
  • Implemented E2E test suite

aicra

Go (lang)Go (lang)
WebWeb
RESTREST
Open-sourceOpen-source
GitGit
InkscapeInkscape

Developed a Go library to streamline REST API development, focusing on maintainability through a single configuration file approach. The library automates routing, parameter validation, permission management, and response formatting.

Key points

  • Designed a declarative API configuration system
  • Implemented automated routing and request handling
  • Integrated parameter validation and extraction
  • Developed a flexible permission management system
  • Successfully deployed in a professional medical project
  • Significantly improved development speed and API consistency

EasyCom

Go (lang)Go (lang)
RESTREST
ConcurrencyConcurrency
GitGit
Needs analysisNeeds analysis
bashbash
GNU/LinuxGNU/Linux
DockerDocker
Security/cryptoSecurity/crypto
PostgreSQLPostgreSQL
Program optimizationProgram optimization
WebsocketWebsocket
InkscapeInkscape
UI/UXUI/UX

Developed a modern web platform for remote management of medical nutrient pumps. Engineered the backend system and production environment using Go, Docker, and PostgreSQL.

Key points

  • Implemented REST and WebSocket APIs for frontend and pump communication
  • Designed and implemented medical-grade security measures
  • Achieved >80% code coverage with comprehensive testing suite
  • Established CI/CD pipelines for streamlined development and deployment
  • Developed backend APIs (1493 commits) and supporting tools
  • Created certificate management CLI tool and team development environment
  • Configured and optimized production environment

ADSBOnPED

QtQt
R&DR&D
C++C++
ConcurrencyConcurrency
GitGit
Needs analysisNeeds analysis
CSS3CSS3
bashbash
GNU/LinuxGNU/Linux
InkscapeInkscape
UI/UXUI/UX
Team LeadTeam Lead

Led the development of a multi-platform flight assistance application as project architect, managing a rotating team of 2-3 developers.

Key points

  • Architected C++ application using Qt framework
  • Implemented asynchronous event-driven message bus
  • Developed simplified SCSS engine and dynamic settings system
  • Created generic iOS windowing system
  • Designed unit test and integration framework
  • Developed interface for aircraft on-board computers

carb-sync

ArduinoArduino
C++C++
C (lang)C (lang)
ElectronicsElectronics
Open-sourceOpen-source
GitGit

Arduino-based project for motorcycle carburetor synchronization, utilizing high-resolution pressure sensors and OLED display.

Key points

  • Engineered portable, battery-powered synchronization tool
  • Implemented real-time graphical differential display
  • Integrated high-precision pressure sensors
  • Developed cost-effective solution for motorcycle maintenance

xlock

GNU/LinuxGNU/Linux
bashbash
Security/cryptoSecurity/crypto
Open-sourceOpen-source
GitGit

Utility using i3lock to lock your Linux PC without looking like it: the screen remains visible and the mouse works, but that's all. You just have to type your password then ENTER to unlock it.

Key points

  • Developed a stealth screen locking utility for Linux
  • Implemented additional security layer to prevent unauthorized unlocking
  • Used random file naming in /tmp for enhanced security
  • Gained experience in Linux system programming and security concepts

evw

ArduinoArduino
C++C++
C (lang)C (lang)
ElectronicsElectronics
Open-sourceOpen-source
GitGit

Arduino project for remote control of agricultural irrigation valves, featuring low-power controllers and network-independent communication.

Key points

  • Designed low-power remote control system for irrigation
  • Implemented multicast UDP for device-agnostic communication
  • Developed system supporting multiple independent valves
  • Created secure authentication for valve activation

EarthMap

QtQt
R&DR&D
C++C++
ConcurrencyConcurrency
GitGit
CSS3CSS3
Needs analysisNeeds analysis
InkscapeInkscape
UI/UXUI/UX

Developed a multi-platform flight assistance application for an international aeronautical company, integrating standardized aeronautical data visualization.

Key points

  • Refactored critical components to improve performance
  • Implemented new features previously deemed unfeasible
  • Led transition from SVN to Git
  • Redesigned core systems: network data fetching, weather image download, color management
  • Integrated Arinc 424 standard support
  • Optimized UI elements and data source integration

Modular box

Angular <i>(7+)</i>Angular <i>(7+)</i>
R&DR&D
ConcurrencyConcurrency
HTML5HTML5
CSS3CSS3
InkscapeInkscape
UI/UXUI/UX
TypescriptTypescript
JavascriptJavascript
AJAXAJAX
Apache CordovaApache Cordova
bashbash
GitGit
RESTREST
RPM packagingRPM packaging
Vue <i>(.js)</i>Vue <i>(.js)</i>
WebWeb
Needs analysisNeeds analysis
DockerDocker

Developed a modular system prototype for satellite internet boxes, allowing customizable features and independent development of components.

Key points

  • Built Angular frontend with modular architecture
  • Developed app store for module management
  • Created Android proof-of-concept for mobile porting
  • Implemented tools for compiling Angular components into RPM packages

clifmt

Go (lang)Go (lang)
bashbash
Open-sourceOpen-source
GitGit

Go library providing advanced layout and color support for terminal applications, implementing vt-100 standard with markdown-inspired syntax.

Key points

  • Implemented vt-100 standard for rich terminal formatting
  • Developed markdown-inspired syntax for text styling
  • Created flexible color support using hex codes or color names
  • Implemented dynamic updates using Go channels

*nix-amer

Go (lang)Go (lang)
GNU/LinuxGNU/Linux
systemdsystemd
bashbash
Open-sourceOpen-source
GitGit

Personal project in Go providing a universal format to automate Linux configuration.

The project provides a syntax to manipulate several configuration files, run commands, copy files, install programs, etc. It provides an abstraction of the most used configuration formats : nginx, yaml, ini, bash, json.

Key points

  • Developed a universal format for automating Linux configuration
  • Created abstractions for common configuration formats (nginx, yaml, ini, bash, json)
  • Implemented support for heavy task parallelization
  • Designed a tool to configure an entire Linux server with a single command

cliverage

Go (lang)Go (lang)
bashbash
Open-sourceOpen-source
GitGit

Personal project in Go allowing the visualization of code coverage in a terminal. The library exploits the vt-100 standard which allows using colors.

Key points

  • Developed a tool for visualizing code coverage in the terminal
  • Implemented vt-100 standard for color output
  • Enhanced code testing workflow with visual feedback
  • Gained experience in Go and terminal-based user interfaces

lebonprix.apk

UI/UXUI/UX
RESTREST
InkscapeInkscape
Open-sourceOpen-source
GitGit

Android application developed in Kotlin during the Master. The application serves as an interface to an API providing the prices of various goods (amazon, leboncoin, etc). Its purpose is to present a search engine that allows to visualize the price distribution of goods by categories.

Key points

  • Developed an Android application in Kotlin
  • Focused on visual part and animations
  • Integrated with a price comparison API
  • Gained experience in mobile app development and UI/UX design

pingu

Go (lang)Go (lang)
systemdsystemd
GNU/LinuxGNU/Linux
bashbash
Open-sourceOpen-source
GitGit

Small project in Go that watches services for Linux servers. When a service fails, it sends you an email with a one-time use link. Opening the link restarts the service.

Key points

  • Developed a service monitoring tool for Linux servers
  • Implemented email notifications with one-time use links for service restart
  • Used for several years on personal VPS
  • Gained experience in Go and Linux service management

api-mixer

TypescriptTypescript
RESTREST
Open-sourceOpen-source
GitGit

Node project for my Master's degree. Web service allowing to multiplex several goods selling APIs (supermarkets, amazon, etc.). The service allows you to search for a product and retrieve its details by combining several data sources.

Key points

  • Developed a web service to multiplex multiple product APIs
  • Implemented in TypeScript (Node.js)
  • Created a search functionality combining multiple data sources
  • Gained experience in API integration and TypeScript development

neuralnet (go)

Go (lang)Go (lang)
Neural NetworksNeural Networks
Deep LearningDeep Learning
Artificial IntelligenceArtificial Intelligence
Open-sourceOpen-source
GitGit

Go implementation of neural networks, inspired by 3Blue1Brown's educational series, focusing on practical understanding and efficient implementation.

Key points

  • Implemented propagation and backpropagation algorithms
  • Optimized performance with matrix operations
  • Developed clean API for neural network library
  • Gained hands-on experience in Go-based AI development

opportunistic XBee

ArduinoArduino
SocketsSockets
C++C++
ConcurrencyConcurrency
GitGit

Arduino network project in the context of my Master's degree. The goal is to design a protocol for a network of mobile nodes that interconnect to communicate with a central node. The communications are made only from neighbour to neighbour through XBee modules.

Key points

  • Designed a robust protocol for mobile node communication
  • Implemented the protocol for both nodes and central unit
  • Tested the system with spatially distributed Arduinos
  • Demonstrated protocol consistency and resilience in real-world conditions

PTUT (Master)

GitGit
Team LeadTeam Lead
RESTREST
PHPPHP
UI/UXUI/UX
Needs analysisNeeds analysis
InkscapeInkscape
AJAXAJAX
Vue <i>(.js)</i>Vue <i>(.js)</i>
JavascriptJavascript
MariaDBMariaDB
DockerDocker
WebWeb

Tutored project for my Master's degree. The subject was to provide a web-based solution for the management of the IT department (information system): teachers, classes, rooms, grades, timetables, course units and subunits, etc.

We had to replace a set of excel files used by the department chiefs to manage resources and generate schedules. The unavailability of the client was sometimes a hindrance to progress.

Key points

  • Developed a PHP backend and Vue frontend
  • Used docker-compose with a continuous integration and deployment system
  • Invested 300 hours of work in a little over 3 months
  • Successfully adopted by the department at the end of the collaboration
  • Managed challenges related to client unavailability

Douscord

R&DR&D
Vue <i>(.js)</i>Vue <i>(.js)</i>
Audio APIAudio API
ParcelParcel
DockerDocker
WebWeb
RESTREST
AJAXAJAX
Apache CordovaApache Cordova
HTML5HTML5
CSS3CSS3
JavascriptJavascript
GitGit

Advanced web development project for my Master's degree. We created in duo a Discord clone (chat and audio/video streaming platform). The challenge was not to look at the original source code.

I did the frontend part with Vue as a single-page application (SPA). We have deployed the web as well as a desktop version using Electron.

Key points

  • Achieved a visual clone of the Discord user interface
  • Implemented multi-channel management for chat and audio
  • Developed real-time chat capability
  • Created audio full-duplex streaming communication
  • Completed the project within a 1-month timeframe

go-ws

Go (lang)Go (lang)
WebsocketWebsocket
Open-sourceOpen-source
Program optimizationProgram optimization
GitGit

Research project to improve my understanding of websockets. It consists of a client and a server implementation, based on the protocol's RFC.

I conducted an optimization pass to achieve an efficient concurrent solution while remaining idiomatic to Go (channels, select).

Key points

  • Created both client and server implementations
  • Based exclusively on the websocket protocol RFC
  • Optimized for efficient concurrency
  • Maintained idiomatic Go practices (channels, select)

univ-pau-ics

PHPPHP
CSS3CSS3
bashbash
WebWeb
Open-sourceOpen-source
GitGit

Developed a system to extract university schedules from images into a format compatible with most agenda apps, using OCR technology.

Key points

  • Created a web service exposing up-to-date calendar files
  • Implemented OCR for text extraction from image-based schedules
  • Developed automatic updates for agenda applications
  • Deployed solution used by university students

neural network (php)

PHPPHP
Neural NetworksNeural Networks
Deep LearningDeep Learning
Artificial IntelligenceArtificial Intelligence
Open-sourceOpen-source
GitGit

Personal project implementing a genetic algorithm for neural network optimization to gain deeper understanding of neural network principles.

Key points

  • Developed genetic algorithm with fitness function
  • Implemented anti-regression filter, crossover, and mutations
  • Established foundation for future backpropagation implementation
  • Enhanced understanding of AI and machine learning concepts

Nuit de l'info (2017)

WebWeb
Vue <i>(.js)</i>Vue <i>(.js)</i>
WebsocketWebsocket
AJAXAJAX
HTML5HTML5
CSS3CSS3
JavascriptJavascript
bashbash
PHPPHP
UI/UXUI/UX
InkscapeInkscape
GitGit

Project achieved for the Nuit de l'info, 2017 edition. The Nuit de l'info is a national event that brings together thousands of students around the development of a project with a common topic.

Key points

  • Developed a website with PHP and Kotlin backend, and Vue frontend
  • Worked on the PHP part and the front-end
  • Won 2 silver medals in the competition
  • Gained experience in rapid development and teamwork under time constraints

LogAuth (SMMP & SATS)

PHPPHP
UI/UXUI/UX
CSS3CSS3
JavascriptJavascript
AJAXAJAX
WebWeb
Needs analysisNeeds analysis
MariaDBMariaDB
GitGit
InkscapeInkscape
RaspberryRaspberry
ElectronicsElectronics
systemdsystemd
PythonPython
GNU/LinuxGNU/Linux
bashbash
Security/cryptoSecurity/crypto
ArduinoArduino

Developed a comprehensive warehouse management and access control system for a French branch of an international logistics company. The project consists of two main components:

  1. SMMP: A web-based management interface for administrators.
  2. SATS: An embedded system on Raspberry Pi for physical access control.

Key points

  • Designed and implemented a full-stack web application (SMMP) with PHP backend and vanilla JavaScript frontend
  • Developed an embedded Linux system (SATS) with RFID authentication and real-time monitoring
  • Created a custom PCB for interfacing Raspberry Pi with RFID readers and control systems
  • Implemented a secure communication protocol between SMMP and SATS
  • Designed a flexible database model allowing easy feature additions
  • Developed a real-time access logging and monitoring system
  • Created a tool for automated deployment of SATS firmware to new Raspberry Pi units
  • Implemented a robust state machine using systemd for SATS operation

air traffic control

C (lang)C (lang)
ConcurrencyConcurrency
SocketsSockets
bashbash
GitGit

Distributed systems project for Master's degree, implementing a multicast server and clients for simulating air traffic control systems.

Key points

  • Developed multi-threaded C application with low-level socket management
  • Designed efficient communication protocols
  • Implemented multicast for optimized data distribution
  • Integrated C and Java components in a distributed environment

NxTIC

PHPPHP
WebWeb
JavascriptJavascript
CSS3CSS3
HTML5HTML5
Needs analysisNeeds analysis
GitGit

For the degree termination internship of my DUT (BTEC Higher National Diploma equivalent). I worked in collaboration with the IRIT and the CNRS for a study in sociology. The study focused on the interpersonal networks induced by the use of new communication means: smartphones, calls, sms, social networks.

The project consists of a full-stack website allowing the subjects of the study to fill in an interactive questionnaire with specific sociological tools that are difficult to represent on a traditional printed medium.

Key points

  • Developed a PHP backend and vanilla frontend (without library)
  • Analyzed the needs of the customers and provided a suitable solution in the allotted time
  • Hired for a 3-month contract after the internship to continue development of new features
  • Gained experience in sociological research tools and interactive questionnaires

face recognition

Image processingImage processing
JavascriptJavascript
Program optimizationProgram optimization
Deep LearningDeep Learning
Artificial IntelligenceArtificial Intelligence
WebWeb
Open-sourceOpen-source
GitGit

Javascript project in the context of my license. The project consists in performing treatments on an image in order to optimize the recognition of facial features by Tracking.js and jsfeat.

Key points

  • Implemented various image processing techniques for facial feature recognition
  • Used back-buffers for efficient image manipulation
  • Developed filters for brightness adjustment, contour recognition, and background removal
  • Implemented subtractive filters for soft deep learning
  • Gained experience in image processing and AI concepts

proxy ftp

SocketsSockets
C (lang)C (lang)
ConcurrencyConcurrency
GitGit

Network project developed in C for my DUT (BTEC Higher National Diploma equivalent). It is a FTP proxy that transforms passive FTP connections into active connections.

Key points

  • Developed a FTP proxy in C
  • Implemented conversion from passive to active FTP connections
  • Gained experience in network programming and FTP protocol
  • Enhanced understanding of socket programming in C

SID (IUT)

GitGit
Team LeadTeam Lead
RESTREST
PHPPHP
Needs analysisNeeds analysis
UI/UXUI/UX
InkscapeInkscape
AJAXAJAX
HTML5HTML5
CSS3CSS3
JavascriptJavascript
MariaDBMariaDB
WebWeb

Developed a comprehensive web-based information system for IT department management as part of my DUT degree project. The system handled teachers, students, exams, grades, timetables, and course units.

Key points

  • Implemented a full-stack solution with PHP backend and custom frontend
  • Designed and developed a prototype 2-level web API
  • Conducted in-depth analysis of department head's requirements
  • Applied UI/UX principles to create an intuitive user interface
  • Utilized MariaDB for efficient data management
  • Received positive feedback for meeting client expectations

Denoising.py

R&DR&D
PythonPython
Image processingImage processing
Open-sourceOpen-source
GitGit

Research project for my DUT degree (BTEC Higher National Diploma equivalent). I had to propose denoising functions in order to restore image quality after several noise levels.

Manual encoding and decoding of BMP files (raw image format). It features noising and denoising functions for: salt and pepper, Bernoulli's additive noise, gaussian additive noise, etc. It also uses convolution product in the later phase.

Key points

  • Implemented various noise and denoising functions
  • Achieved surprising results for salt and pepper and Bernoulli noises
  • Utilized convolution product for advanced denoising
  • Gained experience in image processing and Python programming

Enigmail.py

PythonPython
Security/cryptoSecurity/crypto
bashbash
GNU/LinuxGNU/Linux
Open-sourceOpen-source
GitGit

Personal research project implementing ENIGMA-like encryption and decryption principles with automated email functionality.

Key points

  • Developed ENIGMA-inspired encryption algorithms
  • Integrated automated email sending and receiving
  • Enhanced cryptography and Python programming skills
  • Explored historical encryption techniques