Complement your Penn Engineering degrees with an Online Graduate Certificate in a rapidly expanding field. Our certificates in Data Science and Software Systems will give you the opportunity to dive deeper into critical areas of computer science, while our  certificate in Computer Science in Fundamentals will get you started with the basics of programming.

These for-credit credentials for Penn Engineering degree program alumni will give you a distinct advantage when seeking growth in your career.

Courses & Policies

The Online Graduate Certificate from Penn Engineering Online is a for-credit credential that will produce an academic transcript and paper certificate. To earn a certificate, students can take a maximum of four (4) course units. Two of these four course units may be double-counted from your Penn Engineering graduate degree program.

Students may earn a maximum of two certificates. No course may be triple counted, i.e., counted for more than two credentials.

While most individuals will complete the Online Graduate Certificate program within one year, students may choose to extend their studies. In this case, all Certificate requirements must be met within a maximum of two years.

*Note: Degree students will receive first priority for course registration.

Data Science Online Graduate Certificate Courses

The Data Science certificate allows you to take a deeper dive into cutting-edge topics within the field of data science, equipping you to explore and solve some of society’s greatest challenges. 

CIS 5150 Fundamentals of Linear Algebra & Optimization (Math for Machine Learning)

CIS 5150

Fundamentals of Linear Algebra & Optimization (Math for Machine Learning)

There are hardly any machine learning problems whose solutions do not make use of linear algebra. This course presents tools from linear algebra and basic optimization that are used to solve various machine learning and computer science problems. It places emphasis on linear regression, data compression, support vector machines and more, which will provide a basis for further study in machine learning, computer vision, and data science. Both theoretical and algorithmic aspects will be discussed, and students will apply theory to real-world situations through MATLAB projects.

Pre-Requisites

Calculus (Chapters 8, 9, 10, and 48 of Schaum’s Outlines of Calculus fifth edition by Frank Ayers and Elliott Mendelssohn) Suggested: Undergraduate course in linear algebra (helpful but not required), Chapters 1 through 3 of Schaums Outline of Linear Algebra, fourth version by Seymour Lipschitz and Marc Lipson

CIS 5210 Artificial Intelligence

CIS 5210

Artificial Intelligence

This course investigates algorithms to implement resource-limited knowledge-based agents which sense and act in the world. Topics include: search, machine learning, probabilistic reasoning, natural language processing, knowledge representation and logic. After a brief introduction to the language, programming assignments will be in Python.

Pre-Requisites

CIT 5910, CIT 5920, CIT 5940, and CIT 5960

CIS 5300 Natural Language Processing

CIS 5300

Natural Language Processing

This course provides an overview of the field of natural language processing. The goal of the field is to build technologies that will allow machines to understand human languages. Applications include machine translation, automatic summarization, question answering systems, and dialog systems. NLP is used in technologies like Amazon Alexa and Google Translate.

Pre-Requisites

CIT 5910 Introduction to Software Development, CIT 5920 Mathematical Foundations of Computer Science , and CIT 5940 Data Structures & Software Design. Recommended: CIT 5960

CIS 5450 Big Data Analytics

CIS 5450

Big Data Analytics

In the new era of big data, we are increasingly faced with the challenges of processing vast volumes of data. Given the limits of individual machines (compute power, memory, bandwidth), increasingly the solution is to process the data in parallel on many machines. This course focuses on the fundamentals of scaling computation to handle common data analytics tasks. You will learn about basic tasks in collecting, wrangling, and structuring data; programming models for performing certain kinds of computation in a scalable way across many compute nodes; common approaches to converting algorithms to such programming models; standard toolkits for data analysis consisting of a wide variety of primitives; and popular distributed frameworks for analytics tasks such as filtering, graph analysis, clustering, and classification.

Pre-Requisites

CIT 5910 Introduction to Software Development or equivalent programming experience; Broad familiarity with probability and statistics, as well as programming in Python; Additional background in statistics, data analysis (e.g., in Matlab or R), and machine learning is helpful (example: ESE 5420 Statistics for Data Science: An Applied Machine Learning Course)

