Full-stack Developer
2019 - PRESENTHolo Hosting- Designed and developed a decentralized hosting network based on Holochain technology.
- Created a bootstrapping worker for connecting web agents to decentralized Hosts.
- Supported ed25519 key management using Rust compiled to WASM.
- Designed and documented decentralized architecture.
- Designed cross-origin communication library for iframe to parent synchronization.
Technologies: Cryptography, Unix, WASM, Rust, JavaScriptFull-stack Developer
2017 - PRESENTProcter & Gamble- Wrote a scanner for discovering assets across many industrial networks.
- Analyzed network packets using Wireshark to discover undocumented functionality in EtherNet/IP and CIP.
- Created a web API for aggregating reports from remote scanning units.
- Designed alternative debugging methods for analyzing failures in remote private networks.
- Designed and built remote backup and estore scripts for SQL Server.
Technologies: OpenAPI, OpenID, OAuth, Docker, Microsoft SQL Server, Vue, JavaScript, PythonProject Manager
2015 - PRESENTRiverwatch- Created an authentication service for validating user credentials.
- Designed and built a lightweight HTML and JavaScript templating engine.
- Optimized database queries for aggregating large datasets and generating reports.
- Created a system for managing and authorizing temporary volunteers to submit field data.
- Implemented analytics and metrics for measuring user contributions.
Technologies: Docker, AngularJS, MySQL, JavaScript, PythonResearcher
2018 - 2018ClearGrid- Researched Kubernetes viability for the company's existing architecture.
- Developed a working prototype for one of the company's services using OpenStack and Kubernetes.
- Documented research, projections, and recommendations for the company's transition.
Technologies: Kubernetes, OpenStack, DockerProject Manager
2015 - 2016University of Alberta- Created a markdown editor with real-time preview.
- Designed a multi-phase collaborative article writing process with versioning and peer review.
- Created a system for assigning doctors to topics with article templates that guided them through the required sections.
- Wrote an image upload and management library.
Technologies: Markdown, MySQL, Node.js, JavaScriptSoftware Developer
2013 - 2014Enbridge- Created a WebSocket client in Python.
- Wrote web UI for monitoring and controlling simulated PLCs.
- Designed HTTP and WebSocket APIs for simulated programmable logic controllers (PLCs).
- Implemented a record and playback feature for replaying PLC events.
- Made an XML to JSON stream parser.
Technologies: Bash, ZeroMQ, Mongrel2, Docker, JavaScript, PythonSoftware Developer
2012 - 2012Enbridge- Created a web interface to monitor real-time PLC activity.
- Replaced an outdated Modbus client with a modern, well-supported alternative.
- Set and wrote documentation standards.
- Created custom time-series graphs using D3.js.
Technologies: Modbus Protocol, D3.js, WebSockets, Bash, JavaScript, Python