I am a computer vision researcher, and alongside that I'm learning to develop secure, safety-critical systems, built to be verified rather than tested. I'm also exploring secure programming, looking at how memory-safety bugs turn into exploits and how to design code that rules them out. Learned components are entering these systems, and the models, their low-level systems, and the assurance they work correctly are usually held by different people. I want to be an engineer who can be trusted with all three.
Some of these I work in, some I'm learning my way into. All of them shape how I think about building software.
| Paradigm | Languages | Context | Drawn to |
|---|---|---|---|
| Systems | Rust, Zig, C, C++, Ada | Professional, Personal | Ownership, type-level invariants, allocator discipline, compile-time composition |
| Security | x86‑64 asm, ARM64 asm | Personal | How memory-safety bugs turn into exploits, and code that rules them out |
| Functional | Haskell, Scala, Elixir, Nix | Personal | Effect tracking, algebraic data types, totality checking |
| Verification | Lean 4, Verus, TLA+ | Personal | Machine-checked specifications, model checking, proofs that hold for all inputs |
| Research | Python, Swift, LaTeX | Professional, Academic | Computer vision, AR/XR, benchmarking, failure modes |
| GPU | CUDA, Vulkan, GLSL | Professional, Academic | Synthetic dataset creation, deep/machine learning |
- Hierarchical Instance Tracking to Balance Privacy Preservation with Accessible Information. WACV 2026. paper
- SPIN: Hierarchical Segmentation with Subpart Granularity in Natural Images. ECCV 2024. paper
- Interpreting COVID Lateral Flow Tests' Results with Foundation Models. CVPR Workshops 2024. paper
- Salient Object Detection for Images Taken by People with Vision Impairments. WACV 2024. paper