Bruce Conrad

90 S 400 W Ste 500 Salt Lake City, Utah 84101 (801) 257-4290


Industry - Thirty years in software design, development and deployment, including one year programming real time microcomputer systems.

Teaching - Nine semesters of university level computing science courses. Also, adult continuing education classes in computer literacy and applications.

Research - Nearly continuous work in the areas of Internet programming, object-oriented programming languages and systems, computer assisted instruction, pattern matching, microcomputer operating systems, programming languages, and natural language processing, over a period of thirty-six years. Bibliography

Education - B.S. 1974, M.S. 1981, both in Computer Science. Work towards the Ph.D. (all but dissertation defense 1995)

Miscellaneous - Personal information, honors, and references. Blog:

Industry Experience

Principal Software Engineer, Campus Pipeline, Inc. / SCT / SunGard Higher Education Salt Lake City, UT. Nov 99-present

Developing state of the art web based applications using Java servlets, JSP, JSTL, XML, SQL, CSS.

Programmer and Contractor, Sanbachs, LC. Orem, UT. Apr 97-Nov 99

Publishing databases on the world-wide web. Seventeen months designing and developing web-enabled, multi-tiered client-server software in Java (including Java servlets) for Novell, Inc. Two months at SwitchSoft Systems, Inc. working with Java servlets and Oracle databases.

Vice President of Technology, Internet Data Services, Inc. Orem, UT. Nov 95-Mar 97

Developed internet database technology, primarily server-side, in C, running on Windows 95, Windows NT, and UNIX. Was involved in client-side, using HTML and JavaScript. Deployed several applications.

Senior Scientist, Advanced Technology Group, WordPerfect Corp. Orem, UT. Aug 92-Nov 95

Experiments in NetWare-based collaboration software and hand-held device software. (The WordPerfect ATG became the Novell ATG in 1994.)

Senior Developer, WordPerfect Corp. Orem, UT. Aug 88-Aug 92

Participated in development of a DOS product in assembly language and C. Managed the development group for three of those years. Created a complete object-oriented programming environment.

Applications programmer, Total Computers, Ltd. Lethbridge, Alberta, Canada. 1982

Programming on the Alpha Micro.

Analytical Engineer, Hamilton Test Systems Inc. Tucson, Arizona. 1981

Programming on the Z80, IBM 370/VS, and VAX/VMS.

Lab Technician, University of Arizona, Computer Science Department. Jun 80-May 81

Programming on the PDP-11/70 under UNIX.

Software Engineer, CAP SOGETI Logiciel, Montrouge, France. Nov 74-Jul 79

Responsible for a teleprocessing transaction monitor. Programming on the IBM 370.

Teaching Experience

Assistant Professor, University of Lethbridge, Department of Mathematical Sciences. Aug 84 - Jul 88

Undergraduate computing science courses, including compiler courses.

Sessional Instructor, University of Lethbridge, Department of Mathematical Sciences. Jan 83 - Jun 83

Two semester-length introductory computing science courses.

Occasional Instructor, Lethbridge Community College, Continuing Education. Oct 82 - Jul 84

Adult non-credit and credit courses in computer literacy and applications.

Graduate Teaching Assistant, University of Arizona, Computer Science Department. Jan 80 - May 80

One semester-length introductory computing science course.

Teaching Aide, Brigham Young University, Computer Science Department. Jan 73 - Aug 74

Taught lab sessions for one introductory course and two data structures courses.


Since 1995

Live databases on the world-wide web [].

1988 - 1995

Object-oriented programming languages, environments, and systems [15-19].

1986 - 1988

Computer Assisted Instruction, theory [11] and techniques [12,13].

1985 - 1988

Work with spreadsheet programming languages [10].

1979 - 1988

Work with Apple //e microcomputer, including terminal emulation, cross assembly (from PDP-11 under UNIX), operating system enhancements [7,8], turtle graphics [6], courseware, animation.

1977 - 1986

Work on microcomputer programs to assist in recombinant DNA research [3,4,5,9]. (Supported by the University of Arizona 8/81 - 1/82.)


While employed at Hamilton Test Systems, developed on-line debugging software for the proprietary Autosense processor (16 bit serial), and implemented the UNIX ed editor in TECO.

1975 - 1978

While employed at CAP SOGETI Logiciel, developed on-line debugging software [2] and remote program maintenance facilities for IBM 370 under OS/VS1.

1973 - 1974

Natural language processing algorithms [1]. (Supported by BYU Language Research Center.)


Matriculation W. R. Myers High School, Taber, Alberta, Canada.

Graduated with honours, June 1968. Class valedictorian.

