Backend Development and Databases
Foundations of Software Development
Course Description

This course explores principles of software development, architectural patterns, testing, algorithms, data structures, and time complexity. Throughout the course, we will closely examine systematic thinking and problem-solving to generate optimized code, especially when dealing with large datasets.

Objectives of this Course

Students build a foundation for creating optimized and well-designed systems. Additionally, it addresses technical solutions to common challenges in job interviews.
This course and its examples are done in Python. Experience in JavaScript is also welcomed

Foundations of Software Development
  • Course Code: sop-webfd-104
  • Course Duration: 15 weeks
  • Cost: USD 120
  • Commitment: 12-15 hrs./week
  • Tools Needed: A stable internet connection for streaming videos is needed. (a Device [Phone, Tablet, or PC])
  • Prerequisite Course: Python Fundamentals – SOP-WEBFB-101
  • Weighted grade distribution:
    - Passing Grade: 80% of total grades
    - Assignments: 60% total grades
    - Quizzes: 20% total grades
    - Final Exam: 20% total grades
  • Batches
    1. Start Date: June 23, 2025
      End Date: October 5 , 2025

    2. Start Date: October 6, 2025
      End Date: February 15, 2026

Course Outline

Part 1 :

  • Week 1 :
    - Introduction, Arrays, and Algorithm
    - Bubble Sort, Implementation, and Time Complexity
    Assignment 1 : - Due at the end of week 3
  • Week 2:
  • - Selection Sort, Implementation, and Time complexity
    - Insertion Sort, Implementation, and Time complexity
  • Week 3:
  • - Quick Sort, Implementation, and Time Complexity
    - Counting Sort, Implementation, and Time Complexity
    Assignment 2 : - Due at the end of week 5
  • Week 4:
  • - Radix Sort, Implementation, and Time Complexity
    - Merge Sort, Implementation, and Time Complexity
  • Week 5:
  • - Linear Search and Time Complexity
    - Binary Search and Time Complexity
    Assignment 3 : – Due at the end of week 7
    Quiz 1: Due at the end of Week 7
  • Week 6:
  • - Linked Lists, Types, and Operations
  • Week 7:
    - Stacks and Queues
  • Assignment 4: Due at the end of Week 9

Part 2:

  • Week 8:
    - Hash Tables
    - Hash Sets
    - Hash Maps
  • Week 9:
    - Tree Data Structure
    - Binary Trees and Preorder Traversals
    - In-order and post-order traversals
    Assignment 5 : Due at the end of Week 11
    Quiz 2: Due at the end of Week 12
  • Week 10:
    - Array Implementation of Binay Trees
    - Binary Search trees
  • Week 11:
    - Graph Data Structure, Implementation, and Traversal
    Assignment 6 : Due at the end of Week 14
  • Week 12:
    - The Shortest Path Problem
  • Week 13:
    - The minimum spanning Tree Problem
  • Week 14:
    - The Maximum Flow Problem
    Final Exam - Due at the end of Week 15
  • Week 15 :
    - SDLC model and Phases
    - Design Principles (Modularity, reusability, scalability)
    - Architectural Patterns (Layered Architecture, Microservices, event-driven architecture)
    - Software Testing
  • Build tools
  • Coding Style
  • Version Control
  • API Testing
SQL Fundamentals Section
Course Description

Objectives of this Course

SQL Fundamentals Section
  • Course Code: sop-webfb-103
  • Course Duration: 10 weeks
  • Cost:USD 50
  • Commitment: 10 – 12 hrs./week
  • Tools Needed: A PC with a Modern Operating System to install MySQL workbench or XAMPP Server to use PhpMyAdmin
  • Prerequisite Course: None
  • Weighted grade distribution: Passing Grade: 80%
    - Assignments: 60%
    - Quizzes: 20%
    - Final Examination: 20%
  • Batches
    1. Start Date: August 25, 2025
      End Date: November 2 , 2025

    2. Start Date: November 3, 2025
      End Date: February 8 , 2026

Course Outline

Part 1 :

  • Week 1 :
    - Introduction to Relational Database Management System
    - Querying Data
    - Sorting Data

    Assignment 1 : Due at the end of Week 2
  • Week 2:
    - Filtering Data

    Assignment 2 : Due at the end of Week 3
  • Week 3:
    - Joining Tables
    - Grouping Data

    Assignment 3 : Due at the end of week 4
  • Week 4:
    - Subqueries
    - Set Operations

    Quiz 1 : Due at the end of week 5
  • Week 5:
    - Creating Databases
    - Table Datatypes

    Assignment 4 : Due at the end of week 6
  • Week 6:
    - Tables and Constraints
    - Operations on Tables

    Assignment 5 : Due at the end of week 8
  • Week 7:
    - Modifying Data

