Skip to content
View iwang-1's full-sized avatar

Highlights

  • Pro

Block or report iwang-1

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
iwang-1/README.md
Ivan Wang, Software Engineer Software systems, backend engineering, and applied ML. SDE intern at AWS, summer 2026. CS B.S./M.S. at UMD, graduating May 2027. Open to Summer 2027 internships and new-grad roles.

AWS SDE Intern, Summer 2026 UMD Computer Science B.S./M.S., May 2027 Open to Summer 2027 internships and new-grad roles

Portfolio: iwang-1.github.io LinkedIn: ivanwang1 Email: ivanwang8989@gmail.com

👋 About

My recent work is centered on three systems written from scratch: a Raft key-value store, an LSM storage engine, and a vector search engine. For each one I wrote the test harness before the thing it was meant to judge.

I'm an SDE intern at AWS on EC2 Networking this summer, finishing a CS B.S./M.S. at UMD on the Departmental Honors research track, and open to Summer 2027 internships and new-grad roles. I'll relocate anywhere in the US.

Every number below comes from a benchmark committed in the repo it describes, so you can re-run it yourself. Where a result is worse than what I compared against, it's published anyway.

Outside of work I'm into mechanical keyboards: you can customize every part, and picking the right one for the job is the fun of it. I also boulder, where a problem can usually be done a lot of different ways, and working out which one costs you the least is my favorite part. And I keep up with where the industry is heading, from new hardware to how governments are handling AI.

🚀 What I built

Linearizable key-value store · Go

Raft from scratch: PreVote, ReadIndex linearizable reads, persist-before-send ordering, snapshots, a durable WAL, and a gRPC runtime.

A deterministic harness replayed partitions, crashes, message loss, delays and snapshot churn across 2.9M client operations: zero safety violations, and zero Illegal verdicts from the linearizability checker. The first bug it caught was in my own election-safety check, not in the consensus code.

Go Raft gRPC Porcupine

Crash-safe LSM storage engine · Rust

A CRC-framed write-ahead log with group commit, memtables, block SSTables with bloom filters, and size-tiered compaction. unsafe is forbidden at the crate root, so the engine has no unsafe blocks by construction.

Power loss is replayed at 330 deterministic crash points (2,640 executions) plus 160 property-based schedules: zero acknowledged-write loss, and a ~29x gain from group commit. Benchmarked against sled, which wins every matched comparison on this host. Reported rather than omitted.

Rust LSM tree group commit proptest

Vector search engine · Rust

An HNSW proximity graph and an IVF-PQ compressed index over hand-written AVX-512 distance kernels with runtime feature dispatch, for embeddings and RAG retrieval.

On 50,000 128-dimensional vectors on one core, HNSW reached 0.976 recall@10 at about 31,800 queries per second, about 33x the exact brute-force search at that recall, and 9–33x across the 90%+ recall band. The honest catch: that baseline runs in parallel across all 48 vCPU while the search runs on one, so the two sides of the ratio aren't core-for-core.

Rust HNSW IVF-PQ AVX-512

🌍 Upstream & research

4 merged CCD-data-archive

Four merged pull requests to the UMD Observatory data archive, in Python, Flask and SQLite, 50,000+ records.

open lambeq #259

One pull request open upstream, adding a LAMBEQ_MODELS_URL override for model downloads.

research Quantum NLP (FIRE)

A four-person research project, co-built and open-sourced, in DisCoPy, Qiskit, pytket and JAX. My part was dataset preparation, experiment integration, and documentation.

The ML, NLP and statistics work is on the portfolio

🧰 What I work in

Languages · Python · Java · Go · Rust · TypeScript/JavaScript · Scala · SQL · Bash

Systems, backend & testing · Raft · gRPC/Protobuf · LSM trees · PostgreSQL/SQLite · Flask/FastAPI · Node.js · JUnit 5 · Playwright

ML, NLP & research · PyTorch · Hugging Face · scikit-learn · LangChain · JAX · Qiskit · DisCoPy · pytket

Cloud & CI · AWS (EC2/VPC, SDK, CDK, CloudWatch) · Docker · Linux · GitHub Actions · Jenkins

📬 Get in touch

I'm looking for Summer 2027 internships and new-grad software engineering roles, and I'll relocate anywhere in the US. Email is the fastest way to reach me.

Email Ivan Portfolio LinkedIn

Resume on request.

Pinned Loading

  1. lodestone lodestone Public

    A vector search engine in Rust: HNSW and IVF-PQ indexes with AVX-512 distance kernels.

    Rust 1

  2. parallax-kv parallax-kv Public

    A from-scratch Raft key-value store in Go with deterministic simulation testing and linearizability checking.

    Go 1

  3. accretion-db accretion-db Public

    An LSM-tree storage engine in Rust with a crash-injection harness, write-ahead log, and group commit.

    Rust 1

  4. CCD-data-archive CCD-data-archive Public

    Forked from warnerem/CCD-data-archive

    Web archive for UMD Observatory CCD astronomy data — Python processing pipeline, SQLite + Flask backend, searchable web UI.

    HTML 1

  5. FIRE-QML-WINNERS-QNLP FIRE-QML-WINNERS-QNLP Public

    Quantum NLP sentence classification (UMD FIRE) — pregroup-grammar quantum circuits; enhanced SPSA/ADAM/genetic optimizers beat a default-gain SPSA baseline by ~30 points of train/test accuracy.

    Jupyter Notebook 1 1

  6. iwang-1.github.io iwang-1.github.io Public

    Personal site — new-grad SWE portfolio

    JavaScript 1