# CPSC 436C (Winter 2025 Term 1): Syllabus

2025-09-04 · https://fsgeek.ca/teaching/cpsc-436c-2025-winter-term-1/cpsc-436c-winter-2025-term-1-syllabus/

# CPSC 436C: Cloud Systems for Data Science

**Instructor:** Tony Mason (fsgeek@cs.ubc.ca)  
**Term:** Winter Term 1, 2025  
**Discord:** [Join Course Community](https://discord.gg/cpsc436c)  
**Office Hours:** Online (see Discord #office-hours channel)

## 📚 Course Philosophy: _Think, Design, Build, Critique_

This course mirrors the workflow of a modern cloud or data engineer. Rather than a tool-by-tool survey, we emphasize **problem-solving and design thinking**.

You will take on the role of **solution architect** , responsible for balancing trade-offs between cost, performance, security, and sustainability. Code serves as a proof-of-concept for your design.

We actively embrace Generative AI as a professional tool. You are encouraged to use AI assistants, but a central learning objective is the ability to **critically evaluate, refine, and secure AI-generated output**. You are the architect; AI is a tool in your belt.

## 🎯 Learning Outcomes

  * Analyze data-centric problems and design cost-effective, scalable, secure cloud architectures
  * Map problem components to appropriate cloud services based on constraints, not preferences
  * Critically evaluate design patterns, balancing cost, performance, security, and sustainability
  * Use Generative AI tools effectively while documenting and critiquing their outputs
  * Collaborate effectively through structured peer feedback and team formation
  * Communicate designs and trade-offs clearly via documentation and video presentations



## 📊 Assessment Structure

Component | Weight | Description  
---|---|---  
**Project Engagement** | 40% | Projects 1-3 including design, implementation, peer collaboration  
**Midterm Capstone Pitch** | 20% | Solo presentation (Week 6) - problem analysis & architecture  
**Bi-Weekly Check-ins** | 10% | Short reflections to maintain progress & metacognition  
**Capstone Project** | 30% | Final project with 5-7 min video presentation  
  
## 🚀 Project Progression

#### Project 1: Prediction API

**Weeks 3-5**

✦ **Solo work** (establish baselines)

✦ Serverless vs containers

#### Project 2: Batch Pipeline

**Weeks 6-8**

✦ **Optional groups**

✦ Cost budgets, infrastructure

#### Project 3: Real-time Anomaly

**Weeks 9-11**

✦ **Optional groups**

✦ 99.9% uptime requirements

#### Capstone Project

**Weeks 12-14**

✦ **Groups up to 5**

✦ Student-identified problems

## 🤖 AI Usage Policy

#### You are encouraged to use Generative AI tools with these conditions:

  * **Responsibility:** You are accountable for all errors introduced by AI
  * **Transparency:** Document all tools used, prompts, and modifications in your git repository
  * **Critical Evaluation:** Each reflection must address at least one AI failure mode encountered
  * **Attribution:** AI contributions must be clearly marked in your code and documentation



**Remember:** You are the architect; AI is a tool in your belt. Critical evaluation of AI output is a core learning objective.

## 📅 Key Dates

**Week 1** | Course Introduction & Systems Diagnostic  
---|---  
**Week 3** | Project 1 Launch (Solo)  
**Week 6** | MIDTERM: Capstone Pitch Presentations  
**Week 7** | Project 2 Launch (Optional Groups)  
**Week 9** | Project 3 Launch (Optional Groups)  
**Weeks 13-14** | Capstone Presentations & Guest Lectures  
  
## 🛠️ Required Setup

  1. **Cloud Account:** AWS or Azure (free educational credits provided)
  2. **Discord:** Join course server for technical support and collaboration
  3. **GitHub:** All projects require git repository with full commit history
  4. **Development Environment:** Python 3.13+ with virtual environment



## 📝 Course Iteration Notice

**Note:** This course has been newly restructured for this term. We will evaluate and adjust as necessary throughout the semester based on student feedback. Your input is valued and will help shape both this term and future iterations of the course.

## 💡 Success Tips

  * Start projects early - cloud services have learning curves
  * Use Discord actively - your peers are valuable resources
  * Document your AI usage from the beginning - it's easier than retrofitting
  * Think about your capstone project throughout the course
  * Embrace failure as learning - things will break, that's expected



Ready to become a cloud architect? Let's build something amazing together! 🚀

The following schedule is tentative and subject to change.

DATE| TOPIC| PRE-CLASS INFO| RECORDING| NOTES  
---|---|---|---|---  
2025/09/02| N/A| N/A| N/A| First day of classes; class is canceled for UBC Imagine.  
2025/09/04| Introduction| [Slides](/media/2025/09/2025-09-04-cpsc436c.pdf)| [YouTube](https://youtu.be/961lFIg4K7E)| Class Introduction  
2025/09/09| Demo Project| [Slides](/media/2025/09/2025-09-09-cpsc436c.pdf)| [YouTube](https://youtu.be/mDi3fqFTd_4)| Problem analysis, decomposition, and resolution.  
2025/09/11| Sample Design| [Slides](/media/2025/09/2025-09-11-cpsc436c-redux.pdf)| [YouTube](https://youtu.be/jy9sHtIfBmo)| Design of a link shortener  
2025/09/16| Information Control (Part 1)| [Slides](/media/2025/09/2025-09-16-cpsc436c.pdf)| |   
2025/09/18| Information Control (Part 2)| Slides| |   
2025/09/23| TBA| | |   
2025/09/25| TBA| | |   
2025/09/30| No Class| | |   
2025/10/02| TBA| | |
