Matt Okner

Matt Okner

EECS @ UC Berkeley · Machine learning.

Berkeley, CA

I'm an EECS student at Berkeley working toward ML engineering. I like training models end to end and understanding the math underneath them. I recently trained a sparse mixture-of-experts language model from scratch, and I've built a real-time voice agent on top of LLMs.

Experience

Wrodium

Software Engineering Intern

InternshipJan 2026 – Mar 2026Berkeley, CA

  • Shipped a production content-synchronization pipeline that parses external URLs, diffs them against internal mirrors, and surfaces approve/reject proposals in an inline review UI
  • Designed a content refresh system on the Perplexity Deep Research API and PostgreSQL that flags stale pages and drafts revisions; refreshed pages were cited ~60% more often by AI search engines
  • Built scraping and backfill pipelines in Python and TypeScript with scheduling, retry logic, and deduplication across 500+ documents

Python · TypeScript · PostgreSQL · Perplexity API · n8n

Blockchain at Berkeley

Developer

Dev / ConsultingAug 2025 – PresentBerkeley, CA

  • Building Solidity smart contracts and on-chain development projects

Solidity · Smart Contracts · On-chain Systems

San José State University

Machine Learning Research Intern

ResearchMay 2023 – Aug 2023San José, CA

  • Trained a multilayer perceptron in PyTorch for 10-way malware family classification on 15,000+ labeled samples, reaching 91% accuracy on held-out test data
  • Engineered feature extraction pipelines converting opcode sequences, byte sequences, and byte histograms into structured model inputs

Python · PyTorch · Malware Analysis · MLP

Projects

GitHub →

miniMoE

Built · 2026

280M-param MoE LLM trained from scratch; beats GPT-2 on HellaSwag.

Python · PyTorch · DDP · tiktoken · Hugging Face

Details

A sparse mixture-of-experts language model pretrained on 10B tokens and instruction-tuned for chat. Each token runs 2 of 8 experts, so the model carries 280M parameters but spends 110M.

  • Model: 6 transformer blocks, 8 experts each, top-2 routing
  • Pretraining: 10B FineWeb-Edu tokens over 19k steps on 8 GPUs with DDP
  • Chat: Instruction-tuned on smol-smoltalk with prompt-masked loss, cutting SFT validation loss from 1.89 to 1.54
  • Result: 31.2% HellaSwag acc_norm vs 29.6% for GPT-2 124M, same harness
  • Analysis: Routing ablations show the learned router beats random routing by 6 points

Warden

Built · 2026

Policy layer for agents before tools run.

TypeScript · OpenAI Agents SDK · Node · pnpm · YAML policies

Details

Runtime guardrail for OpenAI Agents SDK tools. It checks tool names, schemas, and arguments, then allows, blocks, or asks for approval before side effects happen.

  • Tool boundary: guardTools() wraps an agent's tool array and classifies, policy-checks, and audits every call before execution
  • Policy engine: YAML risk labels with tiered argument rules: refunds under $50 auto-run, $50 to $500 need approval, over $500 are denied
  • Approvals: Fail-closed approvals via terminal, Telegram, or callback; denied on timeout
  • Audit trail: JSONL decision logs with secret redaction
  • Setup: CLI scaffolds a fully guarded starter agent

Procrastinot

ETH · 2026

USDC commitment stakes with oracle-judged evidence.

Next.js · TypeScript · Solidity · Foundry · Supabase · USDC

Details

Commitment app where users stake USDC, submit proof before a deadline, and receive a pass, retry, or forfeit outcome from an oracle.

  • Contracts: Foundry contracts for commitments, attempts, verdicts, forfeits
  • App: Next.js wallet flow for staking and evidence upload
  • Oracle: Evaluates evidence and writes pass/fail outcomes on-chain
  • Indexer: Syncs contract events into Supabase for fast reads
  • Settlement: USDC escrow with retry and forfeit paths

Sage.ai

Built · 2025

Real-time phone agent for booking, intake, and triage.

Python · Twilio · Deepgram · Anthropic API · MongoDB · WebSockets · Railway

Details

