Engineering Sciences MS: Focus on Data Sciences

The MS in Engineering Sciences with a focus on Data Sciences program provides students with a core foundation in big data and analysis by obtaining knowledge, expertise, and training in data collection and management, data analytics, scalable data-driven discovery, and fundamental concepts.

About Data Sciences

This applied program trains students in the emerging and high demand area of data and computing sciences. In fact, many surveys of employment have highlighted the great need for suitably trained professionals in these areas, estimating deficits of personnel availability in only the US at as high as 150,000 a year.

Students will be trained in sound basic theory with an emphasis on practical aspects of data, computing and analysis. Graduates will be able to serve the analytics needs of employers and will be exposed to several areas of application. The degree can be specialized using electives and a project. Classes will be modestly sized and emphasize best classroom practices while employing online resources to reinforce the classroom experience.

Students in this program will need some prior knowledge of mathematics, statistics and computing (commensurate with that from an engineering/science/business undergraduate program, see below for detail). The program can be completed in one calendar year of study or spread out over two years of part-time study.

The University at Buffalo has responded aggressively to these trends by first establishing a doctoral program in Computational and Data Sciences. UB has been a research pioneer in these areas and faculty have much expertise and decades of experience and assets like the world leading Center for Computational Research with unmatched facilities for big computing and data.

Entrance Requirements

Some prior knowledge of mathematics, statistics and computing (commensurate with that from an engineering/science/business undergraduate program) is required.

  • Undergraduate Grade Point Average: Equivalent of a B average or better in a recognized undergraduate program; GRE: 300+ (may be waived for undergraduate degrees from accredited US/Canadian institutions or international institutions of repute)
  • Math: Calculus, Multivariate Calculus, Linear Algebra (e.g. UB course MTH 309)
  • Statistics: Basic Statistics and Probability
  • Computer Science: Programming (at least one language - C/C++/Python/Java), Data Structures (e.g. UB course CSE 113)

Students not meeting the Math/Stat/Computer Science prerequisites may request conditional admission and counselling on appropriate classes at UB or another appropriate local institution to be taken prior to starting program.

Degree Program Specifics

Students will take a combination of core courses (18 credits), electives (6 credits), a data science survey + capstone course (3 credits) and the data science project (3 credits) for a total of 30 credits.

The program may be completed in one calendar year of study or spread out over two years of part-time study.

Course Plan for Full-time Students

Fall semester – 4 core courses (Math and Stats Basics)

Spring semester – 3 core courses + 1 elective

Summer – 1 Data Science Survey course + 1 Project/Capstone

Course Requirements

Core courses  

Fall Semester: Data Science Basics

Introduction to Numerical Mathematics for Computing and Data Scientists (3 credits)
EAS 501 (new class - see description below)

Introduction to Probability Theory for Data Science (3 credits)
EAS 502 (new class - see description below)

Statistical Data Mining I (3 credits)
STA 545

Introduction to Probability Theory for Data Science (3 credits)
EAS 503 (new class - see description below)

Spring Semester: Data Analytics

Statistical Data Mining II (3 credits)
STA 546

Machine Learning for Data Science (3 credits) 
CSE 574

Elective 1 (3 credits)
See list below  

Databases (3 credits)
CSE 562

Summer Semester: Project and Survey

Data Science Survey Course**

Data Science Project***

** The Data Science Survey Course will  be offered every summer. It will include weekly modules on application-oriented and other relevant topics, including: data science for bioinformatics; data science for health informatics; data science for engineering applications; ethics and privacy; and data science for finance.

***Students will work with an affiliated faculty member on a Data Science Project. Projects will be sourced from industry where feasible.

New Course Descriptions

Note: New courses are being finalized for approval.

EAS 501 Introduction to Numerical Mathematics for Computing and Data Scientists*

The aim of this course is:

  • To develop the ability to formulate and solve problems using mathematical methods and tools
  • To apply knowledge gained in lower level mathematics courses
  • To introduce concepts and methods of linear algebra
  • To introduce a broad range of numerical methods
  • To develop and ability to identify, understand, and solve algebraic equations
  • To develop and ability to identify, understand, and solve differential equations
  • To develop experience with numerical and symbolic mathematical software and their use in problem solving

*Note: New course is being finalized for approval.

EAS 502 Introduction to Probability Theory for Data Science*

This course provides basic background on probability theory at a beginning graduate level. Topics include introductory probability concepts, discrete and continuous random variables and probability distributions, joint probability distributions, random sampling and data description, point estimation of parameters, random variables, derived probability distributions, discrete and continuous transforms and random incidence. As time permits, the course introduces elementary stochastic processes including Bernoulli and Poisson processes.

*Note: New course is being finalized for approval.

EAS 503 Programming Fundamentals for Data Scientists*

This course introduces students to computer science fundamentals for building basic data science applications. The course has two components. The first part introduces students to algorithm design and implementation in a modern, high-level, programming language (currently, Python). It emphasizes problem-solving by abstraction. Topics include data types, variables, expressions, basic imperative programming techniques including assignment, input/output, subprograms, parameters, selection, iteration, Boolean type, and expressions, and the use of aggregate data structures including arrays. Students will also have an introduction to the basics of abstract data types and object-oriented design. The second part covers regression analysis and introduction to linear models. Topics include multiple regression, analysis of covariance, least square means, logistic regression, and nonlinear regression. The students learn to implement the regression models as a computer program and use the developed application to analyze synthetic and real world data sets.

*Note: New course is being finalized for approval.


Two out of the following courses can be selected as electives.

CSE 589 Data Intensive Computing

CSE 562 Databases

EAS XXX (new class) Exploratory Data Analysis and Visualization

CSE 535 Information Retrieval

CSE 573 Computer Vision             

CSE 601 Data Mining for Bioinformatics  

CSE 610 Deep Learning

CSE 740 Machine Learning and Big Data

CSE 674 Advanced Machine Learning


STA 517 Categorical Data Analysis

STA 546 Statistical Data Mining II  

STA 567 Bayesian Statistics


MAE XXX (new class) Simulation Analytics

MAE XXX (new class) Data in Manufacturing

MAE 609 High Performance Computing


IE 575 Stochastic Methods

IE 535 Human Computer Interaction


EE 634 Principles of Information Theory and Coding


MTH 558/559 Mathematical Finance