Computer engineer
Career Goals
After 25 years in academia, I returned to my roots in engineering and joined the Front-Line Care R&D division of Baxter, Inc. where I am presently an Engineering Specialist.
My background spans most of the discipline of computing and was cultivated through years of teaching undergraduate and graduate level courses, research and development, past work experience, and consulting projects.
Thomas H. Briggs, Ph.D.
Computer Engineer
717-467-3005
Email:
Address:
203 Whitmer Road
Shippensburg, PA 17257
Phone:
Background
Ever since that day in elementary school, when I got my hands on a brand new Radio Shack TRS80, I was hooked. I am a coder, and find great joy in tackling some complex problem and expressing it in language, for fun or for profit. Check out my GitHub for some projects I've worked on. Recently, I found a broken TRS80. I was able to redesign a power supply, and bring it back to life.
​
I was an early Linux evangelist. I started using Linux with the Soft-Landing-System, released 0.99 PL3 in 1992. Back then, Linux was downloaded as a bunch of floppy disks. I've been using it ever since. As a student, I even ran a Linux server, cutter, for the campus. We ran the first web server on campus, served thousands of users, and had 40 to 50 people logged on to a 486-33MHz! Amazing by today's standards.
​
Most academics focus on their primary research areas, chase grants, and publish a bunch of papers. Sometimes they're useful. I've never been interested in that. I've been fortunate to be able to reinvent myself, moving into new research areas as the situation demanded. Board layouts in Allegro are about as far from computer theory and machine learning as one gets. But I've always enjoyed that challenge, and find great satisfaction at coming up with innovative solutions that draw on all of the different backgrounds I've practiced.
EXPERIENCE
2021 - Present
Engineering Specialist
Baxter, Inc.
Platform architect for next-generation patient monitors. Work with other cross-functional subject matter experts to design, develop, and deploy embedded software for medical device.
2017 - 2021
Professor
2010 - 2017
Associate Professor
2001 - 2010
Assistant Professor
Shippensburg University of Pennsylvania
Teach diverse range of graduate and undergraduate computer science & engineering courses. Created B.Sc. engineering programs in computer, software, electrical, mechanical, and civil engineering, the first engineering programs in all of PA State System of Higher Education. Program coordinator for computer engineering, led effort to earn ABET accreditation. Created and managed the "Fab Lab," a rapid-prototyping facility for circuit board fabrication, surface-mount and BGA rework, testing, and programming; and SLA, SLS resin and nylon 3D printing.
2008 - 2010
Senior Engineer
Microtech Solutions, llc.
Senior engineer in charge of development team. Built embedded applications and hardware for customer. Held TS/SCI clearance.
1999 - 2002
Academic Information &
Technical Services Manager
Shippensburg University of Pennsylvania
Developed and maintained University web sites and services. Managed web development team. Participated in strategic planning teams, including enrollment management teams. Developed and maintained specialized data warehouse, including: extraction, transmission, and conversion of mainframe data to UNIX environment. Developed and maintained secure self-service web based information portals for students, faculty, and staff. Provided strategic information technology support the Academic Affairs division of the University.
1997 - 1999
Regional Hub Administrator
Shippensburg University of Pennsylvania
Overall administration and maintenance of the statewide distributed integrated library information systems. Developed system software to manage or automate system processes. Participated in fiscal planning and creation of project budget. Maintained system security, performance, and distributed networked backups. Liasioned with system vendors and client institutions. Maintained Oracle database server, web servers, and large list servers. Provided technical support services.
1993 - 1997
Library Automated Systems Manager
Shippensburg University of Pennsylvania
Developed and maintained GUI front-end to Unisys mainframe. Maintained network and computer systems. Managed student workers. Administered UNIX application server, NetWare file server, and cluster of UNIX workstations. Administered electronic reference databases. Participated planning and creation of project budget. Coordinated consortial purchase of electronic reference databases
1990 - 1992
Systems Administrator
Joseph Ciccone & Sons, Inc.
Systems administrator for multi-company heavy-highway contractor. Managed AIX midrange and PC file server. Developed applications for interfacing to accounting system.
EDUCATION
2002 - 2008
Doctor of Philosophy
Computer Science
Dissertation: Constraint Generation and Reasoning in OWL
Graduated with honors.
1997 - 2001
Shippensburg University
Master of Science
Computer Science
1993 - 1996
Bachelor of Science
Computer Science
Shippensburg University
Systems Programming Concentration, Member of ACM Programming Team
SKILLS
Linux Kernel Programming - Advanced
MIPS, Intel, ARM Assembly - Advanced
OrCAD / Allegro - Advanced
Verilog - Advanced
Machine Learning - Advanced
Bayesian Belief Networks - Advanced
Semantic Web - Expert
Support Vector Machines - Advanced
Algorithms & Analysis - Advanced
Agile Project Management - Advanced
SQL / DBMS - Expert
Xilinx ISE & Vivado - Advanced
TEACHING
Computer & Electrical Engineering Courses
​
CMPE210 - Network Engineering
CMPE220 - Computer Organization
CMPE230 - Computer Security
CMPE320 - Operating Systems
CMPE322 - Microcontrollers
CMPE410 - Realtime & Mobile Development
CMPE411 - Advanced Operating Systems
CMPE420 - Digital & Reconfigurable Computing
CMPE499 - Engineering Development
ELEC100 - Programming for Engineers
ELEC422 - High-Speed Circuits
ENGR110 - Modeling & Simulation
​
Computer Science Courses
​
CPS253 - Computer Science I​
CPS254 - Data Structures and Abstract Data Types
CSC103 - Overview of Computer Science
CSC106 - Computer Science1 Lab
CSC110 - Computer Science 1
CSC111 - Computer Science II
CSC180 - Microcomputer BASIC
CSC220 - Computer Organization
CSC254 - Computer Science II
CSC310 - Design & Analysis of Algorithms
CSC320 - Operating Systems
CSC371 - Database Management Systems
CSC394 - Special Topics - Semantic Web
CSC394 - Special Topics - Computational Music
CSC420 - Embedded & Realtime
CSC434 - Web Programming
CSC447 - Operating Systems
CSC476 - Artificial Intelligence
CSC499 - Student Research & Design
CSC500 - Discrete Structures
CSC520 - Computer Architectures
CSC521 - Operating Systems
CSC546 - Artificial Intelligence
CSC560 - Database Management Systems
CSC594 - Semantic Web
​
Projects
General Projects​
​
-
GSuiteGAL - Plugin for MS-Outlook to link/synchronize a Google GSuite global addresses into an Outlook personal address book.
-
QuizExtractor - Extract SCORM quizzes from camtasia and create import files for D2L or GradeScope.
Embedded & Hardware Projects
-
BLDC Controller - Sensorless (Back-EMF) BLDC controller with soft-start. Includes PIC32 code and OrCAD schematics.
-
I2C Controller in Verilog - A simple I2C controller in Verilog I developed for my YouTube channel.
-
Image2Gerb - Convert B&W images to Gerber files.
-
MIPS Pipeline Visualizer - A basic pipeline simulator for the MIPS32 5-stage processor.
-
NanoKernel - A simple, bootable kernel written in mixed Assembly/C project and labs to explore building a kernel from scratch.
- NetClocks - Convert cheap LED display to programmable, networked clock to display emergency messages.
- NixieClock - Board design for the Nixie tube clock a built for my desk.
-
OLED - OLED demo project with text font for PIC32.
-
UART Library - IRQ driven UART code to handle standard I/O in Microchip PIC32 projects.
-
USB Charger - USB 2.0 charger designed to go into a blue, British police phone box model and flash an LED proportional to the charging current.
-
Railroad Signaling - A railroad signal controller for the Shippensburg RR Museum.
-
ShipCells - Virtuso VLSI cell library from the high-speed circuits class.
-
TivaC USB Creator - Fill out the form, it writes the .c and .h file for the Tiva C USB library.
AI & Machine Learning Projects
​
-
Clustering - A brute-force & spring-force implementation of clustering for unsupervised preprocessing.
-
CompositeKernel - An evoluationary algorithm for finding the best linear combination of kernels for SVM classification.
-
ConnectFour AI - An Connect-N player using minimax search with alpha-beta pruning.
-
JPDomainBuilder - Determines least-common-subsumer for the domains of each proper in an OWL ontology.
-
Knowledger - A FOL reasoner using Horn clause and skolemization written in Java.
-
mex-svm - a MATLAB "C" wrapper for the native SVM Light classifier and regression tool.
-
Search - An abstract implementation of the Russell & Norvig state space search algorithms in Java.
RESEARCH AND PUBLICATION
Doctoral Dissertation
You can read my doctoral dissertation [UMBC] [Here]
You can also read my master's thesis [Here]
Embedded Textbook
A work in-progress, I've written 14 chapters over > 700 pages on embedded programming. [Sample Chapter on GPIO]
Publications
More than 30+ journal and conference papers published. [Full List]
Corporate Publications
Publications that have been adopted by industry partners. [Full List]
Grants
More than $500,000 in grants to support teaching and undergraduate student research. [Full List]
Research Projects
Advised 30+ students in undergraduate and graduate research across a diverse spectrum of projects. [Full List]
Invited Speakerships
Invited speakerships to present to a variety of audiences. [Full List]