Backend Development and Databases

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

Course Details
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
Batch Start Date End Date
I September 1 2025 January 11, 2026
II November 9, 2025 March 21, 2026
III January 11, 2026 May 02, 2026
IV February 15, 2026 June 06, 2026
Course Outline
Part 1
Week Topics Assessment
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 Topics Assessment
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

This course introduces the fundamentals of SQL (Structured Query Language) and relational databases. Students will learn how to create, read, update, and delete data in a relational database using SQL. The course covers basic SQL commands, data types, and database design principles.

Objectives of this course

This course is designed to provide students with a solid foundation in SQL and relational databases. Students will learn how to write SQL queries, create and modify database tables, and perform basic data analysis using SQL. By the end of this course, students will have a solid understanding of SQL and be able to apply their knowledge to real-world problems.

Course Details
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
Batch Start Date End Date
I July 21, 2025 September 28, 2025
II November 8, 2025 February 13, 2026
III January 10, 2026 March 20, 2026
IV February 14, 2026 May 01, 2026
V March 21, 2026 June 05, 2026
Course Outline
Part 1
Week Topics Assessment
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 Topics Assessment
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 offers a comprehensive introduction to the fundamentals of Python programming. Over the span of eight weeks, students will learn core programming concepts and gain hands-on experience with Python through both functional and object-oriented approaches.

Key topics include variables, data types, control structures, functions, classes, and error handling, providing a strong foundation for understanding how modern software is built. The course is designed not only to teach syntax but also to cultivate problem-solving skills and logical thinking, which are essential for a successful career in software development.

Objectives of this course

By the end of the course, students will be able to write clean, efficient Python code and will have the confidence to begin exploring more advanced programming topics or real world projects.

Course Details
Course Code sop-webfb-101
Course Duration 8 weeks
Cost Free for Batch A and B, USD 25 From Batch C
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
Batch Start Date End Date
I July 7, 2025 August 31, 2025
II September 1, 2025 October 26, 2025
III November 7, 2025 January 29, 2026
IV January 9, 2026 March 5, 2026
V February 13, 2026 April 16, 2026
VI March 20, 2026 May 21, 2026
VII May 01, 2026 June 25, 2026
Course Outline
Week Topics Assessment
Week 1 - Introduction to Python – 6:38
- Python Variables and the print statement – 13:27
- Python Datatypes – 6:03
Assignment 1
Week 2 - Python Operators - 18:53
- Number, Boolean, and casting in Python - 6:12
Week 3 - Python Strings - 10:22
- Python List - 13:34
- Python Tuple - 10:19
- Set - 11:48
- Dictionary -15:01
Assignment 2
Week 4 - Python Conditional Statement, The range function, and the Match statement - 12:14
- Python Loops & Writing Efficient Code - 18:38
- Python Error handling and raising exceptions - 9:20
Week 5 - Python Functions, args, and kwargs - 17:03
- Lambda Function, User input and List Comprehension - 8:48
Assignment 3
Week 6 - Python user-defined Modules - 4:54
- Python basic file handling - 10:33
- Managing resources, Python context manager - 10:10
- Python Iterator and Generator - 10:18
Week 7 - Python built-in function 13:41
- Python built-in Modules - 13:56
Week 8 - Python Object Oriented Programming, Instance Method, and Date Module - 16:10
- Python Object Inheritance -23:56
Final Exam
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.

Course Details
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
Batch Start Date End Date
I
Course Outline

Part 1 : PHP Basics

Week Topics Assessment
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
Week 8 Part 2: Advanced Topics
- Regular Expressions
- Superglobals
Final Exams : 100% Due at the end of week 8