Daniel Larkin-York

I am currently working as a C++ developer with the core team of ArangoDB. We are actively developing a multi-model (Document, Graph, Key-Value) NoSQL database. In particular, I work mostly with lower-level concerns like the storage engines, caching, and performance optimizations.

I completed my Ph.D. in theoretical computer science at Princeton University under the guidance of Bob Tarjan. Before that I was at UIUC working loosely with Jeff Erickson.

My primary research interests lie in the design and analysis of data structures and graph algorithms. I am also, of course, quite interested in applications for these topics such as databases, especially high-performance, distributed NoSQL and NewSQL solutions.

I care a great deal about teaching. I make it a habit of sharing knowledge whenever I can—whether it's teaching a traditional course, giving a talk, conducting a code review, tutoring a young student, or scribbling a series of bar-napkin diagrams—and I'm always looking for more opportunities to do so.


  1. Compressing Trees with a Sledgehammer
    Daniel H. Larkin
    Ph.D. Thesis, PDF
  2. Nested Set Union
    Daniel H. Larkin, Robert E. Tarjan
    ESA 2014, PDF
  3. A Back–to–Basics Emperical Study of Priority Queues
    Daniel H. Larkin, Siddhartha Sen, Robert E. Tarjan
    ALENEX 2014, PDF — Full Version, arXiv
  4. Disjoint Set Union with Randomized Linking
    Ashish Goel, Sanjeev Khanna, Daniel H. Larkin, Robert E. Tarjan
    SODA 2014, PDF
  5. Better Approximation Algorithms for the Graph Diameter
    Shiri Chechik, Daniel H. Larkin, Liam Roditty, Grant Schoenebeck, Robert E. Tarjan, Virginia Vassilevska Williams
    SODA 2014, PDF


I do not have a fancy HTML resume prepared, but here's a PDF.