Programming Languages and Technologies
- Extensive knowledge of C/C++ (10+ years professional experience).
- Experience implementing cryptographic algorithms.
- Passionate about embedded development and IoT.
- Well-versed in Linux/Android kernel development.
- Great experience with Win32, COM, and Windows internals.
- Knowledge of C# and the .NET framework.
- Certified ScrumMaster (Scrum Alliance).
- Linux and Windows 9x – 10
- Microsoft Visual Studio, Eclipse, Microsoft Office, Adobe Photoshop.
Security Software Developer
ISARA, Inc. (Waterloo, ON)Sept 2015-Present
- Implemented and optimized cryptographic algorithms that are resistant to attacks by quantum computers.
- Was a major contributor to the company’s flagship product, the ISARA Radiate Toolkit.
- Worked with cryptography researchers from around the world.
BlackBerry Security Developer
Research In Motion, Inc. (Waterloo, ON)Feb 2012-Sept 2015
- Developed an Intrusion Detection Engine for Android to keep data safe from hackers.
- Helped design a Two-Factor authentication scheme using a BlackBerry device.
- Implemented PGP support for the BlackBerry 10 platform.
- Designed and developed code to interface with low-level QNX drivers and services.
- Implemented a security scheme for Near Field Communication (NFC) using Access Control Files.
BlackBerry Security – Capabilities Developer (Tools)
Research In Motion, Inc. (Waterloo, ON)May 2011-Feb 2012
- Was involved in maintaining a legacy website written in PHP and developing its successor in ASP.NET (C#).
- Obtained the ScrumMaster certification from the Scrum Alliance.
Lead Software Developer
McAfee Inc. (Waterloo, ON)Jul 2008-May 2011
- Served as team lead in rewriting the McAfee Home Networking product, which vastly improved performance and file size.
- Drafted specification for a brand new product and lead a team in its initial design.
- Delegated tasks to team members and managed the workload of interns.
- Analyzed and improved the installation time of the McAfee Installer on low-end machines by a factor of 10.
- Used the Win32, COM, and sockets APIs extensively.
- Became proficient in writing security code and in the use of various debuggers and security tools to audit code and communication protocols.
Graphics Engine and Physics Programmer
Bump Technologies Inc. (Toronto, ON)Mar 2007-Jul 2008
- Refactored and extended the functionality of the flagship product, Bumptop, using cutting edge OpenGL shaders and UI techniques.
- Was responsible for incorporating many Human Computer Interaction methodologies.
Software Developer (Co-op Position)
Strike Technologies Inc. and Seneca College. (Toronto, ON)Jan 2006-Jan 2007
- Developed a software package which interacted with a new Human Interface device that detected hand gestures and finger movements.
- Wrote code using the Win32 API and Driver toolkits to communicate with the device.
Bachelors Applied Technology – Software Development
Seneca College of Applied Arts and TechnologySep 2005-Dec 2007
Computer Programming and Analysis Diploma
Seneca College of Applied Arts and TechnologySep 2002-Apr 2005
Hobbies and Interests
Paintball, biking, camping, travelling, home improvement projects, programming and reading about software exploits (ie. Stack Smashing).