• Have given courses in many aspects of computing (many undergraduate- and graduate-level university courses as well as a number of courses specifically tailored for Government and industry), such as computer architecture, software and circuit design, computer and graphics processing, formal methods and verification, as well as a variety of engineering, computer-science, and mathematics courses.  This direct experience on general-purpose computing