Dr. Craig S. Bruce, BSc(CS), MSc(CS), PhD

Location: Ottawa, Ontario, Canada.

e-mail: csbruce@cubewerx.com

Web: http://csbruce.com/


NOTE: I am not currently looking for a job and I am committed to my current employer for the foreseeable future. This resumé is only here so that it may be "deployed" if my situation ever changes. I'm also not interested in leaving Canada.


PROFESSIONAL OBJECTIVE

To work in private industry doing software research, design, and development. My R&D interests include distributed operating systems, embedded real-time systems, interprocess communication, distributed and parallel algorithms & computation & data structures, spatial indexing, computational geometry, image processing, performance optimization, and geographic information systems.


COMPUTER SKILLS

Languages:Expert knowledge of C (over 20 years experience), HTML/CGI/XML, Unix shell scripts and utilities, Assembler (x86, 6502 and 65816, 68000, System/370, and NS-32000), and 1980's BASIC. Basic background in object-oriented programming, SQL, PASCAL, FORTRAN, COBOL, PL/I, APL, and Simscript. Vague understanding of C++, Java, LISP, SCHEME, ADA, MODULA-2/3, SMALLTALK, and PROLOG.
Systems:Linux/Unix Workstations with X-Windows (over 20 years experience), Windows, bare-metal programming on 8-bit microcomputers, IBM 3090-VF mainframes.
Special:Rock-solid understanding of computer-system basics. Highly creative while simultaneously having a strong mental discipline. I also possess the extremely rare capability of critical thinking. I am an excellent person to bounce ideas off of. You can think of me as either an extremely applied researcher or a very bright software developer. I am also a natural but reluctant leader, and I am very outspoken at work (which may limit my career potential at large corporations that have more bureaucracy and backstabbing than common sense).


WORK EXPERIENCE

Employer:CubeWerx Inc., Gatineau, Quebec.
Dates:July 1997 -- Present.
Position:Senior Software Developer, Partner, and Director.
Description:Member of the core team of software developers for a large-volume RDBMS geo-spatial data-warehouse & web-services product. My responsibilities include low-level software libraries, computational geometry, map rendering, image processing, spatial indexing, performance optimization, system & API & high-level software design, research, some company management, and being a general overall Brainiac.

I've also had leadership roles in developing the Web Mapping Service, Styled Layer Descriptor/Symbology Encoding, and Binary XML specifications for international geospatial-standards organization OGC and contributory roles to various other specifications.


EDUCATION

1992-1998:Completed Ph.D. (Computer Science) program full-time and part-time, University of Waterloo, Ontario. Research group: Shoshin Distributed Systems Group. Supervisor: Dr. David Taylor. Thesis: Performance Optimization for Distributed-Shared-Data Systems.
1990-1992:Completed M.Sc.(Computer Science) program, University of New Brunswick, Fredericton, N.B. Supervisor: Dr. David Fellows. Thesis: Design and Implementation of an Instructional [Distributed] Operating System.
1986-1990:Completed four-year B.Sc.(Computer Science) program, University of New Brunswick, Fredericton, N.B., graduating first-in-class (CS), majoring in Software Systems.
1983-1986:Completed Kennebecasis Valley High School, Quispamsis, N.B., graduating with High Honors.


SCHOLARSHIPS AND AWARDS

1992-1995:ICR/ITRC Scholarships, UW.
1990-1994:NSERC Postgraduate Scholarships PGS-1, PGS-2, and PGS-B (two-year).
1990:Lieutenant Governor's Silver Medal (first in class for CS), UNB.
1986-1989:Special Undergraduate Scholarships, Computer Science Prize, Alumni Scholarship, Colonel Henry Thomas Entrance Scholarship, Alumni Prize (highest GPA), Adam Cameron Prize, Jean Crawford Flemming Memorial Prize, Miles A. Keirstead Prize in Physics, Dean's List, UNB.

(The total value of all of the scholarships and prizes I have received is $84,000.00. I completed 11 years of university with a small profit.)


PART-TIME / SUMMER WORK EXPERIENCE

Employer:University of Waterloo, Ontario.
Supervisors:Dr. Gordon Cormack, Dr. Thomas Kunz, Dr. Joanne Atlee, Dr. David Taylor.
Dates:September 1992 -- April 1996.
Position:Teaching Assistant (Part-time).
Description:Evaluated programming assignments, assisted students one-on-one, online, and in tutorial situations, proctored and marked midterms and final exams. Courses include UW's "infamous" CS452 Real-Time Programming course (six times), CS454 Distributed Systems (twice), and CS354 Operating Systems (thrice). All of my T.A. evaluations ranged from very good to excellent.

Employer:Meridian Construction Limited, Saint John, N.B.
Supervisor:Mr. Peeter Vihvelin, Senior Estimator.
Dates:May -- August 1990.
Position:Computer Consultant.
Description:Under an NRC IRAP-H Grant, learned to use and trained the estimating staff in the use of MC2 Interactive Cost Estimating system. Programmed new Construction Systems and prepared related documentation. Installed and configured various hardware and software systems.

Employer:Leonard Roofers Ltd., Saint John, N.B.
Supervisor:Mr. Derek Sollows, Owner.
Dates:May -- September 1989.
Position:Programmer / Analyst.
Description:Under an NRC IRAP-H Grant, made extensive, integrated use of Lotus 1-2-3 and dBXL (dBASE III Plus clone) to create a roofing-project cost-estimating system. Trained staff in the use of same and prepared documentation.

Employer:University of New Brunswick, Saint John, N.B.
Supervisor:Dr. Nandlal Sarda, Computer Science.
Dates:May -- August 1988.
Position:Research Assistant.
Description:Under an NSERC Undergraduate Research Assistantship, researched, designed, implemented, and documented the execution-time relational-algebra operators for an experimental Historical Database Management System.

Employer:University of New Brunswick, Saint John, N.B.
Supervisor:Prof. Eileen Pike, Business Administration.
Dates:May -- September 1987.
Position:Research Assistant.
Description:Used SPSS-X, Minitab, dBASE III Plus, and Lotus 1-2-3 to manipulate data, perform statistical analyses, and generate reports.


References and transcripts available on request.


[Make me an offer I can't refuse]