Implemented key features such as collection browser, interactive questions with customizable layouts, static dashboards, and question creation/editing functionality.
Improved SDK authentication mechanisms, including JWT flows and API keys.
Implemented dynamic fonts, stable IDs, and customization options for various SDK components.
Collaborated with designers and product managers to improve static/public dashboard embedding.
Added menu to simplify public link sharing, new menu items to encourage static and interactive embedding, and new BE settings code to present the company license to open source users.
Code Refactoring for Design System, TS, and CSS Modules
Worked with designers to explore different frontend frameworks to develop a design system for Metabase.
Converted many components to Typescript and MB Design System, in an attempt to increase maintainability while reducing prop-drilling, code duplication, and bugs.
Moved components away from styled components towards Mantine components and CSS modules to reduce the number of style systems within the codebase and allow for increased customizability for the Embedding SDK.
Worked with product designers, managers, and engineering staff to ensure that bugs were solved in a timely manner, and wrote end-to-end and unit tests to ensure that bugs do not pop up again.
Code-Driven Design Pipeline, UI Standardization, and Vue 3 Migration
Developed design pipeline and created Alvin-specific UI library to help non-frontend developers generate rapid prototypes more easily.
Added Storybook, Chromatic, and story.to.design to code base to increase component documentation, automate visual regression testing, and help product managers create designs based on latest component versions.
Led effort to migrate our Vue 2 + Webpack stack to Vue 3 + Vite, allowing for better code reusability, quicker prototyping, and 50% lower build times for automated testing and cloud dev environment generation.
Created an internal search language using ANTLR to drive the development of asset search and discovery, and simplify the display of asset filters and search results.
Designed and implemented the Assets page, an advanced data asset search page with filters for usage, names, tags, and other metadata.
Created the Views page for saved searches, allowing data engineers to create and share sets of filters with other stakeholders.
Developed an open source connector to provide Alvin’s data lineage capabilities to existing Amundsen users, and delivered a presentation to the Amundsen community about plugin development.
Data Catalogue & Product UI Overhaul
Designed and developed product UI overhaul to focus on data catalogue and search capabilities, implemented with Vue + Quasar + SASS.
Documented research on competing tools and generated wireframes for internal feedback with Figma.
Collaborated with the company designer to create a use-case driven page that allows new users to explore the possibilities of using golinks within their company.
Worked with the backend engineers to create a server-side rendered page using React and PHP, while maintaining a high SEO rank for search engines.
Developed the spec and completed the first iteration of the GoLinks JIRA plugin, automatically setting golinks to be clickable within JIRA descriptions.
Clearwater AnalyticsFull Stack Software Engineer
Boise, ID May 2019 to Aug 2019
TypescriptJavaAngularBootstrapSpring BootSQL Server
Internal Tools Development
Developed internal tools in an Agile environment, including a regression testing solution and a UI for a Kubernetes deployment tool.
CitibankDevOps & DevEx Engineer
Dallas, TX May 2018 to Aug 2018
PythonSplunkArtifactory
File Download & Storage Optimization
Identified repository usage inefficiencies with Python, and unusual usage trends with Splunk dashboards for management, and deployed this solution to 25,000 developers within Citibank.