jdoder@root:~$ whoami

jdoder

Full-stack developer. Python / Django on the server, Flutter on the screen, and whatever hardware is on the workbench in between.

coding since age 13 base: jdoder.com status: online
about.txt — read only

No name attached to this one — just the work. What started at thirteen as messing around with scripts turned into a habit that never wore off, then a career built almost entirely on making the backend and the thing people actually touch feel like one system instead of two.

Most projects start in Django: models, APIs, the boring plumbing that has to be right before anything else matters. Then Flutter picks up the other end, turning that plumbing into something a person can hold in their hand — one codebase, phone and web both, talking to the same backend without the seams showing.

Off the clock, the projects get smaller and the wires get literal.

stack.txt

server side

  • Python, Django — models, views, templates
  • PostgreSQL, background workers, caching
  • Django admin, forms, auth & permissions
  • Multi-tenant systems

client side

  • Flutter / Dart, one codebase for iOS, Android, web
  • State management, offline-first sync
  • Custom software builds, end to end
  • Pairing Flutter clients to Django backends

languages

  • Python, JavaScript, Dart
  • C++ (Arduino), Ruby

infrastructure

  • Linux, git
  • Deploying and maintaining production services

approach

  • Backend and frontend designed together, not bolted on
  • Self-taught, thirteen years and counting
fpv

FPV drones

Building and tuning quads, then flying them through goggles at whatever speed they'll survive. Betaflight tuning, video systems, and the occasional rebuild after a hard landing.

arduino

Microcontrollers

Small electronics builds on the side — sensors, home-brew boards, and projects that exist purely because a part showed up in the mail and needed a reason to.

contact.sh

Reachable by email. Identity stays off this page — that's the deal.

output hidden until run

Address is rendered client-side on request, not printed in the page source — keeps the scrapers out.