Francis Nguyen
Portfolio · 2026 — 2027

Francis Nguyen.

Software engineer based in Mulhouse, France. 2nd year, EPITECH Programme Grande École. Building systems in C and C++, products in TypeScript, and the occasional 3D experiment in Three.js.
Available · Sept 2026 → Mar 2027 00:00:00 · Mulhouse, CET
Available

Software engineer.
2nd year at EPITECH.
Open for a part-time internship
Sept 2026 — Mar 2027.

Local time
00:00:00 CET
Location
Mulhouse, FR
Languages
FR · EN · VN · DE
Status
Available
Scroll Selected work
Act III · Selected work

Five things,
built with intent.

01 / 05 2026 · C · Systems

42sh.

An advanced Unix shell. Lexer, parser, redirections, pipes, job control — written in C from first principles. Memory discipline enforced under Valgrind.

CPOSIXLex/YaccValgrind
/dev/tty · 42sh
~/42sh $ ls -la build/
~/42sh $ echo "hello" | rev > out.txt
~/42sh $ bg %1 ; fg %2
~/42sh $ valgrind --leak-check=full ./42sh
Performance
0 leaks
02 / 05 2025 · C · VM

CoreWar.

A virtual machine and assembler for the classic program-vs-program arena. CPU-style execution engine: registers, opcodes, cycles to die. Two champions enter a shared memory; one survives.

CAssemblerBytecodeMake
CoreWar · vCPU registers
r10x00A4
r20xFF1B
r30x0040
r40x7FE2
pc0x0118
cy0x000A
live0x0002
tick0x4F2C
03 / 05 2025 · C++ · Simulation

NanotekSpice.

A digital logic simulator with tri-state values, clocked components, and a clean OO component model. Wire arbitrary gates together; tick the clock; observe propagation.

C++OOPTri-stateCLI
Logic · sample circuit
A B C D Q
04 / 05 2025 · Client · 10 weeks

Becker Chemie,
via Pink Unicorn.

Led the redesign of a Vietnamese B2B website for Becker Chemie (Germany). Rebuilt the lead-gen funnel and shipped trilingual content end-to-end in under ten weeks, coordinating daily across HCMC, Mulhouse, and Düsseldorf.

ReactNext.jsTypeScripti18n
05 / 05 2026 · 48-hour jam

EPITECH
Game Jam.

A multiplayer 3D browser game built in 48 hours. Three.js for the scene, custom Blender assets, real-time networking, and the rare satisfaction of shipping something playable before sunrise.

Three.jsBlenderWebSockets48h
Shipped in
48h
Three.js · Blender ● Live
Act IV · About

Three
languages,
one stack.

French native, English C1, Vietnamese fluent, German B1. That mix has been quietly useful — the Becker engagement ran across three time zones and three languages without translation friction.

The systems projects (42sh, CoreWar, NanotekSpice) are deliberate. C and C++ aren't on my résumé as buzzwords; they're proof I understand what's happening underneath the framework — memory, lifetimes, the shape of a process.

Outside the editor: filmmaking, 35 mm photography, classical and electric guitar. The same instinct — composition, rhythm, knowing when to hold back.

Languages
C C++ TypeScript Python JavaScript Rust SQL
Frameworks & tools
React Next.js Three.js Blender Git Docker Valgrind
Spoken
Français · Native English · C1 Tiếng Việt · Fluent Deutsch · B1
Act V · Artistic

Behind
the camera.

Click a folder to explore · Click a photo to view full-size

Act VI · Get in touch

Looking for a strong
part-time intern.

francis.nguyen@epitech.eu
GitHub
@vviet2307
LinkedIn
/francis-nguyen-epitech
Phone
+33 7 82 29 08 99
Based in
Mulhouse, France