Niels Erik Nandal · AI systems engineer
Build the magic.
Keep the receipts.
I build ambitious AI products that stay legible underneath—model internals, deterministic backends, sharp interfaces, and the product loops between them.
Open to full-time AI / software engineering roles
new in the notebook → go poke a token sampler in the lab
- current
- Fractal Tech · software engineering fellow
- range
- model internals → product interfaces
- toolkit
- Python · TypeScript · PostgreSQL
01 / selected systems
Proof, not promises.
Each project is a working argument: ambitious behavior belongs above explicit contracts, deterministic cores, and interfaces that show their work.
knowledge systems
NexusProduction reading, notes, and AI workspace built around stable evidence, durable chat, and one shared resource graph
ingest → anchor → retrieve → reason
model systems
niels-gptEnd-to-end LLM pipeline from tokenizer to chat interface, laptop-first
raw text → tokenizer → transformer → chat
agent systems
Factory SimulatorMulti-agent LLM orchestration with deterministic factory scheduling simulation
interpret → schedule → validate → trace
generative interfaces
Suno Session Lab: turning clip generation into a navigable spaceTurns music generation into a navigable space, layering LLM labeling over CLAP/embedding-driven clustering and centroid-guided regeneration
generate → embed → cluster → branch
02 / operating principles
How I make hard systems hold together.
- 01
Magic above. Rigor below.
Models interpret and generate; typed contracts and deterministic systems protect the truth.
- 02
Reveal the machine.
Good interfaces expose state, lineage, and tradeoffs so a human can steer with confidence.
- 03
Readable is a feature.
Clear seams, traces, and tests make speed compound instead of turning into debt.
03 / field notes
Thinking in public.
- 01Neural Networks from Zero: Embeddings and Backpropagation
A plain-English walkthrough of a small next-note network: learned embeddings, hidden layers, logits, cross-entropy, and backpropagation.
- 02Xavier, Kaiming, and Batch Normalization Explained
Why activation scale matters, when Xavier and Kaiming initialization apply, and what batch normalization actually normalizes.
- 03Building My First Real-Time Full-Stack App
What a multiplayer Go app taught me about decomposing game logic, synchronizing state, and designing before styling.
04 / compare notes
Hard problem somewhere between a model and a real user?
I like that territory.