React, Redux, Express, Sass, CSS, HTML, Git, Jest, Mocha, Chai, Enzyme, Cypress, ESLint, Prettier, Linux/Unix, D3, Flask, MongoDB, MySQL, PostgreSQL
Software Engineer - Human API
- Head maintainer for company's main consumer-facing web application
- Led the effort to improve web security (A+ on Mozilla Observatory) of all consumer-facing web apps
Open Source / Software Community
- Creator and maintainer
- 98 stars and 28 contributors
- Architected application to ensure reusability
- Used React Context API to manage application state
- Fostered open and encouraging community that encourages first-time contributors
- Autocomplete React component that uses render props design pattern
- Added as collaborator
- Developed feature allowing the user to disable item event handlers, added unit test, and updated documentation
- Fixed bug preventing toggle button from working properly when the user tabs to it, added unit test and integration tests
- Fixed bug causing warning to trigger at the wrong time
- Added example for integrating downshift with react-final-form
- Active in answering questions, reporting bugs, and reviewing pull requests
East Bay React Meetup
- Discuss/Teach/Learn all things React
- Creator and Organizer
- 200+ members
- Gave tech talk on React Context API for audience of 30 members
- Real-time, image-recognition, multiplayer scavenger hunt
Create or join a game with friends or strangers. Once the game starts, all players will be prompted to take a picture of something (hot dog, coffee mug, etc.). The first person to take a picture of that item, wins. Clarifai API was used for image recognition. Hasura API was used as a real-time, GraphQL server. This web app was developed with a team of 5 developers.
- Machine learning stock-picking game
Used Pandas and Scikit Learn to develop a machine learning model for each stock. This model is used to determine if/when the AI should buy/sell. Used D3 and React to plot the data and update the leaderboard. Optimized for desktop and mobile.
- Sorts/Filters job listings from Hacker News: Who is Hiring
A node app updates a MySQL database every hour with updates to the latest Hacker News: Who is Hiring post. Separately, the web app queries the MySQL database for Hacker News data when the user submits input form. The job listings are sorted by the tech the user knows and how familiar the user is with each of them. Optimized for desktop and mobile.
- Compares Yelp search results with Google Maps
Calls Yelp and Google APIs to get search result data that can be filtered/sorted by various categories. The "Yeggle" button matches up Google results to Yelp results; the Yeggle algorithm utilizes coordinates, title, and address to determine if there is a match. Optimized for desktop and mobile.