tourneur.dev

Audran Tourneur

French Engineering Student in Cybersecurity

& Software Developer

Hello!
I'm a developer and cybersecurity student at Junia ISEN Lille, France.


In love with Computer Science since my young age, I like to design powerful , elegant , and secure software systems.


    As of November 2024, I am currently looking for a 6-month internship in the field of software development or cybersecurity, starting in February 2025.

My academic journey

  1. 1st year 2020-2021
  2. 2nd year 2021-2022
  3. 3rd year 2022-2023
  4. Master I 2023-2024
  5. Master II 2024-2025
  1. 1st year 2020-2021
  2. 2nd year 2021-2022
  3. 3rd year 2022-2023
  4. Master I 2023-2024
  5. Master II 2024-2025

Some of my work

Most of the projects I've built over the years are web applications and I believe I became highly proficient at it! Nevertheless, I also have experience with other lower-level technologies such as C, C++, and Rust. I also gained a strong interest in Linux, Docker, and DevOps in general to deploy my applications by myself.

In every project cited here, I was either the project leader (both administratively and technically), the technical leader, or the only developer.

Project Paysag'AE

2023
A tool requested by the French Chamber of Agriculture of the Hauts-de-France to help farmers manage their fields



This project was done in collaboration with the French Chamber of Agriculture of the Hauts-de-France. The goal was to create a tool to help farmers manage their fields. Farmers can answer questions to various quizzes and then obtain a tailored diagnostic on their installation's biodiversity. The backend is a REST API written in TypeScript with Express and a MySQL database. The frontend is a multi-page application created with SvelteKit and Bootstrap.

Gallery

Paysag'AEPaysag'AEPaysag'AEPaysag'AE
Leader
5 members
School Real-world
TypeScript TypeScriptSvelte SvelteExpress ExpressMySQL MySQLBootstrap Bootstrap

Project OkiDocky

2023-2024
A work-in-progress visual Docker orchestration system written in Rust



Docker is a widely used technology allowing system administrators to more easily run applications. However, Docker can be quite difficult to use on its own, especially for beginners.

To solve this, I, with 5 other students, are working on a tool to make Docker easier by creating an interactive visual control panel to manage Docker images, containers, volumes, and networks. The frontend uses Svelte as UI framework and the backend is written in Rust with Clickhouse as a database to create statistics. The ultimate goal of the project is to visualize and manage a Docker network's topology with a graph interface.

Gallery

OkiDocky
Leader
6 members
School Personal Work in progress
TypeScript TypeScriptSvelte SvelteRust RustClickhouse ClickhouseDocker Docker

Project Junianalytics

2023
A system to federate and analyze grades which has been used by hundreds of students of my school



Junianalytics is an applicated I developed on my own to allow students of my school to have statistics on their grades since my school does not provide them natively. Each student can opt-in to share their grades with the system, once done, all data is aggregated on a central server I control, the system then generates statistics like averages, medians, quartiles and provide each user with their global rank to help gain a clearer picture of their academic performance.

This system has then been added to Mauria, a widely used unofficial client for my school's portal used by thousands of students, available in the Play Store and in the App Store!

At the time of writing (March 2024), there has been 700 unique students who used the system at least once for a total of 100,000 grades.

Gallery

JunianalyticsJunianalytics
Solo
Personal Real-world
TypeScript TypeScriptSvelte SveltePostgreSQL PostgreSQL

Project CIRvilization

2022
A 2.5D isometric web-based city builder game à la SimCity



CIRvilization is a web-based city builder "serious game" developed by a team of 6 students over the course of a month. This is a 2.5D isometric game where the player has to manage a city by building roads, houses, work building, factories, wind turbines, nuclear powerplants... The player also needs to manage the city's budget, water and electricity production as well as the city's pollution. All 3D models have been specifically created for this project using Blender and integrated into the game using Three.js. The UI has been created with Svelte.

Gallery

CIRvilizationCIRvilization
Tech Lead
6 members
School
TypeScript TypeScriptSvelte SvelteThree.js Three.jsTailwind Tailwind

Project Junia Planning Manager

2023
A system to manage rooms and their reservations with support of user-provided plans



This project has been created by 7 students in 5 days. This is a web application which manages rooms and their reservations. It allows building administrators to upload plans of their building and allow them to define which room is available in the system by drawing countours on the plan using a built-in editor. Once the setup done, the application then allows regular users like students to explore the plan, see which rooms have already been reserved and then place reservation orders on a room within a time-frame of their choice. Technically, the D3.js library has been used to create an interactive experience with the plans. The front-end has been written in TypeScript with Svelte and the back-end is a REST API written in TypeScript with Express and a MongoDB database.

