Fundamentals of Cloud Computing and OpenAI with Microsoft Azure

Harvard Extension School

CSCI E-94

Section 1

CRN 25152

Begin Registration
This course offers a comprehensive introduction to cloud and serverless computing, focusing on Microsoft Azure's key services and Azure's artificial intelligence (AI) platform. We contrast the challenges and benefits of cloud computing, serverless cloud computing, and traditional self-managed cloud and on-premises solutions. Students learn the fundamental architecture and design patterns necessary to build geographically distributed, highly available, and scalable solutions using key services in the Microsoft Azure platform. Students learn about the OpenAI offerings in Azure and how to responsibly leverage them in their cloud-native solutions, with hands-on experience in prompt engineering, fine tuning, and embedding. We cover the costs and benefits of each and how to pragmatically apply them. Students engage in hands-on learning architecting secure, scalable, geo-redundant, and cost-effective infrastructure and deploying that infrastructure to Microsoft Azure using infrastructure as code via the Bicep language. Students learn approaches for building solutions that gracefully degrade when non-essential functionality is unavailable. Students learn to implement defense in depth using network segmentation (VNETs) and additional best practices. A wide range of Microsoft Azure Services are covered including Azure Front Door, Azure App Services, Azure App Configuration, KeyVault, Azure SQL, Azure API management; serverless services including Azure Functions, and Azure Logic Applications; Microsoft Entra ID (formerly Azure Active Directory) for enterprise identity management; Azure B2C for low-cost identity management on consumer-centric software-as-a-service offerings; and Azure Storage, Azure Service Bus, Azure Event Grid, Azure Event Hub, Azure Cosmos database, and Azure Cognitive Search. In addition to Azure services and guidance, the course covers implementing processes to streamline development, such as continuous integration, continuous deployment (CICD), and automated testing. Students also learn how to test their applications and infrastructure at scale using Azure Load Testing. Coverage includes always-up architecture and deployment strategies, rollback strategies, A/B testing, testing in production, monitoring, distributed tracing, alerting, performance tuning, snapshot debugging in production, and health analysis using Application Insights and Azure Monitor. Additionally, students learn strategies and architecture for ensuring data sovereignty concerns are addressed in their solutions.

Instructor Info

Joe Ficara, ASEE

Lead Architect, The Predictive Index


Meeting Info

Th 6:30pm - 8:30pm (1/27 - 5/17)

Participation Option: Online Asynchronous or Online Synchronous

In online asynchronous courses, you are not required to attend class at a particular time. Instead you can complete the course work on your own schedule each week.

Deadlines

Last day to register: January 23, 2025

Additional Time Commitments

Optional sections to be arranged.

Prerequisites

Basic C#, C++, Python, or Java development skills. CSCI E-10a or the equivalent. This course involves a substantial amount of programming in C# and cross platform.NET (6 or above).

Notes

This course meets via web conference. Students may attend at the scheduled meeting time or watch recorded sessions asynchronously. Recorded sessions are typically available within a few hours of the end of class and no later than the following business day.

Syllabus

All Sections of this Course

CRN Section # Participation Option(s) Instructor Section Status Meets Term Dates
25152 1 Online Asynchronous, Online Synchronous Joseph Ficara Open Th 6:30pm - 8:30pm
Jan 27 to May 17