Take the Next Step

Request more information to make the decision that’s right for you:

  • Courses and Degree Outcomes
  • Admission Requirements
  • Tuition and Financial Aid
  • Student Support Services

Access Your Guide

Continue to Next Step

Step 1 of 2

Back | Step 2 of 2

Submitting this form constitutes your express written consent to be called and/or texted by Worcester Polytechnic Institute at the number(s) you provided, regarding furthering your education. You understand that these calls may be generated using an automated technology, including by way of example, auto-dialer and click-to dial technologies. Calls may be recorded for quality assurance and training purposes. Privacy Policy.

CS 509 Design of Software Systems


  • B.S., Dartmouth College, 1989
  • M.S., Columbia University, 1990
  • Ph.D., Columbia University, 1996

Computer programming makes it possible to solve problems that otherwise could never be attempted. You can create worlds that could never be possible and help make this world a better place. Most of my professional and personal accomplishments were possible because of my understanding and practice of computer programming. For me, programming led me to appreciate fundamental concepts in Computer Science (CS) and directed me to major in CS. I've always been passionate about the possibilities of computer programming; this forms the basis for all of my teaching.

At WPI, I teach students about software engineering, which sets the standard of professional excellence and demonstrates how students can be "more than just programmers." These projects all revolve around a software development project whose complexity forces students to adopt best practices and grow professionally. In both my undergraduate and graduate classes, I am able to challenge students to complete tasks expected of software professionals in industry, and this lets me train them for whatever jobs await them.


Learn more about our Associate Professor, George T. Heineman