Skip to content

Backend development curriculum from roadmaps.sh

Notifications You must be signed in to change notification settings

ellenfel/backend.sh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Backend Development Curriculum

Comprehensive Backend Curriculum with Python

1. Introduction to Python

- Topics:
  - Python Basics (variables, data types, operators)
  - Control Structures (if-else, loops)
  - Functions and Modules
  - Error Handling
- Project:
  - Simple Calculator

2. Object-Oriented Programming (OOP)

- Topics:
  - Classes and Objects
  - Inheritance
  - Polymorphism
  - Encapsulation
- Project:
  - Library Management System

3. Data Structures and Algorithms

- Topics:
  - Lists, Tuples, Sets, Dictionaries
  - Stacks, Queues, Linked Lists
  - Searching and Sorting Algorithms
  - Recursion
- Project:
  - Implement a Custom Data Structure (e.g., Priority Queue)

4. Web Development with Flask

- Topics:
  - Introduction to Flask
  - Routing and Views
  - Templates and Static Files
  - Forms and User Input
  - Database Integration with SQLAlchemy
- Project:
  - Blog Application

5. Database Management

- Topics:
  - SQL Basics (CRUD operations)
  - Database Design and Normalization
  - Using SQLite/PostgreSQL with Python
  - ORMs (Object-Relational Mappers)
- Project:
  - Inventory Management System

6. RESTful API Development

- Topics:
  - REST Principles
  - Building APIs with Flask-RESTful
  - Authentication and Authorization
  - API Documentation (Swagger/OpenAPI)
- Project:
  - E-commerce API

7. Asynchronous Programming

- Topics:
  - Introduction to Asyncio
  - Async/Await Syntax
  - Asynchronous Web Frameworks (e.g., FastAPI)
- Project:
  - Real-time Chat Application

8. Testing and Debugging

- Topics:
  - Unit Testing with unittest/pytest
  - Mocking and Patching
  - Debugging Techniques
- Project:
  - Test Suite for Previous Projects

9. Deployment and DevOps

- Topics:
  - Containerization with Docker
  - CI/CD Pipelines
  - Deployment on Cloud Platforms (e.g., AWS, Heroku)
- Project:
  - Deploy a Flask Application to Heroku

10. Advanced Topics

- Topics:
  - Microservices Architecture
  - GraphQL with Python
  - WebSockets
  - Security Best Practices
- Project:
  - Microservices-based Application

Project Suggestions

Beginner Projects

  1. Task Tracker: Build a CLI app to track your tasks and manage your to-do list.
  2. GitHub User Activity: Use GitHub API to fetch user activity and display it in the terminal.
  3. Expense Tracker: Build a simple expense tracker to manage your finances.
  4. Number Guessing Game: Build a simple number guessing game to test your luck.
  5. Unit Converter: Unit converter to convert between different units of measurement.
  6. Personal Blog: Build a personal blog to write and publish articles on various topics.
  7. Blogging Platform API: Build a RESTful API for a personal blogging platform.
  8. Todo List API: Build a RESTful API to allow users to manage their to-do list.
  9. Weather API: Build a weather API that fetches and returns weather data.
  10. Expense Tracker API: Build an API for an expense tracker application.

Intermediate Projects

  1. Caching Proxy: Build a caching server that caches responses from other servers.
  2. Markdown Note-taking App: Build a note-taking app that uses markdown for formatting.
  3. URL Shortening Service: Build a URL Shortener API that helps shorten long URLs.
  4. Broadcast Server: Build a server that can broadcast messages to connected clients.
  5. E-Commerce API: E-Commerce platform with cart and payment gateway integration.
  6. Workout Tracker: App to let users track their workouts and progress.
  7. Image Processing Service: Build a service that allows users to upload and process images.

Advanced Projects

  1. Scalable E-Commerce Platform: Build an e-commerce platform using microservices architecture.
  2. Movie Reservation System: Build a system that allows users to reserve movie tickets.
  3. Real-time Leaderboard: Create a real-time leaderboard system for ranking and scoring.
  4. Database Backup Utility: Build a database backup utility that can backup and restore any DB.

This curriculum covers fundamental to advanced topics in backend development with Python, along with practical projects to reinforce learning.

About

Backend development curriculum from roadmaps.sh

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published