Voice AI for inbound and outbound calls where response time and reliable handoff matter.

  • Latency: Audio-in to spoken response in under 1 second
  • Transport: Twilio Media Streams over WebSockets
  • Speech: Streaming Deepgram ASR piped into the Anthropic API
  • Turn-taking: Tuned end-of-speech detection to tell a caller pausing from finishing a turn
  • Booking: Google Calendar tool calls book appointments mid-conversation without handoff
Show 4 more projects

CharCounting

Evaluations · 2026

Eval for when LLMs should stop guessing and use tools.

Python · OpenAI API · Prime Lab · Verifiers

Details

Compared GPT-4o character counting with direct reasoning versus a Python interpreter. Tool use removed the measured counting errors.

  • Baseline: 77.8% accuracy without tools on repeated or long strings
  • Tool run: 100% accuracy with a Python interpreter
  • Finding: Token boundaries cause avoidable counting mistakes
  • Harness: Reproducible eval prompts and result checks

Zetamac, but Better

Built · 2026

SwiftUI mental-math trainer with an AI coach.

Swift · SwiftUI · Anthropic API · UserDefaults

Details

Native iOS arithmetic trainer with zetamac-style drills, local history, and an AI coach that turns recent solve times into practice plans.

  • Platform: SwiftUI app for iOS 17+
  • Profiles: Local users and score history in UserDefaults
  • Coach: Anthropic-powered feedback from recent solve times
  • Drills: Zetamac-style presets by operation and difficulty
  • Stats: Tracks streaks, speed, and accuracy over time

PE Malware MLP

Presented · 2023

91% accuracy malware family classifier on 15k PE-file samples.

Python · PyTorch · NumPy · Matplotlib

Details

Static Windows PE-file classifier trained on a curated VirusTotal slice and presented at the SJSU Research Symposium 2023.

  • Model: Multilayer perceptron in PyTorch for 10-way family classification
  • Data: 15,000+ labeled VirusTotal samples
  • Features: Opcode sequences, byte sequences, and byte histograms
  • Result: 91% held-out test accuracy vs 10% chance

Smart Irrigation System

Deployed · 2022

Raspberry Pi + Flask automated garden controller.

Python · Flask · Raspberry Pi · SQLite · HTML/CSS

Details

Raspberry Pi controller that reads garden sensors, drives solenoid valves, and logs moisture data through a small Flask API.

  • Sensors: Capacitive soil probes plus temperature and humidity
  • Control: Schedule and threshold watering modes
  • Valves: Solenoid control with manual override
  • Logs: SQLite moisture and run history
  • Result: About 30% water reduction in a 200 sq ft test garden

Education

UC Berkeley

Aug 2025 – May 2028

B.S. Electrical Engineering & Computer Science

GPA 4.0 · Dean's List, College of Engineering

Coursework
  • CS 182Deep Neural NetworksFall 2026
  • CS 162Operating Systems and System ProgrammingFall 2026
  • IEOR 221Introduction to Financial EngineeringFall 2026
  • CS 189Introduction to Machine LearningA
  • EECS 126Probability and Random ProcessesA
  • CS 61CGreat Ideas of Computer Architecture (Machine Structures)A
  • CS 61BData StructuresA+
  • CS 61AStructure and Interpretation of Computer ProgramsA
  • CS 70Discrete Mathematics and Probability TheoryA+
  • EECS 16AFoundations of Signals, Dynamical Systems, and Information ProcessingA

West Valley College

Aug 2023 – May 2025

A.S. Mathematics / A.S. Data Science / A.S. Physics

GPA 4.0 · Summa Cum Laude

Coursework
  • MATH 3ACalculus IA
  • MATH 3BCalculus IIA
  • MATH 4ACalculus IIIA
  • MATH 4CLinear AlgebraA
  • MATH 4BDifferential EquationsA
  • PHYS 4APhysics: MechanicsA
  • PHYS 4BPhysics: Electricity & MagnetismA
  • PHYS 4CPhysics: Light, Heat & WavesA
  • CHEM 1AChemistry HonorsA

Contact

Email is the fastest way to reach me.

mokner@berkeley.edu