Part 2:

  • Week 8:
    - Views
    - Indexes

    Quiz 2 : Due at the end of Week 9
  • Week 9:
    - Administration 1

    Final Examination: Due at the end of Week 10
  • Week 10: Administration 2
    -
Python Fundamentals Section
Course Description

This course covers Python's fundamental topics. We will explore Python from functional and object-oriented perspectives and discuss the key concepts that will help us launch our careers in software development.

Objectives of this Course

This course is designed to help students learn the fundamentals of Python programming. Students will learn how to write Python code, use Python libraries, and build simple applications using Python. By the end of this course, students will have a solid understanding of Python programming and be able to apply their knowledge to real-world problems.

Python Fundamentals Section
  • Course Code: sop-webfb-101
  • Course Duration: 8 weeks
  • Cost: Free
  • Commitment: 10 – 12 hrs./week
  • Tools Needed: A stable internet connection for streaming videos is needed. (a Device [Phone, Tablet, or PC])
  • Prerequisite Course: Understanding Programming and Software Development – SOP-TECH-101
  • Weighted grade distribution:
    - Passing Grade: 80%
    - Assignments: 70%
    - Final Examination: 30%
  • Batches
    1. Start Date: June 23, 2025
      End Date: August 17, 2025

    2. Start Date: August 18, 2025
      End Date: October 12, 2025

    3. Start Date: October 13, 2025
      End Date: December 7, 2025

    4. Start Date: January 5, 2026
      End Date: March 1, 2026

    5. Start Date: March 2, 2026
      End Date: May 3, 2026

Course Outline
  • Week 1 : Introduction
    - Installation
    - Syntax and comments
    - Comments and Variables
    - Datatypes
    Assignment 1: 20% Due at the end of week 3
  • Week 2:
    - Operators
    - Number
    - Casting
    - Boolean
  • Week 3:
  • - String and String Methods
    - Collection Types
    Assignment 2: 25% Due at the end of week 5
  • Week 4:
  • - Conditional Statement
    - Error Handling
    - Loops
  • Week 5:
  • - Functions
    - Lamba
    - User Input
    Assignment 3: 25% Due at the end of week 7
  • Week 6:
  • - File Handling
    - Modules
    - Managing Resources
    - Generators
    - Iterators
  • Week 7:
  • - Built-in functions
    - Inbuilt modules
  • Week 8:
    - Date
    - Python JSON
    - Object Oriented Programming
    Final Exam: 30% Due at the end of week 8
PHP Fundamentals
Course Description

This course introduces fundamental programming concepts. We will use PHP, a general-purpose, open-source scripting language, as our backend scripting language. A basic understanding of HTML, CSS, and JavaScript is required to take this course. PHP is a recursive acronym for Hypertext Preprocessor. PHP version for this course: PHP 8.4

Objectives of this Course

This course is designed to provide students with a solid foundation in PHP programming. Students will learn how to create dynamic web pages, work with databases, and develop web applications using PHP.

PHP Fundamentals
  • Course Code: sop-webfb-102
  • Course Duration: 8 Weeks
  • Cost:UDS 50
  • Commitment: 10 – 12 hrs./week
  • Tools Needed:
  • Prerequisite Course: Frontend Development with HTML 5, CSS 3, and JavaScript
  • Weighted grade distribution: Passing Grade: 80%
    - Assignments: 60%
    - Quiz: 20%
    - Final Examination: 20%
  • Batches
    1. Batch 1: August 25, 2025 - October 19, 2025

    2. Batch 2: October 20, 2025 - January 11, 2026

    3. Batch 3: January 12, 2026 - March 8, 2026

    4. Batch 4: March 9, 2026 - May 10, 2026

Course Outline

Part 1 : PHP Basics

  • Week 1 :
    - Introduction - Installation
    - Syntax and comments
    - Comments and Variables

    Assignment 1 : 20% Due at the end of week 3
  • Week 2:
    - Datatypes
  • Week 3:
    - String and String Methods
  • Assignment 2 : 20% Due at the end of week 5
  • Week 4:
    - Numbers, Casting, and Math
  • Quiz : 10% due at the end of week 4
  • Week 5:
    - Constants
    - Magic constants
    - Operators
  • Assignment 3 : 20% Due at the end of week 7
  • Week 6:
    - Conditional Statement
    - Switch
    - Loops
  • Week 7:
    - Functions
    - Arrays

Part 2: Advanced Topics

  • Week 8:
    - Regular Expressions
    - Superglobals

    Final Exams : 100% Due at the end of week 8