Michael Capewell

+ degree := Bachelor of Engineering

+ program := Computer Systems Engineering

+ school := Carleton University

+ email := mcapewell {at} gmail.com

+ phone := 613-612-4797

+ location := Kanata, ON, Canada


+ doc version DOC (MS Word / OpenOffice)

+ pdf version PDF

Please choose your preferred format for viewing!


Hi, thanks for checking out my site.  I'm currently looking for a software engineering job as a developer or tester in the Ottawa-Gatineau area.  I'm a C++/Java developer with 4 years of software engineering experience.

Please have a look at my resume in the box to the left for an overview of my skills and experience.  For a more in-depth look, mosey on over to the right of this box and have a look at the experience pages.

My interests are quite varied, and I enjoy anything from debugging raw machine code to writing nice GUI applications or web apps.


+ Employment Experience

+ Personal Programming Projects

+ Academic Experience

I worked at General Dynamics Canada for 3 years in the Research and Development department. Before that, I worked at Aviya testing airplane software.

During university, I worked three co-op placements:  Two with Prof. John W. Chinneck and another with Computing and Communications Services (CCS) (The ISP at Carleton).  I also worked several more months at CCS after graduating.  See the Employment Experience page for more information.

I always like to have a programming project or two on the go.  You can check out a few of my programs on my Programming Projects page.



(Last updated in 2006!)

C++ – (Update: I have 3 years of C++ experience at General Dynamics Canada, plus my work on EARE) After graduating from university in 2005, I committed myself to learning C++. My first C++ program was a keyboard layout evolution framework designed to evolve a better keyboard layout. I have also done a pile of work on programs to help me pick players in online hockey pools (I was THIS CLOSE to winning an LCD tv this season! I lost it in the last week!). I have a good handle on the standard library and object-oriented progamming; I've used the wxWidgets GUI framework (which is like MFC, but multi-platform); and I have made my own simple unit testing framework, mcppUnit.

Java – Java was the language used for high-level, object-oriented programming at Carleton University. I have experience with multithreaded programming; sockets; distributed network computing using RMI, CORBA, and mobile agents; JavaDoc; and JUnit.

Web Applications – On my co-op placement with CCS, I worked as a web developer and taught myself how to use ASP pages, VBscript, SQL, and MS Access databases to improve the functionality of the site. I've recently used these skills for a NHL statistics page to help in weekly hockey pools. Due to the good impression I made at CCS on my co-op term, I worked there again recently on a couple more projects. I also have a tiny bit of ColdFusion experience and am looking into AJAX techniques to improve my NHL stats pages. Recently, I started working on an automatic standings system for an online video game league i'm in.

Keyboard Layouts – I wrote a program that attempted to evolve, through mutations, "the best" keyboard layout possible. My goals were to make a comfortable layout that reduced the risk of RSI injury, was easy to learn, and preserved many common keyboard shortcuts. Shai Coleman has incorporated some of my ideas and research into his development of the Colemak keyboard and included my VB.NET 'Keyboard Display' program in the Colemak WIndows download package.  I have also made improved versions of QWERTY and Dvorak. This page was written using QWERF.  People have taken interest in my work and my layouts have been mentioned on Wikipedia (Update: the mention of my work was removed a couple years ago). One of my early evolved layouts gets a bit of a review on this page (though, personally, I'm not fond of that particular layout anymore).

Hockey Pools – I've made a program that helps me pick players in hockey pools. I finished 12th of over 40,000 participants in my favourite pool in the 2005-06 season and at one point was 32nd in the NHL.com pool. The program is written in C++ and uses wxWidgets for the GUI. It can be compiled and run in both Windows and Linux. I've also started working on a web application that displays team statistics and another (that I think is exceptionally cool) that keeps track of a simulated NHL94 hockey season played by a friend and I on a Sega Genesis emulator. I have a few other programs related to hockey pools, but they're my secret weapons ;).  I've also used ASP+VBScript, SQL, MS Excel, and VBA macros in other utilities to help me with hockey pools.


Get Firefox!