Solution Architect and Back-end Developer in Ottawa, ON, Canada
Prototype Engineer2019 - PRESENTKing Tester Corporation
Technologies: Computer Vision, OpenCV, Embedded Systems, Python, Bluetooth
- Developed a proprietary computer vision system using OpenCV and Python.
- Integrated software with embedded system hardware, including multiple types of Single-Board Computers.
- Developed software tools for controlling embedded hardware devices.
Technology Specialist2018 - PRESENTTeam Rubicon
Technologies: Satellite Networking, Radio Communications, GPS Tracking, Ad-hoc WiFi Networking
- Was deployed to the Northern Marianas Islands to support disaster recovery operations after Super Typhoon Yutu.
- Traveled to Rockport, TX to support disaster recovery operations after Hurricane Harvey.
- Managed all of the technological systems during deployments, including satellite networking, radio systems, and GPS tracking.
- Supported the development of organization-wide technological systems including membership portals, financial tracking, and emergency communications system preparation.
Director of Information Technology2014 - PRESENTMIT Emergency Medical Services
Technologies: IoT, SaaS, REST API, Django, React, Wireless Communications, Public Safety
- Architected the entire IT infrastructure including a complex website, AWS hosting, stationary and in-vehicle IoT devices, and public safety radio.
- Developed, deployed, and managed a complex website in PHP with user credentials and qualifications enforcement, shift scheduling, automated email list membership, an interactive file library, and an ICS-integrated calendar system.
- Designed and implemented a system for securely transferring and storing protected healthcare records utilizing AES symmetric encryption.
- Developed a system for capturing and logging all public safety radio traffic using C++ and SDR.
- Published an iOS app for in-ambulance use for dispatching and navigation.
- Built electronics prototypes for radio, siren, and emergency lights control.
Prototype Engineer2019 - 2019Okta (via Toptal)
- Implemented a demonstration prototype of the WebAuthn protocol with support for FIDO2 USB, NFC, and Apple TouchID.
- Built a fully responsive, modern login interface with real-time network traffic display.
- Deployed the prototype using Flask.
Lead Cryptography Engineer2019 - 2019Taraxa (via Toptal)
Technologies: Encryption, TLS, Multi-party Computation, Zero-knowledge Proofs, Python
- Implemented a secure channel injection protocol for SMTP connections.
- Utilized multi-party computation for cooperative multi-party TLS record creation through frameworks including FRESCO and EMP-Tool.
- Worked with zero-knowledge proofs for SHA-256 hash and X.509 certificate validation.
- Developed a threaded networking framework for a blind certificate authority protocol.
- Implemented new academic cryptographic research for production-scale deployment.
Lead Engineer2019 - 2019Global Top-tier Strategy Consulting Firm (via Toptal)
Technologies: Python, Serverless, Amazon Web Services (AWS), REST API, Elasticsearch, Lambda, RDS, S3, EC2
- Developed a RESTful API using the Serverless Framework, Python, and AWS Aurora.
- Designed and implemented the back-end cloud (AWS) architecture for global deployment.
- Configured and maintained an Elasticsearch cluster, integrated with RESTful API via AWS Lambda and API Gateway.
- Planned and implemented all security considerations, including AWS Virtual Private Cloud, Virtual Private Network, and VPS Endpoints.
- Implemented CI/CD pipeline, including GitLab, AWS CodePipeline, CodeBuild, and CodeDeploy, all integrated with Slack for automatic build/deployment notifications to the development team.
- Developed scripts for automated input data processing, cleaning, and import into a structured relational database.
- Worked with a team of developers including front-end and graphic design specialists.
- Architected a global deployment strategy with multi-region failure redundancy and latency-based routing.
Integration Consultant2018 - 2018INTSITE Ltd.
Technologies: Python, MySQL, MATLAB, C#, XBee
- Designed and prototyped a distributed IoT sensor network using IMUs, GPS, and remote cameras.
- Developed a redundant wireless communications system for the sensor network, utilizing ZigBee/XBee radio and MIMO point-to-point WiFi.
- Developed Python libraries for redundant and encrypted command/information transmission over the distributed network.
- Integrated LTE cellular communications software and hardware with outdoor system deployments.
- Developed Python libraries for image processing and file conversion.
- Created MySQL database structure for distributed sensor datasets.
- Provided guidance on optimal network configuration, including software and hardware.
Research Assistant / Ph.D. Candidate2014 - 2018MIT Interactive Robotics Group
Technologies: Python, C++, MySQL, Virtual Machines, ROS, Git, PID Controllers, AWS S3
- Developed and tested novel C++ and Python control algorithms for multirotor UAV flights using the Robot Operating System (ROS).
- Constructed a custom tactile feedback device and developed the necessary C++ control software.
- Created virtual reality environments for user studies, including scripting in multiple proprietary languages.
- Managed all of the Git services for the research group.
- Collaborated with DARPA (US Department of Defense) on a military research project for multimodal feedback.
Research Assistant | Ph.D. Candidate2013 - 2014MIT Human Systems Laboratory
Technologies: MATLAB, SolidWorks, Medical ECG & EMG
- Developed C++ and MATLAB algorithms for processing electrocardiogram (ECG) and electromyography (EMG) data for astronauts and other users in microgravity.
- Supported development of MATLAB software for solar flux predictions on orbital bodies.
- Produced CAD models of environmental control and life support systems for spacecraft.
- Engineered emergency shelters for astronauts on the lunar surface.
Research Assistant2011 - 2013UBC Robotics and Control Laboratory
Technologies: C++, MATLAB, OpenCV, MySQL, Medical Ultrasound
- Designed and implemented a novel ultrasound imaging algorithm in C++.
- Wrote acoustic data processing algorithms in C++ and MATLAB.
- Developed image processing algorithms using MATLAB and OpenCV.
- Created statistical analysis scripts for large acoustic and image datasets.
- Blind Certificate Authority (Development)https://pdfs.semanticscholar.org/1e33/da9ebe8e4b443d33f99c5415dfda8034e873.pdf
I implemented a prototype framework of the blind certificate authority protocol, where a CA is able to verify account ownership without learning the identity of the account. This is accomplished through a combination of a "secure channel injection" protocol, multi-party AES computation, and zero-knowledge proofs.
- WebAuthn Demonstration Prototype (Development)
I developed a demonstration of the WebAuthn protocol with support for FIDO2 USB, NFC, and Apple TouchID. It was deployed using Flask/Python.
- Internal Resources Search System (Development)
I designed and implemented all back-end aspects of an internal resources search system utilizing Elasticsearch and AWS serverless architecture. The deployment included the use of Python, Serverless Framework, AWS API Gateway, Lambda, RDS, EC2, VPC, VPN, CodePipeline, CodeBuild, and CodeDeploy.
- EMS IT Architecture (Development)
I architected the entire IT infrastructure for an emergency medical services (EMS) agency, including a complex website, detailed user credential and access management, AWS hosting, stationary and in-vehicle IoT devices, and public safety radio integration.
- Distributed Sensor Network (Development)
I designed and prototyped a distributed IoT sensor network using IMUs, GPS, remote cameras, and XBee radio. The system is deployed outdoors under harsh conditions and contains multiple redundant communications systems for high reliability.
- Ambulance Dispatch iOS App (Development)
I developed an app for use in ambulances to receive dispatch instructions and status updates using secure API endpoints. The app is now in service with 911 emergency response ambulances.
- Innovation with Life-critical Systems (Publication)When complex systems are life-critical, it can be extremely difficult to modernize and upgrade them safely. While many engineers will never work on such systems, there is much to be learned from those who do. In this article, Toptal Solutions Architect Dr. Kyle Kotowick explains how to properly maintain and update systems that are too important to fail.
ToolsMATLAB, Apache, Git, GitHub, Digi XBee, MATLAB Statistics & Machine Learning Toolbox, MATLAB Parallel Computing Toolbox, PhpBB, Microsoft Visual Studio, Postfix, Redux Thunk, SOLIDWORKS
ParadigmsHuman-computer Interaction (HCI), Human-centered Design (HCD), Back-end Architecture, Serverless Architecture, DevOps
PlatformsArduino, Raspberry Pi, Amazon Web Services (AWS), AWS EC2, Linux, Windows Server, Dropbox, WordPress, Windows, AWS Lambda, AWS IoT, iOS
StorageAWS RDS, MySQL, AWS S3, Azure Active Directory, Elasticsearch, MongoDB
OtherEncryption, Internet of Things (IoT), Emergency & Urgent Care, Integration, Engineering, Research, Computer Science, Back-end Development, Serverless, AWS Route 53, HTTP, HTTPS, Cybersecurity, IIS, Healthcare IT, Business Continuity & Disaster Recovery (BCDR), Team Management, Virtual Reality (VR), Back-end, Cloud, CTO, WordPress Plugins, Networks, Radio, Remote Desktop, Software as a Service (SaaS), Military, Software Engineering, Hardware Development, Command Line Interface (CLI), APIs, AWS DevOps, WebAuth, Amazon API Gateway, Google Drive, DMARC, Distributed Systems, Remote Work, FPGA
FrameworksDjango REST Framework, JSON Web Tokens (JWT), Serverless Framework, Django, Redux, Selenium, Bootstrap
Libraries/APIsReact, REST APIs, jQuery, Dropbox API, Google Drive API
- Ph.D. degree in Human Systems Integration2013 - 2018Massachusetts Institute of Technology - Cambridge, MA, USA
- Master's degree in Electrical and Computer Engineering2011 - 2013University of British Columbia - Vancouver, BC, Canada
- Bachelor's degree in Computer Science (Honors)2007 - 2011University of British Columbia - Kelowna, BC, Canada
- E-950: All-Hazards Incident CommanderNOVEMBER 2016 - PRESENTFederal Emergency Management Agency
- G775: Emergency Operations Center ManagementOCTOBER 2016 - PRESENTMassachusetts Emergency Management Agency
- E-958: All-Hazards Operations Section ChiefJULY 2016 - PRESENTFederal Emergency Management Agency
- ICS-400: Advanced Incident Command SystemMAY 2016 - PRESENTFederal Emergency Management Agency
- Amateur Radio - General Class OperatorAPRIL 2016 - AUGUST 2026Federal Communications Commision
- Emergency Medical TechnicianMARCH 2014 - MARCH 2019National Registry of Emergency Medical Technicians