Hi, I'm Joshua!

I'm a software engineer at Datadog. My main interests lie in backend and systems, though I'm always exploring the rest of the tech stack. Feel free to reach out!


I'm currently working on...

  • (Cloud) Networking
  • Playing tennis
  • Learning volleyball

Coursework

  • Operating Systems: Process scheduling, synchronization, memory management, virtual memory, file systems, I/O
  • Networks: Application, transport, network, and link layers
  • Programming Languages and Translators: SLR and LR(0) parsing, LLVM, OCaml
  • Advanced Systems Programming: Implementation of Unix libraries and tools (malloc, grep, debugger, linker), I/O, containers
  • Embedded Systems: Device I/O, analog and digital interfacing, peripherals, SystemVerilog
  • Cloud Computing: Microservices, web applications, cloud APIs, CI/CD
  • Advanced Database Systems: Information extraction, data mining, OLAP
  • Artificial Intelligence: Heuristic search, adversarial search, constraint satisfaction, machine learning
  • Parallel Functional Programming: Haskell, parallelization
  • Intro to Databases: SQL, database theory, MongoDB, Neo4j, relational algebra
  • CS Theory: Turing machines, decidability, P vs. NP, CFG, regular expressions, automata
  • Fundamentals of Computer Systems: CPU architecture, MIPS, state machines, flip-flops and latches, boolean algebra
  • Advanced Programming: C, Unix, TCP and IP networking
  • Data Structures
  • Computational Linear Algebra
  • Discrete Math

Projects

  • Scanner, parser, semantics checker, and IR generator for CoBruh (with Akash and Lance). Check out this video where we explain the development process and use CoBruh to solve a Leetcode medium. We're used as an example project. (OCaml, LLVM)
  • An FPGA DJ (with Joy, Oliver, and Harrison). The FPGA performs hardware FFT and connects to a speaker. Users can play two songs simultaneously and add effects like low/high pass filtering and echo in real time. We're listed as a professor's favorite. (SystemVerilog, C)
  • A walking robot (with Jacob). See this video. (Python, CAD)
  • TCP over UDP, including three-way handshake, reliable data transfer, dynamic retransmission timeout, and connection teardown (C)
  • A Twitter bot (with Emre and Lance) that tweets every day whether the dining halls are serving jerk chicken (Python)

Internships

SWE Intern (Cloud Networks)

Summer 2023, NYC

I was in charge of migrating a previously barebones IP address management API to a new framework. In the process, I added on new features, including JSON:API-compliant requests and responses, authentication and authorization, and more comprehensive monitoring. I rewrote my team's services that called the API to take advantage of the new one. I ensured that other teams could easily migrate to it.

I met so many great interns and full-times. Truly the best summer ever.

Technologies used: Go, Kubernetes, Terraform, Postgres

SWE Intern (Ledger)

Summer 2022, Remote

I set up a background job system and wrote an API endpoint to allow other services to run jobs. I created an internal tool that called the API to transfer small amounts of crypto between accounts. This tool is used by the customer experience team to resolve an issue that previously required ledger intervention.

Technologies used: Go, AWS, Postgres, gRPC

Data Consultant Intern

May 2021 - May 2022, Remote

I took the initiative to identify inefficient tasks and write programs to streamline these errands. I worked with the technical team to implement my programs into Perfect's content management system (CMS). I oversaw product data and brand accounts in the CMS. I created slide decks and hosted demos to train new hires.

Technologies used: Python, Excel, CMS


Listen with me!