B.S. Computer Science, Brigham Young University, Provo, Utah.

Degree awarded, cum laude, August 1974.

M.S. Computer Science, University of Arizona, Tucson, Arizona.

Degree awarded, December 1981.

Ph.D. Computer Science, University of Calgary. [14,19]

January 1986-June 1995. All but dissertation defense.



U.S. citizen, born in Canada.




Association for Computing Machinery, since 1980.


Spotlight in Valley Center Playhouse theater group.

Program committee member for tenth OOPSLA conference in 1995.

Who's Who in Southern Alberta 1988-1989, Historical Research Centre, Lethbridge, Alberta.

Graduate Tuition Scholarship, University of Arizona, 1979.

Karl G. Maeser Scholarship, Brigham Young University, 1968, 1972.

High School Valedictorian, 1968.


Dr. Dennis Connolly (Professor, University of Lethbridge)
C566, 4401 University Drive Lethbridge, Alberta T1K 3M4, Canada (403) 329-2476

Thom Boyer (Software Engineer, Bungee Labs)
1878 Spring Oaks Drive Springville, UT 84663 (801) 376-0508

Marlin Benson (Development Lead, The Church of Jesus Christ of Latter-Day Saints)
50 East North Temple Salt Lake City, UT 84150 (801) 240-5136


[1] "Offline Dictionary Building Computer Programs", Linguistics Symposium, Reports on Research and Development in Automatic Language Processing, Brigham Young University Language Research Center, April 9, 1974.

[2] "Outils de mise au point sous MULTIFASTER", Le Moniteur #59, CAP SOGETI Logiciel, Montrouge, France, 1977.

[3] "Microcomputer programs for DNA sequence analysis", with Dr. David W. Mount, Nucleic Acid Research, Volume 10 Number 1, IRL Press Limited, London, 1982.

[4] "Microcomputer programs for back translation of proteins to DNA sequences and analysis of ambiguous DNA sequences", with Dr. David W. Mount, Nucleic Acid Research, Volume 12 Number 1, IRL Press Limited, London, 1984.

[5] "Microcomputer programs for graphic analysis of nucleic acid and protein sequences", with Dr. David W. Mount, Nucleic Acid Research, Volume 12 Number 1, IRL Press Limited, London, 1984.

[6] "Introduction to LOGO through Turtle Graphics", unpublished; used in "Computers for Teachers" class at LCC, 1984.

[7] "Amper Catalog", Nibble, February 1984.

[8] "Relocatable Disassembler", submitted to Nibble.

[9] "Improved programs for DNA and protein sequence analysis on the IBM personal computer and other standard computer systems", with Dr. David W. Mount, Nucleic Acid Research, Volume 14 Number 1, IRL Press Limited, London, 1986.

[10] "A Spreadsheet Programming Environment", with Charles Jorgenson, Proceedings, CIPS Edmonton '86, Oct. 21-23, 1986.

[11] "Conversation Theory", submitted to the International Journal of Man-Machine Studies.

[12] "Computer Tools in a Linear Algebra Course - A Case Study", with Rex Forsyth and Wolfgang Holzmann, Proceedings, International Conference on Computer Assisted Learning, Calgary, May 5-7, 1987.

[13] "Video Distribution Network", with Robert Lewko and Dan Paulson, Proceedings, International Conference on Computer Assisted Learning, Calgary, May 5-7, 1987.

[14] "Neural Nets and Machine Learning Workshop", with Deborah Leishman. Computer Science Technical Report 1987-272-20, Calgary, July 1, 1987.

[15] "Changing the Instance Structure of a Class". Internal Report. WordPerfect Corporation (November 1988).

[16] "Anonymous Methods in Smalltalk". Internal Report. WordPerfect Corporation (November 1990).

[17] "Static Type Inferencing for a Dynamically Typed Language". In Types, Inheritance and Assignments: A collection of position papers from the ECOOP'91 workshop W5. Palsberg, J. & Schwartzbach, M.I. eds. Technical Report DAIMI PB-357, Computer Science Department, Aarhus University, Denmark (June 1991).

[18] "Insecurities in Smalltalk Programming", with A. Lewis Bastian. Technology of Object-Oriented Languages and Systems: TOOLS 5, Korson, T., Vaishnavi, V. & Meyer, B., eds. Prentice-Hall, 195-201, 1991.

[19] Design of an Object-Oriented Database Language: Bridging the gap between Organizational Requirements and the Technical Implementation of an Object-Oriented Information System. A 200 page dissertation presented to the Department of Computer Science at the University of Calgary (June 1995).

Last updated: April 9, 2010