Software Engineer
CurrentChrome DevTool extension to help debug React Applications. Tracks and records state changes. Allows developers to jump to any recording and many other features.Inspired by Redux DevTools.● Co-engineered a Chrome DevTool that records component state by exchanging data between a React application and a chromeextension which gives a developer the ability to track, record and view past state as the application changes● Developed a traversal algorithm for React Fiber’s FiberNode tree to gain access to stateful components to record snapshots ofReact state which directly contributed to the ability to view and revert state to any selected recording within the application● Developed an NPM package for React developers to connect applications to the chrome extension by using background andcontent scripts to communicate state changes and extension commands● Implemented Test Driven Development by using Jest, Enzyme, and Sinon libraries to test core application functionalities in orderto ensure the expected application functionality of recording, displaying and mutating state● Architected continuous integration using Docker and Travis CI by ensuring that code is tested in the same environment prior t ointegration to prevent a disjointed development team and ensure source code is formatted to adhere to a professional standard● Used React to create a modularized component system that inherently leverages the power of the Virtual DOM to create aperformant dev tool that re-renders only when state changes are detected● Employed React Hooks and the Context API to incorporate a Flux architecture management system to avoid prop drilling andreduce obfuscation of state while avoiding the overhead of a state management system like Redux due to application size