Brightspace Data Sets
D2L, July 2017 - Present
Raw, user-level access to Brightspace data in CSV form, refreshed on a regular cadence. Enables clients to integrate into and identify trends unique to their institution's ecosystem.
- Define, prioritize, and develop product improvements, including performance improvements based on SQL query plan and log analysis
- Architect and develop expansion of Brightspace Data Sets to off-stack products and services
- Streamline onboarding and monitoring processes with other teams
D2L, March 2016 - Present
Third-party integration via D2L's implementation of RFC 6749 (The OAuth 2.0 Authorization Framework).
- Implemented Client Registration and Authorization Code Grant sections of RFC 6749 with two subject matter experts
- Corrected implementation of RFC 6749 that prevented a popular Postman authorization feature from working properly
- Developed and advocated for user experience improvement that allows registered clients to be modified
Brightspace Data Platform
D2L, April 2014 - Present
Building D2L's next generation educational analytics platform. Event-driven, lambda-like data-processing architecture backed by multiple types of data stores. Data is exposed via a RESTful API layer.
- Develop data platform that bridges and sustains over 1000 events per second between publishers and consumers
- Review and provide consulting on event design from other teams looking to publish to the data platform
- Improve on and maintain tooling to deploy to production multiple times a day for rapid developer feedback
- Member of working group for company-wide on-call tool (OpsGenie); implemented integration with data platform
- 10x reduction in infrastructure costs by migrating legacy 1.0 system to AWS
D2L, September 2011 - December 2011, May 2012 - April 2014
Educational analytics as a service. Traditional ETL process, extracting Brightspace data from a transactional database into a reporting warehouse. Data is exposed via a white-labelled third-party BI tool with pre-defined reports and ad-hoc support.
- Performed exploratory testing with a focus on integration points; analyzed defects and source code to recommend fixes
- Updated core libraries for security compliance; maintained testing environments
Use cron-like expressions to test if a datetime is in an allowed range.
A GitHub App that only notifies on a subset of actions.
A popular word guessing game using React and Redux.
A Netlify plugin that blocks deployment if it is outside of deployment hours.
Interface for going through the OAuth 2.0 authorization code grant flow. Written in Vue.js.
Tool for pretty-printing newline-delimited JSON using React and Redux.
An open-source Python library. I fell in love with C#'s LINQ / Enumerable a while back, and realized Python could use some love so that it can do something similar. I decided to write my own library, following the likes of C# LINQ / Java streams / Apache Spark's RDD transformations.
GUID generator, written in Vue.js. Generates up to 999 GUIDs at a time.