Senior Web Developer with a bias towards React, Typescript, Apollo (GraphQL), and PostgreSQL.
Strongly passionate about maximizing the quality of user interaction and engagement by merging a refined UI aesthetic with the most current best-practices of the tech ecosystem.
Creator and maintainer of Swiftsheet.app
Node.js, Express, MongoDB, Mongoose, SQL (PostgreSQL, MySQL), Sequelize, express-graphql, JWT
ESLint, Prettier, Jest, Jasmine, PM2, NGINX, Git, Travis CI, Snyk, Nodemon, Bash, Zsh, DataGrip, Mongo Compass, Adobe Creative Suite
Having a well calibrated editor is paramount to productivity, so as use-cases become more niche, it’s nice to be able to pull in extensions to help boost quality of life. Luckily, VS Code vibrant extension community with single-click installs makes this super easy.
tmux lets you tile window panes in a command-line environment. This, in turn, allows you to run and keep an eye on multiple programs within one terminal. This guide will go through the installation and basic usage of tmux to get you up and running.
Just because you are using a command line editor does not mean you should have to do a time warp back to the days of green screen CRTs. This guide will walk through the process of setting up Vim to achieve a more Sublime-like experience.
Jan 2021 - present
▸ Worked as a full-stack developer on Spatial Composer, a 3D mapping software targeted towards urban planners and architects using React, Mapbox, Three.js, Express, and Postgres.
▸ Refactored legacy Redux code to remove non-serializable data, duplicate data entries/dispatches and configured Redux Dev Tools.
▸ Migrated application to Auth0 Universal login in a full-stack refactor, and in the process resolved security issues related to user switching.
▸ Configured individualized role-based SSH jump box account to prevent shared admin account being used for connecting to the database.
▸ Provided guidance on incorporating semantic versioning release tagging and changelog.
▸ Incorporated web-workers in the process of developing user-submitted OBJ 3D model importing to improve application overall performance by offloading work to separate threads.
▸ Advocated for leaning into Scrum, such as story pointing sessions, backlog grooming, and consistent Sprint lengths.
▸ Configured Log Rocket for tracking telemetry and issues.
Jan 2018 - Jan 2021
▸ Involved in standing up and developing a new front end for an internal SPA security dashboard utilizing Apollo GraphQL, Angular 7 and AG-Grid to carry it from InVision design concept to functional MVP state.
▸ Worked with the development team of a major national fast-food chain on a touch-screen ordering kiosk. Kiosk built with React/Redux running on node-webkit (NW.js).
▸ Converted Fjord design renderings to functional pages as part of national fast-food client’s integration with Doordash food delivery.
▸ Participating in a greenfield investment research platform for a large institutional bank utilizing React, React-Virtualized, Styled Component, React-Contextmenu, and date-fns.
▸ Engage in both formal and ad-hoc meetings between different stakeholders to help bridge the gap between product owners, middleware back-end developers, and client's design research team.
▸ Unit-testing with Jest for 80% coverage and ESLint and Prettier for linting and pre-commit formatting with two developer code reviews for PRs.
▸ Provide feedback to client's design team in relation to in-progress Invision UI mock-ups for future features in terms of the technical implications.
Jan 2016 - Jan 2018
▸ Developing automated web-based enterprise data reporting platform for internal users and corporate mall clients as a replacement for a collection of Logi reports. Front-end using React, React-Router v4 and Webpack for bundling. RESTful API built using Node and Express, with JSON Web Tokens and Bcrypt for authentication. Larger Postgres queries run in separate Node process at predefines time interval and saved to local Mongo database for faster client-side rendering.
▸ Converted complex Excel report to a web application by merging data from multiple PostgreSQL databases and Salesforce reports. Deployed to EC2 with Express, MongoDB, Node, PM2, and NGINX as a reverse proxy.
▸ Wrote Node.js app to POST Salesforce accounts to the Zendesk API, after an external consultant was unable to find a migration path.
▸ Manually load Square transactions batch reports on behalf of a major national partner using a series of SQL and Python scripts. Based on workflow originally created by our internal data scientist.
▸ Created a series of SQL reports to check transaction feed status for merchants and credit partners ( Visa, MasterCard, AMEX).
▸ Onboard and trained new employees in CLI workflow for setting up hostname config files per IT guidelines, SSH key creation and connections, Psql usage, and posting cURL POST statements to internal API.
Sep 2013 - Jan 2016
▸ Acted as the primary point of contact for a set of large institutional investment banks, conducting top-day incident management related to post-trade derivatives clearing for Stream Clearvision, a real-time middle-office trade matching, allocation, and acceptance system.
▸ Developed web-based FIXML message parser to expedite issue investigation by internal teams. Also shared with overseas QA team for training purposes.
▸ Road-mapped multi-month upgrade implementations for several institutional clients. Created Gantt charts, confirmed completion of UAT testing, and ensured internal resources were available for on-call assistance during production go-live dates.
▸ Conducted bi-weekly review meetings with management of assigned clients. Completed a full case history review and presented it to the client which led to a 43% and 76% reduction in open cases two months after transitioning into the two main clients. Subsequently assigned two additional clients to oversee.
▸ Collaborated with a project manager to support her in creating a series of Excel VBA macros in order to help format and migrate a large dataset off of a previous Lotus Notes based system to an internal cloud based solution.
▸ Created and followed through on change requests and feature enhancements for specific software products, assist the client in BRD documentation.
▸ Carried out on-site client training of product installation, upgrading, issue management, and basic Oracle SQL SELECT statement overview.
Upload a CSV to mock an API endpoint or share a spreadsheet that auto-deletes after expiration. No user account needed
React Apollo Express-GraphQL MongoDB Styled Components AG-Grid Jest Prettier Node.js Sentry.io NGINX Webpack Babel PM2 Code Climate Snyk Helmet.js
A CLI tool to interactively select one or many package.json npm scripts to run
Node.js Inquirer NPM Repository