CIS 5500 Database & Information Systems

CIS 5500

Database & Information Systems

Structured information is the lifeblood of commerce, government, and science today. This course provides an introduction to the broad field of information management systems, covering a range of topics relating to structured data, from data modeling to logical foundations and popular languages, to system implementations. We will study the relational data model; SQL; database design using the Entity-Relationship model and relational design theory; transactions and updates; efficient storage of data; indexes; query execution and query optimization; and “big data” and NoSQL systems.

Pre-Requisites

CIT 5910 Introduction to Software Development, CIT 5920 Mathematical Foundations of Computer Science | Knowledge of Javascript & Web Development (HTML, CSS) is recommended. | Recommended Corequisite: CIT 5960 Algorithms & Computation

CIS 5810 Computer Vision & Computational Photography

CIS 5810

Computer Vision & Computational Photography

This is an introductory course to computer vision and computational photography. This course will explore four topics: 1) image feature detection, 2) image morphing, 3) image stitching, and 4) deep learning related to images. This course is intended to provide a hands-on experience with interesting things to do on images/pixels. The world is becoming image-centric. Cameras are now found everywhere: in our cell phones, automobiles, and even in medical surgery tools. In addition, computer vision technology has led to innovations in areas such as movie production, medical diagnosis, biometrics, and digital library. This course is suited for students with any engineering background who have a basic understanding of linear algebra and programming, along with plenty of imagination.

Pre-Requisites

CIT 5910 Introduction to Software Development, CIT 5920 Mathematical Foundations of Computer Science, CIT 5930 Introduction to Computer Systems and CIT 5940 Data Structures & Software Design. Students may take CIT 5950 Computer Systems Programming and/or CIT 5960 Algorithms & Computation concurrently with this elective.

DATS 5750 Cloud Technologies Practicum (.5 CU)

DATS 5750

Cloud Technologies Practicum (.5 CU)

Cloud computing is the heart of modern digital applications. This course provides practical, hands-on knowledge and understanding of distributed computing principles to design and develop applications that utilize public clouds such as Google Cloud, Amazon Web Services, Azure, etc. The course will cover cloud infrastructure services for computing, storage, networking, data analytics, machine learning, and modern application development. Students will learn to architect and implement complex applications utilizing different cloud infrastructure components to engineer robust, scalable solutions across practical industry use cases.

Pre-Requisites

CIT 5910, CIT 5920, CIT 5930, CIT 5940, and CIT 5950

EAS 5740 How to Use Data (.5 CU)

EAS 5740

How to Use Data (.5 CU)

This 0.5 CU course is an excellent introduction for those who want to learn about the mechanics of data, performing data analysis to gain insights, applying data science techniques to make predictions, and applying data analytics to answer questions and to address interesting business problems. Students will learn how to interpret and frame business problems to be addressed by analytics. The course will also cover different elements of the data analytics process, including data wrangling and cleaning, data exploration and descriptive analytics, data modeling, machine learning, predictive analytics, data visualization and the presentation of analysis and insights using data storytelling. While we will touch upon essential theoretical and technical concepts, our primary focus in this course will be on the practical application of data skills.

WATCH COURSE PREVIEW HERE

Pre-Requisites

CIT 5910

EAS 5850 Imaging Informatics (.5 CU)

EAS 5850

Imaging Informatics (.5 CU)

This 0.5 CU course provides a comprehensive introduction to the field of imaging informatics, with a focus on radiology as the clinical imaging domain. Students will learn about the importance of informatics to the clinical practice of radiology, the unique types of data encountered, relevant data and transactional standards, the growing role of artificial intelligence in radiology, and the challenges faced by imaging informaticists around the globe. This course is geared to any student interested in imaging informatics, and does not require prior training or experience in medicine or medical imaging. Homework assignments include synthesizing reading content and preparing written responses, managing radiology data though coding, and using generative AI to explore health literacy.

