Kyle Spaans
kyle@spaans.ca
JOB OBJECTIVE
Simplifying the path to production.
SKILLS SUMMARY
Comfortable with: Linux, Mac OS X, and Windows
Proficient with:
C, JS; Bash, Git, Make, LaTeX
Intermediate Scheme/Perl/Python/C++/Fortran/Ruby/Salt/Puppet/ARM/x86/RoR skills
WORK HISTORY
Software Architect
, Scotiabank, May 2019 - Present
Leading a DevOps transformation, and enabling software and testing automation.
Software Architect
, TELUS Digital, July 2018 - May 2019
Node.js and React development focusing on enabling outcome teams for TELUS Digital
Senior Full Stack Software Developer
, TELUS Digital, November 2017 - July 2018
Node.js and React development focusing on automating customer fulfillment in for TELUS Mobility
Writing User Stories and co-ordinating work between different teams
Lead Software Engineer
, Green Chef, October 2017 - November 2017
Software Engineer
, Green Chef, March 2016 - October 2017
Node.js development and infrastructure; managing code deployments and environments with Cosul and Nomad
AWS devops and Saltstack configuration
Server tuning for various self-hosted services including MongoDB
Intermediate Agile Software Developer
, Your Golf Travel, Jan 2014 - Feb 2016
Developing internal, web-based software in a variety of languages
Pair programming locally, and with remote teams
Precise requirements gathering from internal customers
Co-Founder
, Farfield Computing Systems, Sept 2013 - June 2014
Software R&D, ARM Linux Kernel hacking, scalable distributed storage
Consulting
, Four Pi Solutions, March 2013 - Sept 2013
distributed, scalable storage using ARM devices and Linux
Contractor
, CineClick Inc, April 2013 - May 2013
low-level software in C and C++ in Linux
Software Developer
, Research In Motion, Advanced Technology Team, Waterloo, Ontario, January 2012 - March 2013
Maintain harmonizing group timers subsystem, analyze packet capture files to ensure that cellular data traffic is harmonized
Worked on the Phone Services team, managing connections between the phone UI and cellular radio
Programming in C with QNX IPC libraries
Malware Analyst
, Symantec Hosted Services, Anti-Virus Research and Response, Toronto, Ontario, May 2010 - August 2010
Reversed and analyzed malware and wrote heuristics for an email scanning service
Heuristics in Perl and C++
Reversing Windows EXE files by disassembling into x86 assembly
Software Developer
, Xandros, Scalix Server Performance Team, Ottawa, Ontario, September 2009 - December 2009
Resurrected and extended a benchmarking and testing suite for IMAP servers
Using the Twisted framework in Python
Graphing with the R statistical package
EDUCATION
Bachelor of Mathematics
General Math, University of Waterloo, Waterloo, Ontario, September 2006 - December 2011
Relevant courses:
CS343 - Parallel and Concurrent Programming
CS444 - Compiler Construction
CS452 - Real-time Programming
CS458 - Computer Security and Privacy
CS499R - History of OS Kernels
CS499R - Undergrad Capstone Open Source Project: Basie
CS499R - Distributed Real-time
ACTIVITIES & INTERESTS
Various projects can be found in my github account:
http://github.com/kspaans
Comfortable in a full-stack environment from DevOps to HTML
Operating system kernel design experience
two student projects involving writing real-time OS kernels
pay attention to development of the Linux kernel
Novice reverse code engineering skills
Technical Conferences and Memberships
USENIX Operating Systems Design and Implementation 2008
| Ottawa Linux Symposium 2008
| BSDCan 2008
Reverse Engineering Conference 20{10,12,13} (recon.cx)
| Ontario Linux Fest 200{7,8}
Student member of the EFF and the ACM.
Student Clubs
Computer Science Club: member since Fall 2006. Volunteer, executive: taught UNIX 101 tutorials, helped out with events
Kwartzlab Society Inc.: founding member
Mathematics Society: student representative throughout undergrad
Amateur music DJing and mixing
Beer brewing
LANGUAGES
French
Functionally Bilingual
Good verbal comprehension and communication, average written competency
Tagalog
Basic vocabulary