Experience
2024 — Now
2023 — 2024
2021 — 2023
2021 — 2023
• Responded to production incidents, conducted post-mortem review, instituted processes to avoid bugs. As an example, after we had two site outages caused by dynamic configuration changes, I instituted a variety of improvements to ensure it never happens again, and we haven’t had a similar outage in the year since.
• Designed and implemented a platform to perform a systematic risk assessment of DDoS vulnerability based on cache performance, rate limits, and database query cost. Identified subtle vulnerabilities that were missed during manual audit and implemented appropriate protections.
• Improved production observability: Implemented tooling for profiling production nodes and attaching a live debugger. Implemented application tracing using OpenTelemetry. Improved log collection and analysis tooling.
• Led to improve our integration testing: Surveyed engineers to identify and remedy pain points in the testing process (people won’t write tests if it’s painful), improved test execution speed, added debugging facilities for tests failed in CI, eliminated flakiness in tests.
2018 — 2021
2018 — 2021
• Designed and taught CS 110L: Safety in Systems Programming from scratch, focused on practical approaches for writing better software. Course surveys static and dynamic analysis tools for C/C++ programs, and teaches Rust as a vehicle for exploring language constructs that improve memory safety, thread safety, and correctness.
• Wrote seven programming assignments from scratch, including implementing a mini GDB, and another where students compete to implement the best load balancer (I built accompanying performance-testing infrastructure).
• Course website: reberhardt.com/cs110l; Blog post: reberhardt.com/110l-blog
• Taught CS 110: Principles of Computer Systems, focused on filesystems, concurrency, and networking. Received 4.7/5 rating on student evaluations (highest rating for this class since 2015). Website: reberhardt.com/cs110
• Developed extensive tooling to help students visualize concurrency and kernel data structures (https://cplayground.com) and wrote many autograders and code review tools
2020 — 2020
2020 — 2020
• Developed a prototype GPU-based fuzzer for embedded software that is able to achieve roughly 8x executions per second per dollar compared to libFuzzer on Google Compute Engine. Blog post: reberhardt.com/fuzzer-blog
• Isolated two bugs in clang/LLVM and one in Nvidia’s ptxas assembler, worked with upstream vendors to fix these
Education
Stanford University
Master's Degree
Stanford University
Bachelor’s Degree
Harper College
Associate's Degree
Illinois Mathematics and Science Academy