Software Engineer
Current- Engineered Deno’s first GraphQL caching solution for React components using browser cache and Oak Routers using Redis cache - Redesigned server-side caching logic through efficient algorithms that not only prevent expensive service calls from being repeated but also allow for system maintainability through readable code that adheres to functional programming principles - Architected a new cache invalidation strategy that deduces the specific mutation operation to prevent expensive GraphQL responses to be unnecessarily removed from cache while also avoiding returning incorrect responses to the user due to an inconsistent cache- Tested functions with 15+ unit tests using Deno’s native testing suite in a Test Driven Development environment to ensure correctness of new features, scalability of application, and reliability of codebase for future users and developers- Managed limited and valuable Redis cache space through a Least Recently Used cache eviction policy to prioritize space for large GraphQL responses, which are far more expensive to call, over their constituent reference components- Programmed a recursive normalization algorithm to flatten arbitrarily nested and large GraphQL responses to be cached dynamically- Developed recursive transformation algorithm that converts static GraphQL responses into a dynamic object of references - preventing them from being stale from mutations, being invalidated from cache, and being readded from another expensive GraphQL service call- Developed recursive detransformation algorithm that converts a dynamic object of references into the GraphQL response user expects, improving the system efficiency by improving the cache hit rate of expensive GraphQL service calls- Leveraged Travis CI/CD to automate deployment testing, reduce time between update releases, and improve developer experience- Collaborated with an engineering team to develop product under tech accelerator, OS Labs (opensourcelabs.io)