Work
Research Engineer, Reinforce Labs — Palo Alto, CA
January 2026 – Present
- Architected and built a fully autonomous, agentic red-teaming system that uses iterative LLM-driven optimization to continuously generate and refine adversarial threat models and attack objectives, eliminating manual red-teaming bottlenecks entirely.
- Designed and built a production-grade data annotation and red-teaming platform from the ground up
- Built human-in-the-loop evaluation and feedback infrastructure that drives continuous self-improvement of a multi-turn, evolutionary red-teaming agent, enabling systematic adversarial testing across a broad portfolio of target models.
- Built + maintained agent orchestration infrastructure (FastAPI, Supabase, AWS) to simulate realistic adversarial conversations against production chatbot systems, extending attack-surface coverage beyond API-only testing using Stagehand, Playwright, and Browserbase.
Software Engineer, Recommendations, Twitch/Amazon — San Francisco, CA
September 2021 – January 2026
- Accelerated new feature onboarding from 56 days to 1 week by implementing automated backfill for feature-logged historical data.
- Developed and maintained a Python library that serializes into Airflow tasks, orchestrating the training, inference, and deployment stages of ML-Ops for recommendations and the Twitch live feed.
- Implemented an offline batch transform system that deploys 1 billion+ embeddings per day by creating a Python library that leverages SageMaker Batch Transform.
- Designed and implemented a model training and deployment workflow that enables multiple deployments of a single model instance, reducing duplicate training time by 144 hours per day.
- Introduced support for 48 additional numerical features to our second-stage ranker model by creating an offline feature pipeline that processes 12 billion features per day using Glue.
- Implemented integration tests for our model development repo, enabling coverage of ~60 DAGs.
- Optimized integration tests by introducing parallelism and optimizing Spark preprocessing, reducing total time spent on integration testing and builds by 75%, from 250 hours per week down to 67 hours per week.
- Unlocked programmatic access to our model analytics tool, enabling scientists to download offline experiment data into SageMaker Notebooks for advanced visualization and in-depth analysis.
- Expanded the channel entity model by 65%, increasing catalog size from 180k to 300k channels, while reducing training time by 58% (12 hours to 5 hours) through hyperparameter optimization and model efficiency enhancements.
Software Internship, Environment and Climate Change Canada — Ottawa, ON
May 2019 – April 2021
- Added new features to CIS's existing GUI and incorporated new chart generation pipelines to give analysts insight into daily and weekly ice conditions on Canadian waters.
- Implemented PDF chart generation scripts that automate conversion of input data into standardized charts utilized by the Canadian Ice Services (CIS), reducing manual workload by 12.5 h/week.
- Developed a GUI using Python that runs calculation scripts utilized by CIS and Transport Canada to report ice conditions in Canada to the public, streamlining the process of running different scripts individually.