WATCH COURSE PREVIEW HERE

Pre-Requisites

CIT 5910, CIT 5920, and CIT 5940

ESE 5410 Machine Learning for Data Science

ESE 5410

Machine Learning for Data Science

In this course, students will learn a broad range of statistical and computational tools to analyze large datasets. This course provides a solid foundation of data science, statistics and machine learning to make data-driven predictions via statistical modeling and inference. Using case studies and hands-on exercises, the student will have the opportunity to practice and increase their data analysis skills using Python. The objective of these case studies is to identify and implement appropriate modeling and analysis techniques in order to extract meaningful information from large datasets.

Pre-Requisites

CIT 5920 Mathematical Foundations of Computer Science, Programming background, Basic Probability

ESE 5420 Statistics for Data Science

ESE 5420

Statistics for Data Science

The course covers the methodological foundations of data science, emphasizing basic concepts in statistics and learning theory, but also modern methodologies. Learning of distributions and their parameters. Testing of multiple hypotheses. Linear and nonlinear regression and prediction. Classification. Uncertainty quantification. Model validation. Clustering. Dimensionality reduction. Probably approximately correct (PAC) learning. Such theoretical concepts are further complemented by exemplar applications, case studies (datasets), and programming exercises (in Python) drawn from electrical engineering, computer science, the life sciences, finance, and social networks.

Pre-Requisites

CIT 5920 Mathematical Foundations of Computer Science, Programming background, Basic Probability

Software Systems Online Graduate Certificate Courses

The Software Systems certificate is ideal for those who would like a deeper dive into the tools and protocols that many modern software systems utilize. Backend developers aiming to expand their expertise and tackle challenging software design problems in large-scale development will particularly benefit.

CIS 5470 Software Analysis

CIS 5470

Software Analysis

This course provides a rigorous and hands-on introduction to the field of software analysis — a body of powerful techniques and tools for analyzing modern software, with applications to systematically uncover insidious bugs, prevent security vulnerabilities, automate testing and debugging, and improve our confidence that software will behave as intended. Topics covered include dynamic analysis, random testing, automated test generation, dataflow analysis, constraint solving, type inference, and symbolic execution. Lectures present software analysis concepts and algorithms in a language-independent manner, while weekly programming labs involve realizing them concretely in C++ using the LLVM compiler infrastructure. This course will enable you to become a better software engineer or security analyst by learning a rich repertoire of software analysis ideas and know-how to apply them to specific scenarios in practice.

Pre-Requisites

CIT 5920 Mathematical Foundations of Computer Science, CIT 5940 Data Structures & Software Design, CIT 5950 Computer Systems Programming. Specifically: Assignments involve programming in C++ using the LLVM compiler infrastructure. Lectures and exams presume basic knowledge of algorithms (e.g. graph traversal and asymptotic analysis) and basic background in logic (e.g. set theory and boolean algebra).

CIS 5490 Wireless Communications for Mobile Networks and Internet of Things

CIS 5490

Wireless Communications for Mobile Networks and Internet of Things

This course covers today’s state-of-the-art wireless technology 4G LTE, the next-generation wireless technology, 5G NR, and Wi-Fi technologies. Internet of Things (IoT) and the network slicing technologies in the 4G and 5G mobile networks, which are the parts of the main drivers for 5G, and the Docker container and Kubernetes will be also covered. Students will use an end-to-end LTE and Wi-Fi application performance simulation platform to analyze network protocols and analyze the impact on end-to-end application performance over the wireless network. Students will also build a simple IoT service with an IoT client device emulator and a real IoT server platform on the Internet. The course starts with the fundamental wireless technology background and networking topics with hands-on projects to help students build a foundation for the course, and the course includes contemporary research paper readings, assignments to utilize the simulation platform and implementation projects. The simulation platform provides network protocol stacks and base source code.

Pre-Requisites

CIT 5930 Introduction to Computer Systems and CIT 5950 Computer Systems Programming

CIS 5510 Computer & Network Security