Gallery

Junia Planning ManagerJunia Planning Manager
Leader
7 members
School
TypeScript TypeScriptSvelte SvelteMongoDB MongoDBD3.js D3.jsExpress ExpressTailwind Tailwind

Project PolygonTD

2021
A tower defense game implemented in C and plain JavaScript



PolygonTD is a tower defense game developed by a team of 5 students over the course of three weeks. The game is a classic tower defense game where the player has to strategically place towers to defend against waves of enemies. One of the constraints of the project was to write a solver for the game in the C language. As such, the game is playable in the browser through a web UI but the player can get a solution by making an API call to the C solver.

Gallery

PolygonTD
Leader
5 members
School
C CJavaScript JavaScript

Project Overengineered Chat

2023
A basic chat with a full-blown monitoring setup with Grafana and Prometheus within a Docker network



This project is a web chat with a database and a powerful monitoring system. Both the front-end and back-end have been written specifically for this project. While the chat itself isn't very complex, the goal was to illustrate how to properly monitor a Node.js application and mimic a somewhat realistic production environment, configuring Prometheus, Grafana, Nginx, Postgres, and two Node.js applications to all work together within a Docker network can actually be surprisingly time-consuming, this project was meant to be a blueprint and experiment with a non-trivial production-like setup.

Gallery

Overengineered ChatOverengineered ChatOverengineered Chat
Solo
School
TypeScript TypeScriptSvelte SvelteDocker DockerPrometheus PrometheusGrafana Grafana

Project Autour Lang

2023
A toy programming language with an interpreter written in C++ able to simulate Conway's Game of Life



The goal of this project was to create a programming language with the only constraint being that the language had to be in French. This language is of course Turing-complete with support for conditional and loop statements among other things. The language is interpreted and executed in a small custom virtual machine written in C++ using the Flex and Bison tools. I also added graphical support to the language to be able to simulate Conway's Game of Life using SDL2 bindings as the ultimate proof of concept!

Gallery

Solo
School
C++ C++

Project Spline GUI

2022
Web interfaces using Three.js to explore various well-known rendering algorithms



This project is a collection of small labs in which we had to implement some of the fundamental computer graphics algorithms we normally take for granted in JavaScript using the highly versatile Three.js library. Most notably, the user can visualize and interact with the different rendering methods for Bézier curves and B-Splines curves.

Gallery

Leader
3 members
School
JavaScript JavaScriptTailwind TailwindThree.js Three.js

My skills

I know that listing a bunch of icons and names is nearly meaningless, nevertheless all techs listed here are technologies I've worked with in the past and that I can at least have a conversation about.
JavaScript
JavaScript
TypeScript
TypeScript
Node.js
Node.js
Svelte
Svelte
React
React
tRPC
tRPC
Express
Express
vite
vite
Three.js
Three.js
Socket.IO
Socket.IO
D3.js
D3.js
Pixi.js
Pixi.js
Next.js
Next.js
NestJS
NestJS
Tailwind
Tailwind
Bootstrap
Bootstrap
Java
Java
Kotlin
Kotlin
Flutter
Flutter
C
C
C++
C++
Rust
Rust
Go
Go
Linux
Linux
Docker
Docker
NGINX
NGINX
Prometheus
Prometheus
Grafana
Grafana
MySQL
MySQL
PostgreSQL
PostgreSQL
SQLite
SQLite
MongoDB
MongoDB
Clickhouse
Clickhouse
Redis
Redis
C#
C#
Godot
Godot
Python
Python
Lua
Lua
PHP
PHP
Git
Git

A few more things about me

Bilingual I do speak French and English fluently. I am the holder of both a Voltaire certificate and a TOEIC certificate.
Associative engagement I am a core member of the C2I: "Club Informatique de l'ISEN", a club aiming at promoting open source. During my missions I also gave a few courses on C and C++ to my peers.
Linux enthusiast I use Linux as my primary operating system for nearly a decade now, I went from Ubuntu to NixOS and I happen to use Archlinux right now, I like FOSS and hope to eventually make some upstream open source contribution in the future.
More projects The projects presented above are not the only thing I do! I currently maintain a multiplayer text-based RPG game with 200+ daily active users, among other things.
Chess player I used to play chess competitively when I was younger and even participated in a FIDE tournament, I eventually stopped since I preferred programming by far anyway (But I won't mind playing a game if you ask me to!)
High-spirited No matter if I'm by myself or if I work with a team, my goal has always been to build amazing stuff and keep learning new things!
Want to contact me? Please do! audran.tourneur@student.junia.com
footer