Raphael SKALA

Software Developer — Local-First / Systems / AI

I build software that runs on your machine, respects your data, and works offline. My focus is on local-first architectures, media processing pipelines, and developer tooling. Writing code since 2024.

Background

  • Chargé SI — JECT (Junior Enterprise EPITA)

    Member of the junior enterprise's IT team. Help administer its servers and support members; migrated the infrastructure under the IT director's supervision, documented the existing setup, and worked on deployment pipelines.

  • Student at EPITA

    Engineering program in Computer Science (École pour l'Informatique et les Techniques Avancées). Focus on systems, security, and software architecture. NDI 2025 conference speaker on Operational Security (OPSEC).

  • Started Programming

    Began writing code in 2024. Quickly gravitated toward local-first architectures, systems programming, and developer tooling. Building projects to learn by doing.

Development Philosophy

Local-First by Default

Cloud is a feature, not a requirement. Data lives on user devices. Software works offline. Sync is optional and user-controlled.

Composable Tools

Small, sharp tools that do one thing well. Pipes over platforms. CLI-first with optional web interfaces.

Boring Technology

Choose mature, well-understood tools. Go for services, Python for ML/data, SQLite for storage, standard Unix primitives.

Privacy as Architecture

Not a policy — a design constraint. No telemetry, no required accounts, no phoning home. User owns the compute and the data.

Learn by Building

Side projects as research vehicles. Each repo explores a specific problem space: video pipelines, speech translation, format conversion, agent orchestration.

Open Source First

Code lives on git.svdecoder.org. Transparent development. Community contributions welcome. No CLA required.

Vibe Coding, Own Infra

No issues with vibe coding for rapid prototyping, but I build and run the infrastructure myself — containers, deployments, monitoring, the works.

Technologies & Tools

Languages

Python C JavaScript / TypeScript HTML / CSS Shell

Infrastructure

Linux Docker SQLite Nginx systemd

Development

Neovim Git Make / CMake GDB strace

Soft Skills

Teamwork & Leadership

Led a team of 4 on EPITA-Y1-j3d, a networked two-player escape room. At JECT, I'm part of the IT team, working under the IT director and alongside the other members.

Communication

Researched and gave a live talk on OPSEC and privacy at La Nuit de l'Informatique 2025, kept accessible for a general student audience. At JECT, I documented the existing infrastructure so the team has a written reference for how it works.

Adaptability

Joined JECT with an infrastructure already in place that I hadn't built. I learned it well enough to document it and then migrate it, under the IT director's supervision.

Open Source Activity

  • Local-TikTok-Factory

    Autonomous Reddit-to-TikTok video pipeline: scrapes stories, rewrites as scripts, generates voice + subtitles, renders 9:16 MP4.

  • Local-S2S-Translator

    Real-time speech-to-speech translation (FR/EN/ES) running locally. Docker-based: mic → STT → MT → TTS → browser audio.

  • LocalConvert

    All-in-one file format converter with desktop GUI. Fully local. Documents, ebooks, images, video, audio, PDF with OCR.

  • Local-Lecture-Translator

    Upload classroom recordings, get cleaned audio + speaker-labeled transcript + chaptered summary. Fully local, GPU-accelerated.

  • LocalFitness

    Self-hosted fitness tracker: workout logging, progress charts, and a companion Android app. A tool I needed, not a skill I was building.

  • Daybook

    Private, encrypted daily journal with a companion Android app. SQLCipher at rest — your entries stay yours.

  • Uncompleted Projects
  • LocalFlix

    Self-hosted media library for movies and series. Upload, organize, and stream personal video collections from a clean web interface.

  • Local-AI-Web-Orchestrator

    Learning project: exploring how to orchestrate AI agents for complex online tasks. Still very early work in progress.

AI and Vibe coding — a student manifesto

Where I draw the line
Tools that ship versus skills that stick. The six rules below decide which projects on this site get AI and which don't.
  1. 01
    AI builds what I need, when I don't have time to build it myself.

    A fitness tracker, a daily planner — I understand how these systems work. What I don't have is the time to hand-build every tool I personally rely on. AI closes that gap. Understanding how something works and having built it yourself aren't the same thing, and I don't pretend they are.

  2. 02
    Hard problems get written by hand.

    When a project exists to teach me something — a chess engine's search algorithm, a streaming backend's architecture — I write the core myself. AI doesn't touch the part I'm trying to learn.

  3. 03
    AI improves what I've already understood.

    Once I've built something myself and know how it works, AI is fair game for extending it: new features, UI polish, refactors — the parts that don't require new understanding to add.

  4. 04
    Every project says what it is.

    The "vibe coded" / "partially vibe coded" tags across this portfolio aren't apologies — they're an accurate account of how each project was built, so you don't have to guess which skills are actually mine.

  5. 05
    Speed isn't the same as skill.

    I can ship faster with AI than I could without it. That's a statement about my tools, not my engineering ability — I track the two separately, on purpose.

  6. 06
    The line moves as I learn.

    What I "need" AI for today shrinks every time I actually master something. This is where I stand right now, not a permanent policy.

> Local inference (Ollama, llama.cpp)
> Speech models (Whisper, NLLB, Coqui TTS)
> Agent orchestration (multi-agent workflows)
> On-device ML (TensorFlow Lite, ONNX Runtime)

Interests

Computing

Retro Computing Terminal UX Unix Philosophy File Systems Boot Process

Media

Video Encoding Audio Processing Streaming Protocols Container Formats

Security

OPSEC Threat Modeling Digital Hygiene Privacy Tools

Other

Mechanical Keyboards Ergonomics Self-Hosting Home Lab Offline-First