CIS 5510

Computer & Network Security

This is an introduction to topics in the security of computer systems and communication on networks of computers. The course covers four major areas: fundamentals of cryptography, security for communication protocols, security for operating systems and mobile programs, and security for electronic commerce. Sample specific topics include: passwords and offline attacks, DES, RSA, DSA, SHA, SSL, CBC, IPSec, SET, DDoS attacks, biometric authentication, PKI, smart cards, S/MIME, privacy on the Web, viruses, security models, wireless security, and sandboxing. Students will be expected to display knowledge of both theory and practice through written examinations and programming assignments.

Pre-Requisites

CIT 5920 Mathematical Foundations of Computer Science; CIT 5930 Intro to Computer Systems; CIT 5950 Computer Systems Programming

CIS 5530 Networked Systems

CIS 5530

Networked Systems

This course provides an introduction to fundamental concepts in the design and implementation of networked systems, their protocols, and applications. Topics to be covered include: Internet architecture, network applications, addressing, routing, transport protocols, peer-to-peer networks, software-defined networks, and distributed systems. The course involves regular quizzes, two large group-based networked systems implementation projects, and two written exams.

Pre-Requisites

CIT 5950 Computer Systems Programming; Data structures and basic probability. Course projects require knowledge of C/C++.

CIS 5550 Internet and Web Systems

CIS 5550

Internet and Web Systems

This course focuses on the issues encountered in building Internet and Web systems, such as scalability, interoperability, consistency, replication, fault tolerance, and security. We will examine how services like Google or Amazon handle billions of requests from all over the world each day, (almost) without failing or becoming unreachable. We will study how to collect massive-scale data sets, how to process them, and how to extract useful information from them, and we will have a look at the massive, heavily distributed infrastructure that is used to run these services (and similar cloud-based services) today.

An important feature of the course is that we will not just discuss issues and solutions but also provide hands-on experience, using web search as our case study. There will be several substantial implementation projects throughout the semester, each of which will focus on a particular component of the search engine, such as frontend, storage, crawler, or indexer. The final project will be to build a Google-style search engine, and to deploy and run it on the cloud.

Notice that this is NOT a course on web design, or on web application development! Instead of learning how to use a web server such as Apache or a scalable analytics system such as Spark, we will actually build our own little web server, and a little mini-“Spark”, from scratch. As a side effect, you will learn about some aspects of large-scale software development, such as working with APIs and specifications, thinking about modularity, reading other people’s code, managing versions, and debugging.

Pre-Requisites

CIT 5950 Computer Systems Programming. Suggested: CIS 5470 Software Analysis, CIS 5490 Wireless Communications for Mobile Networks and Internet of Things, CIS 5510 Computer & Network Security, CIS 5530 Networked Systems, or CIT 5820 Blockchains & Cryptography (or any course that has students write a substantial program)

DATS 5750 Cloud Technologies Practicum (.5 CU)

DATS 5750

Cloud Technologies Practicum (.5 CU)

Cloud computing is the heart of modern digital applications. This course provides practical, hands-on knowledge and understanding of distributed computing principles to design and develop applications that utilize public clouds such as Google Cloud, Amazon Web Services, Azure, etc. The course will cover cloud infrastructure services for computing, storage, networking, data analytics, machine learning, and modern application development. Students will learn to architect and implement complex applications utilizing different cloud infrastructure components to engineer robust, scalable solutions across practical industry use cases.

Pre-Requisites

CIT 5910, CIT 5920, CIT 5930, CIT 5940, and CIT 5950

EAS 5830 Blockchains (.5 CU)

EAS 5830

Blockchains (.5 CU)

This course introduces the technology that powers blockchains like Bitcoin and Ethereum. We will cover the key cryptographic tools that enable blockchains – collision-resistant hash functions and digital signature schemes. We’ll learn about the architecture of different blockchains, their consensus mechanisms, economics and how to interact with them. The assignments in this course are primarily coding-based. We will learn to read and write from the blockchain using Python libraries and write our own smart contracts in Solidity. At the end of this course, students should understand the power and limitations of blockchain technology, and be able to develop software that interacts with current blockchain platforms.

