Founder2018 - PRESENTFloom.app
Technologies: D3.js, User Interface (UI), Serverless, Node.js, Vue.js
- Built Floom.app from the ground up, currently getting around 100 orders/week.
- Developed six independent micro-products, including a Tweet to video tool.
- Architected an entirely serverless back end with AWS Lambda.
Co-owner, Full-stack Engineer2017 - PRESENTWavve
Technologies: D3.js, Machine Learning, User Interface (UI), Node.js, Serverless, AWS Lambda, Vue.js
- Developed key product features like audio visualizations and video progress animations.
- Played a critical role in rewriting the front end in Vue.js and moving the back-end video renderer to AWS Lambda.
- Provided data analytics to drive product decision making.
D3.js and React Engineer2020 - 2020Alteryx
Technologies: D3.js, React
- Developed 15+ custom data visualizations with D3.js and Vega.
- Architected re-usable patterns to use D3.js within the React framework.
- Performed componentization of data visualizations for use in other parts of the company.
Full-stack Software Engineer2017 - 2018LiveStories
Technologies: User Interface (UI), D3.js, React
- Re-architected data visualization software.
- Designed and developed new visualizations.
- Constructed a method for classifying data visualizations which hugely simplified the data charting pipeline.
Web Application Prototyper2015 - 2015RiskMatch, LLC
- Designed and developed web prototypes leveraging d3.js and jQuery.
- Iterated on existing designs, adding functionality and interactivity.
- Continually provided prompt responses to urgent development requests on time sensitive projects.
Web Developer2012 - 2014Johns Hopkins Applied Physics Lab
- Led the development of custom data visualizations for a biological threat database.
- Leveraged D3.js to build filterable dendrograms, sunburst charts, timelines, map displays, and many more, all generated dynamically.
- Built scalable data solutions and integrated with a SQL back-end.
- Optimized website performance with intelligent data structures and asynchronous data calls.