# Akshat Goel — Full Profile > 23-year-old software engineer who came up through motion design — founding engineer on an AI news platform, now building product tooling, interactive UI, and a public notebook on systems and recommendation algorithms. Akshat Goel is a 23-year-old software engineer who came to engineering from motion design — a path that shows up in his work's bias toward interactive, physical-feeling UI. He was a founding engineer on BNNGPT (auraone.ai), an AI-powered news streaming platform, where he shipped parallel generative-UI streaming for media and sources. His other work spans high-performance product tooling (an in-house stadium seat-layout builder), spring-physics motion playgrounds, and live hardware telemetry. He keeps a public notebook of writeups on systems and recommendation algorithms — multi-armed bandits, Netflix-style contextual Thompson sampling, and how to evaluate AI agents — and openly tracks metrics he cares about: deep-work hours, running, steps, and active energy. ## Profile - Name: Akshat Goel - Role: Software Engineer - Website: https://www.akshatgoel.com/ - GitHub: https://github.com/akshatgoel07 - X (Twitter): https://x.com/akshatgoel0 - Profiles: https://x.com/akshatgoel0, https://github.com/akshatgoel07 ## Projects ### Seat Layout Builder (2025) — engineering A high-performance, in-house seat layout builder for stadium and venue mapping — a canvas editor with curved-row geometry, a real-time seat-selection viewer, and SVG import/export — built to scale and to eliminate recurring licensing fees. - Tech: TypeScript, React, Canvas, SVG, geometry engine - Link: https://www.akshatgoel.com/internal/seat-layout-builder - Writeup: https://www.akshatgoel.com/md/internal/seat-layout-builder ### BNNGPT (2023) — engineering Founding-engineer work on an AI-powered news streaming platform; shipped parallel generative-UI streaming that renders media and sources as they arrive. - Tech: Next.js, LLM streaming, generative UI - Link: https://auraone.ai/ ### Printer Telemetry (2026) — engineering A live telemetry dashboard for a Bambu Lab A1 Mini 3D printer — real-time state, camera frames, and print history. - Tech: Next.js, Postgres, real-time telemetry - Link: https://www.akshatgoel.com/printer ### Spring Animation (2024) — design An interactive playground for spring physics in UI motion — drag, release, and tune stiffness, damping, and mass to feel how spring-driven motion behaves. - Tech: React, Framer Motion, spring physics - Link: https://www.akshatgoel.com/internal/spring-animation - Writeup: https://www.akshatgoel.com/md/internal/spring-animation ### Buzz (2024) — design A playful animation experiment — bouncy, springy, full of motion. - Link: https://buzz-geu.vercel.app ### Tech Kareer (2024) — design Logo design for techkareer.com. - Link: https://www.techkareer.com/ ### Animation Showcase (2024) — design Selected motion design and UI animation work. ### Measurability (2026) — personal A personal metrics dashboard — deep-work hours (Forest), steps and active energy (Apple Health), and weekly running volume. - Tech: Next.js, Apple Health, Forest, Recharts - Link: https://www.akshatgoel.com/measurability ## Notes ### Half Marathon Training Plan (2026) Race: DNMR half marathon, aug 9 (21.1 km). 0 days out. Progress: 23/41 sessions done · 103.78 km logged of 154.1 km planned. ## week 1 · jun 22 – jun 28 - [x] jun 22 mon — strength A. 25–30 min - [x] jun 23 tue — easy run 4 km. conversational ~9:15–9:45/km, run/walk 4:1. if you can't talk, slow down. logged: 4.83 km @ 7:23/km - [x] jun 24 wed — hills 4×60s. warm up 15 min easy, then 4×60s uphill strong, walk down to recover, cool down. logged: 4.18 km @ 7:41/km - [–] jun 25 thu — rest - [x] jun 26 fri — cross-train + strength B. aerobic 30 min low-impact - [x] jun 27 sat — long run 6 km. run/walk 4:1, easy effort. time on feet, not pace. sip water. logged: 5.66 km @ 7:49/km - [x] jun 28 sun — recovery jog 2 km. very easy shakeout. full rest if legs are trashed ## week 2 · jun 29 – jul 5 - [x] jun 29 mon — strength A. 25–30 min - [x] jun 30 tue — easy run 5 km. conversational ~9:15–9:45/km, run/walk 4:1. logged: 5.86 km @ 7:02/km - [ ] jul 1 wed — hills 5×70s. warm up 15 min, 5×70s uphill strong, walk down recovery, cool down - [x] jul 2 thu — swim + strength B. aerobic 35 min low-impact. ran intervals instead. logged: 5.16 km @ 6:27/km - [–] jul 3 fri — rest. logged: 1.99 km @ 7:09/km - [x] jul 4 sat — long run 8 km. first run on the watch, and the one that killed the pace target: strava read 10.41 km @ 6:14, the watch 8.0 @ 8:48. everything before this reads ~25% fast. logged: 8.00 km @ 8:48/km - [x] jul 5 sun — recovery jog 3 km. very easy, loosen the legs. logged: 2.13 km @ 7:04/km ## week 3 · jul 6 – jul 12 - [x] jul 6 mon — strength A. 25–30 min - [x] jul 7 tue — easy run 5 km. conversational ~9:15–9:45/km, run/walk 4:1. logged: 3.97 km @ 9:30/km - [x] jul 8 wed — hills 6×75s + downhill. jog the downhills easy and controlled — start teaching the quads. logged: 3.33 km @ 10:05/km - [ ] jul 9 thu — cross-train + strength B. aerobic 35 min low-impact - [–] jul 10 fri — rest - [x] jul 11 sat — long run 10 km. double digits. wanted to quit at 8 km, went very slow instead and finished. logged: 10.00 km @ 9:31/km - [x] jul 12 sun — recovery jog 3 km. very easy active recovery. logged: 2.27 km @ 8:47/km ## week 4 · jul 13 – jul 19 - [ ] jul 13 mon — strength A. 25–30 min - [x] jul 14 tue — easy run 6 km. conversational ~9:15–9:45/km, run/walk 4:1. logged: 6.02 km @ 9:40/km - [x] jul 15 wed — hills 6×90s + 4 downhill reps. then 4 controlled downhill reps — shorten stride, 3s control, repeated-bout effect for the quads. logged: 3.49 km @ 7:45/km - [ ] jul 16 thu — cross-train + strength B. aerobic 40 min low-impact - [–] jul 17 fri — rest - [x] jul 18 sat — long run 12–13 km, hilly. passed. agara lake, flat not hilly, 4:1 from the first km. first gel around the 1h mark, no GI trouble. last 3 km showed no fade → 21K is on. logged: 13.01 km @ 9:39/km - [ ] jul 19 sun — recovery jog 3 km. easy. reflect on how the hilly run felt — decision tomorrow ## week 5 · jul 20 – jul 26 - [x] jul 20 mon — decision: 21K or 10K. stayed with the half. no joint pain, 13 km finished fine. then strength A. strength A routine - [ ] jul 21 tue — easy run 6 km. conversational ~9:15–9:45/km, run/walk 4:1 - [x] jul 22 wed — hills + downhill emphasis. uphill repeats + several controlled downhill reps. keep building quad durability. logged: 5.44 km @ 9:17/km - [x] jul 23 thu — cross-train + strength B. aerobic 40 min low-impact. ran instead — the hardest short session of the block. logged: 3.42 km @ 8:21/km - [–] jul 24 fri — rest - [x] jul 25 sat — long run 15 km. longest ever, and the best run in the record: heart rate FELL over the back half, at a faster pace than the 13 km. fuel: banana + orange + 3 dates before, gels at 50 and 100 min. logged: 15.02 km @ 9:24/km - [ ] jul 26 sun — recovery jog 4 km. very easy active recovery ## week 6 · jul 27 – aug 2 - [ ] jul 27 mon — strength A. 25–30 min - [ ] jul 28 tue — easy run 6 km. conversational ~9:15–9:45/km, run/walk 4:1 - [ ] jul 29 wed — hills + downhill, last hard session. uphill repeats + controlled downhills - [ ] jul 30 thu — cross-train + strength B. aerobic 40 min low-impact - [–] jul 31 fri — rest - [ ] aug 1 sat — long run 17–18 km, dress rehearsal. exact race-day gear, shoes, socks, breakfast. rehearse the fuel plan as written: banana + orange + 3 dates before, then a gel every ~45 min on the walk breaks. nothing new on race day after this - [ ] aug 2 sun — recovery jog 4 km. very easy. rest fully if sore ## week 7 · aug 3 – aug 9 - [–] aug 3 mon — rest - [ ] aug 4 tue — taper: easy run 6 km. volume drops, legs recharge. keep it easy and relaxed - [ ] aug 5 wed — taper: hills 4×60s. just 4×60s uphill to stay sharp. do not overdo it — fresh legs are the goal - [ ] aug 6 thu — taper: easy 4 km + strides. easy 4 km, finish with 4–5×20s relaxed strides - [–] aug 7 fri — rest - [ ] aug 8 sat — shakeout 2 km + race prep. optional gentle shakeout. lay out bib, shoes, gels, electrolytes. eat well, hydrate, sleep early. shuttle 3:45 AM - [ ] aug 9 sun — race day — half marathon 21.1 km. flag-off 6:30 AM, report 5:30 AM. breakfast ~3h before, nothing new. 4:1 run/walk from the gun, not once tired. walk the steep ups, control the downs. 4 gels at 45 / 90 / 135 / 180 min, carry 5. start slow. cutoff 4h ## routines **strength A** — squats 3×12 · reverse lunges 3×10/leg · calf raises 3×15 · glute bridges 3×15 · plank 3×40s **strength B** — step-downs 3×10/leg (slow 3s) · bulgarian split squats 3×8/leg · single-leg calf raises 3×12 · side plank 3×30s · bird-dog 3×10 (Source: https://www.akshatgoel.com/notes/half-marathon-training) ### paper-podcast (2026) every week i save a pile of research papers i swear i'll read. i never read them. so i built a tool that reads them for me, out loud. **paper-podcast** takes any paper — a pdf, a latex source, plain text — and turns it into a two-host podcast. one host explains the paper, the other asks the dumb questions i'm actually thinking. i drop in my favourite papers and out comes something fun to listen to over the weekend: on a walk, doing the dishes, wherever. here's a sample the tool generated end to end, on the paper that started it all, *Attention Is All You Need*: