Hide Advanced Options
Courses - Spring 2026
ENPM
Engineering, Professional Masters Department Site
ENPM604
Machine Learning Techniques Applied to Cybersecurity
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM808R or ENPM604.
Formerly: ENPM808R.
Focuses on applying machine learning techniques to cybersecurity, and includes labs to be done independently, as well as an overview of the latest machine learning algorithms and their application to cyber. A brief overview of which techniques should be applied to particular cyber problems will be provided, and the course culminates in students researching the latest applications of Machine learning to cyber, allowing the students to each develop a niche of expertise in that specific subtopic. As such, the students should be increasingly employable in their area of cyber expertise by industries searching for solutions to their cyber problem space.
ENPM605
Python Applications for Robotics
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM809E or ENPM605.
Formerly: ENPM809E.
This hands-on course will look at the use of Python 3 with the Robot Operating System (ROS) in order to control a mobile robot in Gazebo simulated environments.
ENPM611
Software Engineering
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Competency in one programming language is required, Python preferred.
Software engineering concepts, methods, and practices important to both the theorist and the practitioner will be covered. The entire range of responsibilities expected of a software engineer are presented. The fundamental areas of requirements development, software design, programming languages, and testing are covered extensively. Sessions on supporting areas such as systems engineering, project management, and software estimation are also included.
ENPM625
Heating, Ventilation and Air Conditioning of Buildings
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Undergraduate thermodynamics, fluid mechanics and heat transfer.
Fundamentals of heating, ventilation and air conditioning analysis and design. Thermodynamics, heat transfer and fluid mechanics principles applied to field problems. Quantitative analyses stressed. Topics include psychometrics, thermal loads, incompressible flow in ducts and pipes, heat exchangers, cooling towers, and refrigeration.
ENPM634
Penetration Testing
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Familiarity with Linux and Windows operating systems, as well as TCP/IP and basic networking concepts.
Credit only granted for: ENPM809Q or ENPM634.
Formerly: ENPM809Q.
This course will give students a hands-on deep dive into penetration testing tools and methodologies. Starting with reconnaissance, open source intelligence, and vulnerability scanning we will move on to exploiting both clients and servers, moving laterally through a network while evading security measures.
ENPM637
Managing Software Engineering Projects
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM808E or ENPM637.
Formerly: ENPM808E.
Addresses the breadth of managing software engineering projects. It will help in transforming inspiring software engineers to software project leaders. The course will impart advanced principles, methods and tools for management of software projects in a realistic software engineering context. A hybrid project management will be taught with more focused on Agile Project Management paradigms. The course will also impart a cutting-edge scalable, modular, and integrated patterns of the Scaled Agile Framework (SAFe) 4.0 for the software engineering program and portfolios management. In addition, the course will also instill DevOps best practices to build much more responsible organizations that can move quickly in ever-changing circumstances. Methods for managing and optimizing the software development process are discussed along with techniques for performing each phase of the systems development lifecycle.
ENPM650
Solar Thermal Energy Systems
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Undergraduate level courses in thermodynamics, heat transfer, and fluid mechanics, at least one semester each.
Covers a review of related fundamentals, including limitations imposed by thermodynamics, solar spectral characteristics, measurement, and analytical models to predict solar irradiance with respect to time, location and orientation. The course will then examine the characteristics of various components in solar thermal systems with particular emphasis on flat plate and concentrating collectors, fixed and tracking collector systems, heat exchangers and thermal storage to understand how they work and how their performance is influenced by their design. The course will then lead to an examination of systems and system performance, including system design, predicted energy savings and related economics. The course will introduce low temperature applications such as solar hot water, space heating and water distillation, as well as concentrating solar energy for solar thermo-chemical processes to produce hydrogen and solar power generation systems. A project of importance to the development of Solar Thermal Power Systems will be assigned.
ENPM661
Planning for Autonomous Robots
Credits: 3
Grad Meth: Reg, Aud
Planning is a fundamental capability needed to realize autonomous robots. Planning in the context of autonomous robots is carried out at multiple different levels. At the top level, task planning is performed to identify and sequence the tasks needed to meet mission requirements. At the next level, planning is performed to determine a sequence of motion goals that satisfy individual task goals and constraints. Finally, at the lowest level, trajectory planning is performed to determine actuator actions to realize the motion goals. Different algorithms are used to achieve planning at different levels. This graduate course will introduce planning techniques for realizing autonomous robots. In addition to covering traditional motion planning techniques, this course will emphasize the role of physics in the planning process. This course will also discuss how the planning component is integrated with control component. Mobile robots will be used as examples to illustrate the concepts during this course. However, techniques introduced in the course will be equally applicable to robot manipulators.
ENPM664
(Perm Req)
Embedded System Hacking and Security
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Prior programming experience, familiarity with computer architectures and reading assembly.
Restriction: Must have permission of Maryland Applied Graduate Engineering.
Credit only granted for: ENPM809I or ENPM664.
Formerly: ENPM809I.
The purpose of this course is to reveal the tools, techniques and procedures (TTPs) employed by adversaries to exploit and subvert the security of embedded systems. This course will cover the core concepts and techniques to analyze and characterize the behavior of embedded systems and platforms. Concepts will be introduced and discussed within the context of an adversary intent on altering or subverting the behavior of such systems. The course does not expect students to have any prior embedded systems experience.
This course requires the purchase of a kit. Information will be provided by the department when permission is requested.
ENPM665
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM809J or ENPM665.
Formerly: ENPM809J.
Covers the fundamentals of securing cloud-based workloads from the ground up with many hands-on examples. Through these hands-on exercises the course will demonstrate where the similarities and differences are when securing the cloud compared to securing traditional IT.
ENPM670
Energy Audits for Decarbonization and Sustainability Enhancement
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Prior knowledge of undergraduate basic thermodynamics and heat transfer.
Recommended: Knowledge of electrical systems and controls is desirable.
Provides students with fundamentals and applications of energy audit, modeling, and management in building energy systems. It will cover key definitions, units, the supply/demand fundamentals for the various energy sources, the challenges of decarbonization (across several sectors), drivers of energy demand in the buildings sector (residential, commercial, manufacturing), energy audit procedures for various types of systems, economics/life-cycle costing and more. Students will gain experience conducting energy audits through real-world project(s), different modeling tools (e.g. System Advisor Models), and data sources necessary to conduct core analyses across sectors will be covered.
ENPM671
Advanced Mechanics of Materials
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Undergraduate level knowledge of mechanics of materials.
Formulate and quantitatively state the mechanical/physical responses of structural components and configurations subjected to loads, temperature, pre-strains etc. The two methods of anlysis employed are the mechanics of materials approach and the theory of elasticity approach. Analysis and design of components of structural/machine systems as experienced in aeronautical, civil, mechanical and nuclear engineering.
ENPM673
Perception for Autonomous Robots
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Must have completed or be concurrently enrolled in ENPM661; and must have proficiency in a programming language.
Recommended: Familiarity with Python.
Restriction: Permission of Maryland Applied Graduate Engineering (MAGE).
This course offers a foundation in computer vision. Students will learn techniques and algorithms that can be used to solve an abundance of perception problems. This course is dedicated to anyone interested in giving their autonomous system (e.g., robot, autonomous driving car, or simply a smart camera) means to understand their surrounding world. Throughout the projects of this course students will gain hands-on experience in solving real-life problems such as lane detection for autonomous driving, computing velocities of moving objects, and building a 3D model of an object using 2D images from cameras. Moreover, students will gain experience with state-of-the-art tools such as programming using OpenCV, Python and introduction to Machine Learning using PyTorch.
ENPM686
Information Assurance
Credits: 3
Grad Meth: Reg, Aud
The first half of lectures provides an overview of cybersecurity. One third of these lectures focuses on the fundamentals of cybersecurity like authentication, access control, and security models. The second third focuses on the practice of cybersecurity using Unix and Windows NT as case studies. The last third is dedicated to security in distributed systems including network security, and World Wide Web security. The second half of the lectures focuses on the information assurance process. First, information assets are enumerated and classified. Second, the main vulnerabilities and threats are identified. Third, a risk assessment is conducted by considering the probability and impact of the undesired events. Finally, a risk management plan is developed that includes countermeasures involving mitigating, eliminating, accepting, or transferring the risks, and considers prevention, detection, and response.
ENPM690
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Proficiency in at least one commonly used programming language (e.g., C++, Python, Java), CMSC422 (Intro to Machine Learning) or equivalent.
Credit only granted for: ENPM808F or ENPM690.
Formerly: ENPM808F.
Machine learning may be used to greatly expand the capabilities of robotic systems, and has been applied to a variety of robotic system functions including planning, control, and perception. Adaptation and learning are particularly important for development of autonomous robotic systems that must operate in dynamic or uncertain environments. Ultimately we would like for the robots to expand their knowledge and improve their own performance through learning while operating in the environment (on-line and/or lifelong learning). This graduate course will explore the application of machine learning techniques, paradigms, and control design to robotic systems, focusing primarily on key useful representations and model building techniques for application in non-stationary robotic systems.
ENPM691
Hacking of C programs and Unix Binaries
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: ENEE150 or equivalent.
Teaches the fundamentals of secure programming in C. An in depth discussion on various security vulnerabilities (e.g., buffer overflows) in C applications will be taught with hands-on demo of concepts during the class. Students will learn how a C program runs "under-the-hood". The course will teach nitty-gritty of C programs by analyzing at the assembly level. The course discusses best practices (e.g., coding standards) and design principles for secure programming so that security can be built-in during design time. In addition to assignments, students are required to present papers related to this course.
ENPM692
Manufacturing and Automation
Credits: 3
Grad Meth: Reg, Aud
Credit only granted for: ENPM808P or ENPM692.
Formerly: ENPM808P.
Covers automation and product realization, digital factories, and disruptive manufacturing technologies. The role of additive manufacturing, sustainability, and performance simulation in selected manufacturing scenarios will be explored alongside automation strategies for rapid product development.
ENPM693
Credits: 3
Grad Meth: Reg, Aud
Prerequisite: Networks & Protocols course or equivalent knowledge, and basic programming knowledge.
Credit only granted for: ENPM808N or ENPM693.
Formerly: ENPM808N.
Introduction to various approaches to design security protocols used in data networks; familiarization with some current technologies. Security threats and countermeasures, communication security and basic encryption techniques, authentication protocols, data confidentiality and integrity, analysis of cryptographic protocols, and access control in large systems and networks.
ENPM701
(Perm Req)
Autonomous Robotics
Credits: 3
Grad Meth: Reg, Aud
Restriction: Permission of Maryland Applied Graduate Engineering.
Credit only granted for: ENPM809T or ENPM701.
Formerly: ENPM809T.
This is a hands-on course exploring the principles of robotic autonomy. Students will explore the theoretical, algorithmic, and implementation aspects of autonomous robotic modeling and controls, perception, localization and SLAM, planning, and decision making. These techniques will be applied through completion of a semester-long hands-on project employing the course material, ground-based mobile robots, and Python.
This course requires the purchase of a robotics kit.
ENPM808
(Perm Req)
Advanced Topics in Engineering
Credits: 1 - 3
Grad Meth: Reg, Aud
Independent study project on a topic relevant to their academic program, supervised by a University of Maryland, College Park faculty member. Requires application and approval.
ENPM808V
Advanced Topics in Engineering; Quality Management Systems and Lean Six Sigma
Credits: 3
Grad Meth: Reg, Aud
This course delves into Quality Management Systems and Lean Six Sigma, offering a comprehensive understanding of quality principles, CMMI QMS, and Six Sigma DMAIC methodology. Participants will learn to develop Six Sigma projects, perform statistical analysis, create control charts, and conduct root cause analysis. Additionally, students will master the use of statistical distributions and hypothesis testing for quality improvement, as well as regression analysis and acceptance testing. By the course's end, attendees will be well-equipped to drive quality enhancements and process optimization within their organizations.
ENPM809G
Special Topics in Engineering; Network Data Science
Credits: 3
Grad Meth: Reg, Aud
This course will introduce methods for analyzing and understanding the structure and function of networks, including social networks, web graphs, and sensor networks. The course will introduce students to the math and science of network analysis. Through real world examples, including analysis of their own networks, students will develop skills for describing and understanding the structure, patterns, and functionality of networks. Students will read classic and cutting-edge articles and booksabout these topics and discuss their applicability to various network types. The class will culminate with a capstone project in which students will apply the analysis methods they have learned to understand a particular question about a network they choose.
ENPM818E
Variable Topics in Engineering; Software/Product Engineering 360: The Business of Engineering
Credits: 3
Grad Meth: Reg, Aud
This course will introduce the various software/product business functions that drive and generate revenue for the business such as product management, product marketing, go-to-market, customer success, finance, product design, product operations and analytics, legal, etc. For each business function, key responsibilities, purpose, concepts and tools and techniques will be covered and the theory will be amplified with case-studies, industry speakers and a group project.
ENPM818G
Variable Topics in Engineering; Embedded Systems Hardware
Credits: 3
Grad Meth: Reg, Aud
Basics of logic designs leading to design of processors, memory, communication ports as well as multiprocessor systems enriched with design examples. Topics include embedded system modeling, hardware description languages (Verilog), dedicated hardware designs, and single-core, multi-core, and accelerator processing elements. Real-life embedded systems hardware design examples will be used throughout the course to illustrate these concepts and to prepare students for a future career inembedded systems design.
ENPM818J
Variable Topics in Engineering; (Real Time) Operating Systems
Credits: 3
Grad Meth: Reg, Aud
This course covers the real time system operating systems and its main components. From understanding its applications in daily life, business, space, academia, etc. This course will carry some good examples for each section. Topics include RTOS Introduction, Process, Task and Threads, Scheduling, Concurrency, Memory Management, Virtual Memory, File Systems and I/O, Device Drivers, Virtual Machines, Basics of Dockers and CPU and Memory Benchmarking. Course will end with a final group project. Course format includes lectures, homework, Quizzes, Two midterms, final project and exam. Course carries a perfect blend of theory and programming practices to prepare students for core application development with Realtime OS. Students will acquire not only technical knowledge, but also soft skills such as collaborations, critical thinking, and time management.
ENPM818K
Variable Topics in Engineering; Embedded System and IoT Security
Credits: 3
Grad Meth: Reg, Aud
As the deployment of embedded systems, IoT devices, and intelligent edge technologies continues to expand, the scope for security breaches and potential attacks also increases. Whether it's a compact IoT thermostat in a home or a complex interconnected system, each connected device presents one or more potential vulnerabilities that malicious actors can exploit. With countless devices already connected and an even greater number on the horizon, ensuring the security of these devices and safeguarding the generated data becomes an absolute necessity. In this course, our primary focus is on studying the security of embedded systems and IoT. Throughout the course, we extensively address current security challenges and their corresponding solutions, spanning hardware, software, architectural, and network domains inherent to both embedded systems and IoT landscapes. The core principles of cryptography and its practical applications within interconnected embedded systems will be covered. Additionally, the course will conduct a thorough exploration of specific attack scenarios such as Spectre and Meltdown, gaining a comprehensive grasp of the contemporary strategies employed by modern embedded systems to mitigate these vulnerabilities. The overarching objective of this course is to provide students with a solid foundational understanding of security within the realm of embedded systems and the expansive scope of the IoT.
ENPM818N
Variable Topics in Engineering; Cloud Computing
Credits: 3
Grad Meth: Reg, Aud
This course provides an in-depth exploration of cloud computing concepts, technologies, and applications. Students will learn about the fundamentals of cloud computing, its architecture, deployment models, and various services offered by major cloud providers. Practical hands-on exercises and real-world case studies will enable students to apply their knowledge to develop and deploy applications in the cloud. Overall, students will gain a comprehensive understanding of cloud computing concepts, technologies, and best practices, enabling them to design, implement, and manage applications and services in cloud environments.
ENPM818O
(Perm Req)
Variable Topics in Engineering; Networks and Protocols for Cloud Engineering
Credits: 3
Grad Meth: Reg, Aud
Restriction: Permission of Maryland Applied Graduate Engineering.

This course lays the foundation for networking principles and protocols applicable for cloud engineers. Starting with an introduction to layered architecture of data networks and introduces the concept of protocols and services of TCP/IP networks. It then progresses to provide details of operation of each layer of the protocol stack. These include detailed discussion on error detection, reliable data transfer, Local Area Networks (LANs), multiple access protocols, routing algorithms, flow control and congestion control mechanisms. Students will also learn 5G wireless data networks and protocols as it pertains to cloud access, including Internet of Things (IoT) protocols, Software Defined Networking, Network Function Virtualization concepts, IP Multicast and Mobile IP. As part of the course work, the students will learn how to capture and analyze real world network traffic.
ENPM818Q
Variable Topics in Engineering; Python Programming for Cloud Engineering
Credits: 3
Grad Meth: Reg, Aud
Python Programming for Cloud Engineering provides a comprehensive and practical introduction to Python programming, specifically tailored for applications in cloud-centric environments. The course begins with foundational programming concepts such as data types, control structures, functions, and modular code design, establishing a strong base in problem-solving with Python. It then progresses to more advanced topics including object-oriented programming (OOP), exception handling, and file operations, enabling students to build structured and maintainable code.Students will explore Python s scientific libraries Numpy, Scipy, and Matplotlib to perform data manipulation, analysis, and visualization tasks. The course also introduces essential skills in database programming and network development using TCP/UDP sockets. In the final phase of the course, students gain hands-on experience developing dynamic, full-stack web applications using frameworks like Flask and Django, while learning how to integrate these applications with cloud infrastructure and services.
ENPM818T
(Perm Req)
Variable Topics in Engineering; Data Storage and Databases
Credits: 3
Grad Meth: Reg, Aud
Restriction: Permission of Maryland Applied Graduate Engineering.
ENPM818V
Variable Topics in Engineering; 5G Advanced Communication Networks and Devices, System Designs and Protocols
Credits: 3
Grad Meth: Reg, Aud
This course provides an in-depth understanding of advanced technologies and design principles used in 5G mobile and IoT networks and devices based on 3GPP Standards. The course covers 4G/LTE and LTE-M, Narrow BandIoT (NB-IoT) and 5G New Radio (NR) and NR-Lite standards, as well as their advanced features for new vertical applications and evolution toupcoming 6G systems.