I'm an MIT-trained software engineer and aspiring product manager with experience in data science, software engineering, and product development across four countries.
Currently, I am the sole maintainer of Tab Snooze, a Chrome extension with 3,000 active users and a 4.8-star rating.
Most recently, I shipped enterprise features for security analysts including role-based access control workflows, cross-client usability, and export pipelines (TruU.ai). Previously, I took a blank-slate dashboard from loose requirements to delivery (SkillLab), automated and improved simulations for hotel bookings (FLYR), independently led a research project on AI deception (MATS), and built a streaming pipeline that surfaced data monitoring gaps in site reliability (Tableau).
I value deep understanding, intentionality and quality, proactive problem-solving, and emotional intelligence. These values lead me to write legible code, provide detailed documentation of my work, be a proactive and direct communicator, ask important questions, and invest in my growth during the process.
As someone who values code quality, I've initiated conversations about improving git practices and provided thorough code reviews colleagues appreciate. At both SkillLab and FLYR, I wrote detailed documentation and onboarded the next person before I left because I believe good work includes a smooth handoff. While I recognize the futility of perfectionism in a fast-paced software engineering environment, I appreciate intentional and agreed-upon trade-offs for technical debt and good code quality.
My former manager at Tableau once told me that my questions helped him understand the purpose of his own team. My curiosity and inclination towards understanding helps ensure that teams are solving the right problem.
I took ownership of de-duplicating and centralizing authentication code because duplicate authentication logic makes core infrastructure fragile and difficult to maintain. A lot of the problems I catch came from trying to understand something. I believe in surfacing problems early because an ounce of prevention is worth more than a pound of cure.
I've helped facilitate a consensus on a contentious and long-standing disagreement on COVID policies in my house by listening to each person's needs and finding common ground. I've invested significant time and attention in growing my emotional intelligence and maturity — whether through the MIT Gordon Engineering Leadership Program, running and contributing to meetings in houses and clubs, exposing myself to many cultures interning in 3 foreign countries after graduating, and more. I still see growing this dimension as a work in progress. At one job, I pushed hard for Friday lunch and learns because I genuinely believed the team would benefit, and I'm still calibrating when it makes sense to advocate and how to do it with more intentionality.
November 2025 - February 2026 | San Francisco Bay Area, CA
Shipped enterprise features for security analyst workflows. Architected async CSV export pipeline for security logs using Python, Celery, Docker, and AWS S3 for enterprise-scale offline analysis. Implemented role-based access control to restrict write endpoints to assigned administrators while preserving read access for analysts. Built a cross-client event mapping system for Gmail, Teams, and Outlook to enable threat investigation across multiple enterprise clients simultaneously. Eliminated 100+ lines of duplicate JWT authentication code by refactoring into reusable middleware decorators across all route modules.
June 2024 - August 2024 | Berkeley, CA
Researched and trained unsupervised steering vectors to reduce deceptive behavior in LLMs using PyTorch. Analyzed 4,800+ steering vectors to categorize response types and found poor generalization across prompt contexts.
January 2024 - April 2024 | Copenhagen, Denmark
Researched and designed Cisco ISE API integration for Muninn AI Prevent to enable automated threat blocking. Parsed Linux command outputs in Java Spring Boot to surface Ubuntu version for network devices, shipped to production with edge case handling for startup and shutdown. Fixed 50+ broken test cases for a major Spring Boot version 1 to version 2 upgrade.
September 2023 - December 2023 | Amsterdam, Netherlands
Designed and built client usage dashboard in Power BI and Google Looker from scratch, incorporating feedback from multiple stakeholders; adopted by the customer success and business teams. Refactored client report generator into a config-driven system using Python, SQL, and Postgres enabling parameterized delivery; praised by the customer success team for rapid turnaround on client-requested reports. Built a webscraping tool to collect hundreds of career development programs, eliminating hours of manual data collection. Proactively proposed and presented my work to the company as one of the few interns to do so. Organized a meditation event, interns lunch, and 1-1s to get to know coworkers.
June 2023 - September 2023 | London, United Kingdom
Orchestrated an end-to-end Python pipeline automating hyperparameter selection, simulation execution, and evaluation of agent-based models on real hotel booking data, improving some metrics by 50%+. Demonstrated viability of agent-based models to create digital twins of hotel guests. Inherited an undocumented legacy codebase; authored comprehensive technical documentation and onboarded a team member to continue the work.
May 2022 - August 2022 | Seattle, WA
Built an Apache Flink streaming pipeline in Java to parse application logs and compute availability metrics for Tableau Online, outputting millions of standardized events to Snowflake as part of a Salesforce infrastructure migration. Revealed the replacement pipeline missed entire URL categories and the legacy pipeline dropped high-latency requests by analyzing access logs across production pods using Python.
May 2020 - August 2020 | Remote
Automated detection of news bias with natural language processing. Released Python packages for news processing tools. Created visualizations of topic distributions using statistical procedures like PCA and performed data cleaning to improve classification accuracy.
A Python package with tools for extracting dates, determining if a URL is a news article, and more!
June 2017 - August 2017 | Remote
Redesigned user interface of helicopter remote control app prototype, and iterated based on user testing. Shipped to Google Play Store; reached 50,000+ downloads and a 4.5/5 star rating.
Completed eight-course program covering Python, Linux, SQL, SIEM tools, and Intrusion Detection Systems. Gained competency in identifying cybersecurity risks, threats, vulnerabilities, and mitigation techniques.
Qualified for Country to Country cybersecurity main round tournament, competing with students worldwide.
Completed 10-day intensive bootcamp on AI Safety covering transformers, RLHF, interpretability, governance. Implemented transformer architecture, DQN and A2C RL frameworks in PyTorch.
Attended AI Safety talks and networked with gender minority aspiring AI Safety researchers. Participated in technical discussions on alignment research directions.
Selected for competitive leadership development program focused on effective engineering team leadership, teamwork, and communication skills in industry contexts.
Forked and restored Tab Snooze by fixing a CSS issue and upgrading to Chrome Manifest v3. Upgraded from React 16 to React 18 to improve performance and leverage modern framework features. Diagnosed a chronic duplicate-tab bug (tabs opening 2-5x) by tracing root causes to concurrent wakeup calls and duplicate alarm listeners; resolved with an in-memory mutex and Service Worker context guard. Incorporating new feature requests from users such as snoozing windows and importing/exporting tabs. Maintained a 4.8-star rating across 3,000 active users as core solo developer. See Github repo here.
Only todo list I know of that estimates whether you can meet your deadlines on time given your schedule and life needs. Grabs empty time slots on your calendar and subtracts estimated time it takes to finish tasks so you know if you actually have too many things to do. Built with React JS and Google Firebase. See Github repo here.
Used OpenCV to detect an object (gear, box, reflective tape) and calculate the distance and angle to the object. See Github repo here.
A selective blocker to hide notifications, chat, and news feed for a focused Facebook experience. (Unfortunately, it got taken down by Facebook for using "FB" in "FBlocker.") See Github repo here.
Co-organized a 20-person unconference focused on tackling life challenges. Managed full event lifecycle from marketing to feedback collection. Both venue managers and participants found that the event ran smoothly.
Built and maintain virtual community for productivity accountability. Organized text and voice channels, customized Pomodoro bots on Heroku, and continuously incorporate member feedback.
Created programs for career impact and ethical reflection. Coordinated 8-week fellowship with 20+ fellows and 10 facilitators. Collaborated with Yale, Stanford, Brown, CMU to improve operations and host intercollegiate events.
Supported students in Econometrics, Multidimensional Statistics, and Intro to Inference by teaching statistics and probability. Helped Econometrics student pass after professor estimated 1/5 chance of success.
Led book clubs on Radical Markets, Nudge, and Jump-Starting America to foster awareness of real-world economics applications. Organized professor and author guest speaker Q&A sessions.
Founded campaign that successfully lobbied Cupertino City Council to pass building codes phasing out fossil fuels. Wrote and delivered speeches at city council meetings, achieving tangible policy change.
Email: hello [at] emilyf.com
LinkedIn: linkedin.com/in/iamef/
Github: github.com/iamef
Anonymous Comments Form: https://forms.gle/4KFD4Kd9zrUd6xRh8