Coding languages: Python, Solidity

WATCH COURSE PREVIEW HERE

Pre-Requisites

CIT 5910, CIT 5920

Computer Science Fundamentals Graduate Certificate Courses

Designed specifically for students without a background in computer science, the Computer Science Fundamentals Online Graduate Certificate follows the core curriculum of our highly regarded online Master of Computer and Information Technology degree (MCIT Online), teaching the basics of computer programming.

One (1) Required Course
CIT 5910 Introduction to Software Development

CIT 5910

Introduction to Software Development

This course is an introduction to fundamental concepts of programming and computer science for students who have little or no experience in these areas. Includes an introduction to programming using Python, where students are introduced to core programming concepts like data structures, conditionals, loops, variables, and functions. Also provides an introduction to basic data science techniques using Python. The second half of this course is an introduction to object-oriented programming using Java, where students are introduced to polymorphism, inheritance, abstract classes, interfaces, and advanced data structures. Students will also learn how to read and write to files, connect to databases, and use regular expressions to parse text. This course includes substantial programming assignments in both Python and Java, and teaches techniques for test-driven development and debugging code.

Pre-Requisites

No Pre-Requisites

Three (3) courses from the following list:
CIT 5920 Mathematical Foundations of Computer Science

CIT 5920

Mathematical Foundations of Computer Science

This course introduces students to math concepts that form the backbone of the majority of computer science. Topics covered include sets, functions, permutations and combinations, discrete probability, expectation, mathematical induction, and graph theory. The goal of the course is to ensure that students are comfortable enough with the math required for most of the CIS electives.

Pre-Requisites

There are no college-level prerequisites for this class. However, reviewing the algebra learned in high school will be very useful. No prior programming background is expected nor will this course assign any programming exercises.

CIT 5930 Introduction to Computer Systems

CIT 5930

Introduction to Computer Systems

This course provides an introduction to fundamental concepts of computer systems and computer architecture. Students learn the C programming language and an instruction set (machine language) as a basis for understanding how computers represent data, process information, and execute programs.

Pre-Requisites

This course does not have prerequisites, but CIT 5910 Introduction to Software Development is a co-requisite.

CIT 5940 Data Structures & Software Design

CIT 5940

Data Structures & Software Design

This course focuses on data structures, software design, and advanced Java. The course starts off with an introduction to data structures and basics of the analysis of algorithms. Important data structures covered include arrays, lists, stacks, queues, trees, hash maps, and graphs. The course also focuses on software design and advanced Java topics such as software architectures, design patterns, and concurrency.

Pre-Requisites

Students in this course are expected to have completed or waived CIT 5910 Introduction to Software Development.

CIT 5950 Computer Systems Programming

CIT 5950

Computer Systems Programming

This course is a continuation of CIT 5930 and introduces students to fundamental concepts in computing systems. The course is divided into two parts. The first half of the course introduces important concepts in modern operating systems: processes, scheduling, caching, and virtual memory. The second half of the course provides an introduction to fundamental concepts in the design and implementation of networked systems, their protocols, and applications. The course will use the C program language, and will develop your knowledge on C system calls, and libraries for process/thread creation and manipulation, synchronization, and network communication.

Pre-Requisites

CIT 5930

CIT 5960 Algorithms & Computation

CIT 5960

Algorithms & Computation

This course focuses primarily on the design and analysis of algorithms. It begins with sorting and searching algorithms and then investigates graph algorithms. In order to study graph algorithms, general algorithm design patterns like dynamic programming and greedy algorithms are introduced. A section of this course is also devoted to understanding NP-Completeness.

Pre-Requisites

CIT 5920 | Co-requisite: CIT 5940 (Taking concurrently is allowed but taking beforehand is preferred)

Eligibility

