[ ok ] mounted · /portfolio
[ ok ] tls 1.3 · handshake · 28ms rtt
[ ok ] 7 services · online · 0 degraded
$→ connected · tls 1.3 · 28ms
software
engineer.
i'm chris. i build software end-to-end. backend, frontend, infra, the bits in between. i like systems that have to keep working, interfaces that don't get in the way, and shipping the whole thing. open to engineering roles across the stack.
$ curl -w "%{time_total}" http://localhost:8000/xK4mP2v
◉
client
0 ms
π
fastapi
—
▤
postgres
—
◆
redis
—
↩
response
—
└──→ celery worker → postgres (async, non-blocking)
x-request-id: req_———
total: — ms · pending
02 / shell
type something. it's a real terminal.
Last login: just now from your browser
● connected to chrisprem.xyz · tls 1.3 · 28ms
type help to see what's here, or click a suggestion below.
visitor@chrisprem.xyz:~$
03 / systems
each project is a real system. click around.
client
browser / curl
fastapi
api
sqlite
db
drag any node ⤤
04 / observability
last 60 days. the boring chart is the point.
chrisprem.xyz · synthetic monitoring
one tick per day. green = within slo. amber = degraded. red = page paged me. one incident in 60 days; 4m23s to recovery. write a postmortem, ship the fix, move on.
60 days ago100.00% uptime · 3m12s mttr · 0 incidenttoday
→ zoom in: latency globe05 / contact
the contact form is an api. obviously.
POSThttps://api.chrisprem.xyz/contactv1 · stable
request body
response
▸ click "send request" to fire a real-feeling POST.
this is what hitting my actual /contact endpoint looks like.
no email leaks; nothing stored. the affordance is the point.