Skills
Technical Languages
- Fluent
- Kotlin
- Python
- Java
- Go
- Ruby
- JavaScript
- Perl
- HTML5
- CSS3
- Beginner
- C
- Swift
- PHP
Frameworks and Tools
Software Processes
- Agile
- Scrum
Other Skills
- Natural Language
- English (native)
- Mandarin Chinese (beginner)
- German (beginner)
- Random
- Stand-up Comedy
- Quick Learner (given 3 days to learn Perl)
- Able to kick a basketball into a basketball hoop (may be rusty)
Experience
Software Engineer, Pendulum Systems
- Managed and implemented a complete Android app UI overhaul while collaborating with multiple stakeholders which led to a 75% increase in customer satisfaction.
- Integrated 2 machine learning models into Android app and translated NumPy/SciPy ML preprocessing steps to Java/Kotlin.
- Architected new SQLite database schema for a multiplatform app conversion and to ensure better data flow between the app and data/ML pipelines.
Software Engineer, Pex
- Owned API subsystem. Refactored subsystem and Postgres tables to reduce dependencies. Diagramed current design and planned future roadmap.
- Led multiple efforts to increase communication of an entirely remote team.
Software Engineer, Measures for Justice
- Added datatype and format detection and in-tool validation to an internal Swing app which reduced the time to configure a complex data wrangling task by 116%.
- Wrangled 13 datasets from 9 states (various criminal justice agencies and data schemas) using Kotlin.
- Implemented 11 checks to assess received data across multiple quality dimensions. Checks ranged from simple rule validation to statistical and predictive analysis.
- Built a Swing app which used reflection to dynamically generate UI forms and config-file outputs based on different Kotlin data classes.
Software Engineer I, Xerox
- Created a responsive web UI for intern project using PHP, JavaScript, and HTML/CSS. Built a Python tool that intelligently merges multiple CSV/XLSX files and generates charts for easier manual analysis.
- Ported a Python memory measurement script to BASH to avoid adding non-critical software onto an embedded device.
- Produced UI SWT screens for a new feature. Refactored legacy code utilized by this feature.
- Made team’s maven build process dynamic, fixed multiple Java UI bugs, and led an effort into improving team knowledge management.
Software Engineering Intern, Xerox
- Built an automated UI testing tool, using Python and Bash. UI testing was previously done by recording videos and counting frames. Reduced time to run UI tests by 95%.
- Implemented a user-input recording tool that generates test case files to use in automated UI testing. Used C, Python, and Bash. Reduced time to gather coordinates and create UI test cases by 99%.
Software Engineering Intern, ZipRecruiter
- Compared different RESTful resume-parsing services in order to determine the most accurate one (thanks Perl regexes!). My analysis resulted in the company making a multi-million dollar deal with the choosen parsing service. (I guess I didn't lose the company millions of dollars because they invited me back.)
- QA was having problems trouble-shooting issues because bug ticket submissions were usually incomplete. I created a bug reporting system using Perl, Catalyst, HTML, CSS, and JavaScript. This system is still in use by the company with hundreds of Fogbugz tickets created through the system every year.
- Incrementally migrated a SQL database to Redshift using a Perl script and Cron scheduling.
Website Intern, Constant Contact
- Implemented a JavaScript font-loading algorithm that resulted in a 1 second faster page load time.
- Integrated the SonarQube code quality tool into the Java Spring website's maven build process.
- Led a meeting which lead to the team adoption of Java coding standards.
Projects
Smoking Cessation - Senior Project
- A platform to help people quit smoking while their progress can be monitored by someone, like a therapist, to aid treatment.
- The platform includes a mobile application for use by the smoker and a web application for use of a treatment professional.
- My lead contributions include:
- project management
- database schema design
- requirements gathering and architecture design
- storyboarding and wireframing
- I'm also helping with the Node.js and AngularJS web application as well as the PHP API and SQL database.
Justify
- An AngularJS application that generates humorous excuse for a user-inputted situation.
- Won "Most Humorous" at the Software Freedom Day 2014 Hackathon.
- Link to Justify
AQuiz
- A web application for online quiz management, taking quizzes, and grading quizzes for professors, teaching assistants, and students. Created for Human-Centered Requirements and Design.
- My contributions:
- Created personas and their associated scenarios
- Created wireframes and was the lead of UI design, descriptions, and rationale
- Helped create a prototype using Python, Django, HTML/CSS, and SQLite
- Conducted usability testing using the "talk out loud" method and screen recording software
Duel
- An iOS game application where the user is a wizard who is dueling against another wizard.
- Gameplay is similar to rock-paper-scissors where the spells (fire/water/earth/wind) are cast by pointing your camera at an object of a specific color.
- Red casts fire
- Blue casts water
- Green casts earth
- Yellow casts wind
- I created some of the sprites and animations used in the game using Swift, UIKit, SpriteKit, and Google Drawings.
The Valley
- An open-source point and click game that simulates the absurdities of life in Silicon Valley.
- Created using Java Swing. (boyfriend's choice, but I will change it)
- Won prizes for "Best use of Humor for a Dark Subject" and "Best use of AI/Machine Learning" at the RIT MAGIC Cre8-a-t0n 2017.
Mixtery
- A web quiz game where the user has to identify a song based on a short sound clip.
- My first hackathon/side project.
- Created using Ruby, Ruby on Rails, HTML, CSS, and jQuery.
- Won a prize for "Best use of the Echo Nest API" at WicHacks 2014.
Courses
Favorite Courses
- Human-Centered Requirements and Design
- Entrepreneurship/New Venture Creation
- Cognitive Psychology
- Software Process and Project Management
- Principles of Data Mining
- Social Psychology
- Intro to Cryptography
- Biopsychology
- Industrial Organizational Psychology
- Intro to Animation
- Intro to Philosophy
Other Courses
- Other School Courses
- Intro to Computer Science
- Data Structures
- Intro to Software Engineering
- Engineering of Software Subsystems
- Software Requirements and Architecture
- Engineering of Cloud-Based Software Systems
- Engineering Fundamentals of Computing Systems
- Analysis of Algorithms
- Senior Project
- Learning Outside of School
- Intro to HTML and CSS - Udacity
- Learn HTML5 from W3C - Edx
- Intro to User Experience - Edx
Other Things I Do
- Formerly
- Tiger Tales Toastmasters
- Innovators Hour
- Phi Sigma Pi - Delta Chapter (2015 - 2017)
- Initiate Advisor, Historian, Scholarship Chair
- Society of Software Engineers
- Fundraising and Winter Ball Committees
- Women in Computing
- Head of Talks, Events Committee