Penn Engineering alumni are eligible to apply for Online Graduate Certificates. Current students may start the application for an Online Graduate Certificate during their last semester as a degree student and must graduate from their degree program before becoming an Online Graduate Certificate student.  Below is a guide to show which Certificate students are eligible for based on their Penn Engineering major:

Data Science Online Graduate Certificate open to graduates of:

  • All Penn Engineering Majors
    • MSE-DS students are not eligible due to overqualification

Computer Science Fundamentals Online Graduate Certificate open to graduates of:

  • All Penn Engineering Majors
    • CS undergraduate students are not eligible due to overqualification
    • MSE-DS, MCIT, and MSE in CIS programs are not eligible due to overqualification

Application

In order to register for an Online Graduate Certificate, Penn Engineering Online applicants will need to submit documentation through the application portal. The application consists of:

Personal Statement

In one to two paragraphs, please:

  • Explain how an Online Graduate Certificate will benefit you.
  • Write out a course plan for which courses (if any) will be double-counted from your Penn Engineering degree and which courses you are planning to take for the certificate and in which terms you plan to take them.

Unofficial Penn Engineering Transcript

Scan a copy of your official transcript or download a pdf from Path@Penn (Penn InTouch for Spring 2022 and earlier graduates).

Application Deadlines

Summer 2024Fall 2024Spring 2025
Application Form OpensJanuary 3, 2024April 8, 2024August 5, 2024
Application Form ClosesMarch 28, 2024June 28, 2024November 28, 2024
Decision NotificationRollingRollingRolling
Confirmation Form DueApril 19, 2024July 12, 2024December 2, 2024
Orientation StartsApril 2024July 2024December 4, 2024
Classes BeginMay 2024August 2024January 2024

Note: Admission decisions will be released no more than 30 days after your application form is submitted.

Costs

2023–2024

Academic Year Costs*

Tuition$3,330 per course unit
Online Services Fees$150 per course unit
*Tuition and fees are posted as a guide and will be adjusted on a yearly basis.

**Half Credit Courses are billed at half tuition and half fees.

***Online Graduate Certificates are not eligible for federal financial aid.

Experience

Discover more about the Penn Engineering Online learning experience and what you can expect from virtual learning.

Online Graduate Certificate students will have access to the same resources as Penn Engineering Online degree students and continue their access to Penn Alumni services

Frequently Asked Questions

Can I get a student visa through a Penn Engineering Online degree program or certificate course?

No, we cannot sponsor visas for students because these programs and courses are based entirely online.

Can I begin an Online Graduate Certificate and apply to a Penn Engineering Online Degree?

Students may begin one of the above Online Graduate Certificates and may be eligible to apply to a Penn Engineering Degree under the following conditions:

  • Have completed a maximum of two Online Graduate Certificate course units
  • Have received a grade of B or higher in the Online Graduate Certificate course units

Note: Students may NOT apply to a degree program once they have completed three or more Online Graduate Certificate course units. 

I am a current Penn Engineering degree student; when may I begin applying for the Online Graduate Certificate Programs?

Current Penn Engineering students may begin the Graduate Certificate application process in the final term of their degree program.

Can I complete an Online Graduate Certificate after I graduate from my Penn Engineering degree and then apply to the Dual Degree program with MSE-DS Online?

Yes. However, students can never triple-count a course and only a maximum of four course units can be brought into MSE-DS for the Dual Degree. With this, you would still be completing six course units for the MSE-DS degree.

If I do not complete an Online Graduate Certificate, can I apply to the Dual Degree program with MSE-DS Online?

Yes. However, please review all Dual Degree policies for MSE-DS degree completion and double counting courses on the Dual Degree webpage. At least six MSE-DS Online course units must be taken as a MSE-DS Online student. Only four course units from your prior Penn Engineering graduate programs (degree or certificate) may transfer in.

Contact Us

Jacquie Panto

Email: lifelonglearning@seas.upenn.edu

Please email us for more information about Online Graduate Certificates with Penn Engineering Online.
Request Info