Full-stack software engineer specializing in JavaScript, TypeScript, React and Node.js with experience building scalable, production web applications serving tens of thousands of users. Strong background in state management, complex form workflows, accessibility, and frontend testing.
Developed, and maintained a variety of JavaScript/Typescript, Node.js, and React applications and services. These systems empowered administrators and educators to efficiently manage enrollment data, content entitlements, and permissions. Focused on delivering a highly customized, accessible, and seamless UX to enhance operational efficiency and user satisfaction.
Leveraged Node.js along with apollo-server-express npm package to allow for creating new instances of Apollo server at runtime and dynamically switching connections for GraphQL query performance comparisons in diverse PostgreSQL schemas.
•
Implemented React Hooks as a state management tool to provide better ergonomics for encapsulating and reusing stateful logic in React without having to write class components and lifecycle methods resulting in a clean and concise codebase.
•
Calibrated Webpack as a module bundler to improve application performance by reducing the number of HTTP requests as well as configuring Webpack plugins for code minification and uglification to reduce the size of the application bundle.
•
Configured a sequence of Node.js child processes that executed custom shell scripts in an asynchronous manner in order to utilize the psql command line tool for connection to a database from .sql or .tar file uploaded by the user.
•
Product developed under tech accelerator OS Labs (opensourcelabs.io).
Implemented third-party OAuth 2.0 user authentication strategy by using Passport.js as middleware in cooperation with Google API which allowed to minimize bounce rates and achieve superior user experience by providing additional authentication options.
•
Allowed user data to persist even if browser was closed by storing cookies for authentication on the client side.
•
Enhanced security of sensitive data by leveraging bcrypt hashing algorithm to assure that passwords stored in the database are unique and safe against dictionary attacks by encrypting plaintext with randomly generated salt string.
•
Leveraged Jest framework along with React Testing Library for front-end unit testing to maintain verification of code correctness in an organized way and avoid code regression and unintended consequences caused by adding new features.
Utilized Redux flux architecture in order to decouple data management logic from React components and ensure unidirectional data flow to keep changes predictable and maintainable, and easy debugging with time travel provided by Redux DevTools.
•
Established a relational database that satisfies the normalization rules in order to avoid insertion, update, and deletion anomalies caused by redundant data and provided a list of queries to interact with the database.