Cademy logoCademy Marketplace

Course Images

Python for Software Engineering Bootcamp

Python for Software Engineering Bootcamp

  • 30 Day Money Back Guarantee
  • Completion Certificate
  • 24/7 Technical Support

Highlights

  • On-Demand course

  • 41 hours 6 minutes

  • All levels

Description

Learn how to build and test APIs and web services, which form the foundation of most software engineer work with the help of this carefully structured beginner's level course. You will be learning all of this in Python, one of the world's most popular and widely used programming languages.

Python is a high-level, general-purpose programming language. Its design philosophy emphasizes code readability with the use of significant indentation. This hands-on course will help you become a skilled software engineer with no prior programming experience needed. You will start by learning the basics of Python such as variables, strings, Booleans, lists, tuples, dictionaries, generators, and so on as well as learning to write the first service test. Furthermore, you will learn to send requests in Python and understand how to modify permissions. You will also be able to explore Docker and SQL and learn to set up a local PostgreSQL Server. You will learn how to create tables using query results. Moving further in the course, you will learn to integrate databases into your application and create database models in Python. You will be introduced to Redis and learn data compression. You will also get to know how to set up a GitHub desktop, and clone a repository as well as GitHub CLI. You will wrap up the course by having a look at threading in Python, multiprocessing pool, and async wait statements. By the end of this course, you will feel comfortable with developing applications, have a portfolio item, and be ready to apply for software engineer positions and take on those technical interviews. All resources and code files are placed here: https://github.com/PacktPublishing/Python-for-Software-Engineering-Bootcamp-

What You Will Learn

Learn to write proper and clean Python code
Learn to develop APIs in Python
Learn to write scalable applications in Python
Learn to interact with databases in code
Learn to add caching to your code
Learn to properly test your code

Audience

This course is for complete beginners who want to learn how to program and become software engineers. No prior programming experience is needed, you will learn everything you will need to know on the course.

Approach

This is a well-structured, hands-on, and comprehensive course for beginners. Real-time scenarios and use cases are explained, which will come in handy in the future. In this course, you will also learn how to contribute to open-source projects and build your online presence to build credibility.

Key Features

Understand the skills required to work as a software engineer with the help of 40+ hours of premium content * Learn to use Docker to build containerized applications * Understand how to use GitHub to automatically test and deploy code

Github Repo

https://github.com/PacktPublishing/Python-for-Software-Engineering-Bootcamp-

About the Author

Maximilian Schallwig

Maximilian Schallwig is a data engineer and a proficient Python programmer. He holds a bachelor's degree in physics and a master's degree in astrophysics. He has been working on data for over five years, first as a data scientist and then as a data engineer. He can talk endlessly about big data pipelines, data infrastructure, and his unwavering devotion to Python. Even after two unsuccessful attempts in high school, he still decided to learn Python at the University. He cautiously stepped into the realm of data, beginning with a simple Google search for 'what does a data scientist do'. He was determined to pursue a career in data science to become a data engineer by learning about big data tools and infrastructure design to build scalable systems and pipelines. He enjoys sharing his programming skills with the rest of the world.

Course Outline

1. Introduction

1. Introduction

In this video, the author introduces you to the course.

2. Setting Up Our Coding Environment

In this video, the author explains the installation of PyCharm.

3. Installing Python

This video explains the installation of Python.

4. Writing Our First Program

This video explains how to write your first Python program.

5. Variables

This video explains variables in Python.

6. String

This video explains strings in Python.

7. Integers, Floats, and Type Casting

This video explains integers, floats, and type casting in Python.

8. Booleans and Boolean Operations

This video explains Booleans and Boolean operations in Python.

9. None Types

This video explains the 'none' datatype in Python.

10. Lists

This video explains lists in Python.

11. Tuples

This video explains tuples in Python.

12. Dictionaries

This video explains dictionaries in Python.

13. Formatting Strings and Writing Comments

This video explains how to write comments and format strings in Python.

14. If Statements

This video explains If statements.

15. Elif and Else Statements

In this video, the author explains the elif and else statements.

16. For Loops

This video explains for loops in Python.

17. While Loops

This video explains while loops.

18. Functions

This video explains functions in Python.

19. Function Parameters

This video explains function parameters.

20. Global Variables

This video explains global variables.

21. File Handling

This video explains file handling in Python.

22. Virtual Environments

This video explains virtual environments.

23. Launching Our First Application

This video explains launching the first application.

24. Classes

This video explains classes in Python.

25. Classes Inheritance

This video explains classes inheritance.

26. Decorators

This video explains decorators in Python.

27. Generators

In this video, the author explains generators in Python.

28. JSON and Text Response

This video explains JSON and text response.

29. Typing

This video explains that when we write Python code, we do not define the datatypes, values, and so on.

30. Response Models

This video explains response models.

31. Expanded Field Information

This video explains the concept of expanded field information.

32. Path Parameters

This video explains Path parameters.

33. Request Bodies

This video explains request bodies.

34. Query Parameters

This video explains the query parameters.

35. Put and Delete

This video explains put and delete request types.

36. Docstrings

This video explains docstrings.

37. Async Functions

This video explains async functions.

38. Directory Structure

This video explains the directory structure.

39. API Routers Continued

This video explains API routers.

40. Environment Variables

In this video, the author explains environment variables.

41. HTTP Status Codes

This video explains the HTTP status codes.

42. Exceptions

This video explains exceptions in Python.

43. Logging

This video explains how to implement logging and its benefits.

44. Logging Formatter

This video explains the concept of logging formatter.

45. Custom Exception Handlers

This video explains custom exception handlers.

46. Headers and Dependencies

This video explains headers and dependencies.


2. Testing

1. Pytest Introduction

This video introduces you to Pytest.

2. Writing Our First Service Test

This video explains how to write your first service test.

3. Fixtures

This video explains fixtures in Python.

4. Integration Tests

This video explains integration tests.

5. Testing for Exceptions

This video explains testing for exceptions.

6. Sending Requests in Python

This video explains sending requests in Python.

7. Sending Async Requests

This video explains sending async requests.

8. Testing Synchronous Requests

This video explains testing synchronous requests.

9. Testing Async Requests

This video explains testing async requests.

10. Test Coverage

This video explains test coverage.

11. MyPy Round 2

This video explains MyPy.


3. Introduction to the Terminal

1. Digital Ocean Setup

This video explains the setup of Digital Ocean.

2. SSH on Windows

This video explains SSH on Windows.

3. Connecting with SSH

This video explains connecting with SSH.

4. Basic Navigation

This video explains basic navigation.

5. Creating Folders

This video explains creating folders.

6. Creating Files

This video explains creating files.

7. Removing Folders and Files

This video explains removing folders and files.

8. Moving, Renaming, and Copying Files and Folders

This video explains moving, renaming, and copying files and folders.

9. Environment Variables

This video explains environment variables.

10. Piping and Redirecting

This video explains piping and redirecting.

11. Super User and Running Pythons Scripts

This video explains super user and running Pythons scripts.

12. Executables and Modifying Permissions

This video explains executables and modifying permissions.

13. Sending Requests

This video explains sending requests


4. Docker

1. Docker Introduction

This video introduces you to Docker.

2. Creating a Dockerfile

This video explains creating a Dockerfile.

3. Multistage Build

This video explains multistage build.

4. Docker Compose

This video explains Docker Compose.

5. Makefile

This video explains Makefile.


5. SQL

1. Introduction to Relational Databases

This video introduces you to relational databases.

2. Data Types and Schemas

This video explains data types and schemas.

3. [Mac] Setting Up a Local PostgreSQL Server

This video explains setting up a local PostgreSQL server for Mac.

4. [Windows] Setting Up a Local PostgreSQL Server

This video explains setting up a local PostgreSQL server for Windows.

5. [Mac] SQL Editor Postico

This video explains SQL Editor Postico for Mac.

6. SQL Editor DataGrip

This video explains SQL Editor DataGrip.

7. SQL Editor CLI

This video explains SQL Editor CLI.

8. Creating and Removing a Database

This video explains creating and removing a database.

9. Creating Schemas

This video explains creating schemas.

10. Creating Tables

This video explains creating tables.

11. Altering Tables

This video explains altering tables.

12. Enumerated Types

This video explains enumerated types.

13. Inserting Values

This video explains inserting values.

14. Running an SQL Script

This video explains how to run a SQL script.

15. Reading Data

This video explains reading data.

16. Creating Tables Using Query Results

This video explains creating tables using query results.

17. Aliases and Ordering

This video explains aliases and ordering.

18. Conditional Filtering Direct Comparisons

This video explains conditional filtering direct comparisons.

19. Conditional Filtering Grouped Comparisons

This video explains conditional filtering grouped comparisons.

20. Joining Conditionals

This video explains joining conditionals in SQL.

21. Negating Conditionals

This video explains negating conditionals in SQL.

22. Filtering Null Values

This video explains filtering the null values in SQL.

23. Creating New Columns and Arithmetic

This video explains how to create new columns and arithmetic.

24. Datatype Conversions

This video explains datatype conversions in SQL.

25. Logic Statements

This video explains logic statements in SQL.

26. Manipulating Strings

This video explains manipulating strings in SQL.

27. String Positional Information

This video explains string positional information in SQL.

28. String Subsets and Concatenations

This video explains string subsets and concatenations.

29. String Replacements

This video explains string replacements in SQL.

30. Date and Time

This video explains date and time in SQL.

31. Date and Time Intervals

This video explains date and time intervals.

32. Comments

This video explains the comments in SQL.

33. Aggregation Functions

This video explains aggregation functions in SQL.

34. Grouping and Filtering Aggregations

This video explains grouping and filtering aggregations.

35. Inner Join

This video explains inner join in SQL.

36. Left, Right, and Outer Joins

This video explains left, right, and outer joins in SQL.

37. Self Joins

This video explains self joins in SQL.

38. Unions

This video explains unions in SQL.

39. Subqueries

This video explains subqueries in SQL.

40. Common Table Expression (CTEs)

This video explains CTEs in SQL.

41. Window Functions and Aliases

This video explains window functions and aliases in SQL.

42. Row Numbers and Ranks

This video explains row numbers and ranks.

43. Using Other Rows with Window Functions

This video explains using other rows with window functions.

44. NTiles

This video explains NTiles in SQL.

45. Understanding Query Performance

This video explains query performance in SQL.


6. Integrating Databases into Our Application

1. Adding Postgres to Our Docker Compose

This video explains adding Postgres to our Docker Compose.

2. Creating Database Models in Python

This video explains creating database models in Python.

3. Database Migrations

This video explains database migrations.

4. SQLAlchemy ORM Introduction

This video introduces you to SQLAlchemy ORM.

5. Creating a Database Client

This video explains how to create a database client.

6. Updating Our Application to Read from the Database

This video explains updating our application to read from the database.

7. Database Inserts

This video explains database inserts.

8. Database Updates

This video explains database updates.

9. Database Deletes

This video explains database deletes.

10. Async Database Queries

This video explains async database queries.

11. Async Updates

This video explains async updates.

12. Updating Unit Tests to Work with the Database

This video explains updating unit tests to work with the database.

13. Updating Integration Tests to Work with the Database

This video explains updating integration tests to work with the database.

14. SQLite for Testing

This video explains SQLite for testing.

15. Mocking

This video explains mocking.


7. Caching

1. Redis Introduction

This video introduces you to Redis.

2. Adding Caching to Our Application

This video explains adding caching to our application.

3. Redis Hash Introduction

This video introduces you to Redis Hash.

4. Redis Sets Introduction

This video introduces you to Redis Sets.

5. Adding Hash Caching to Pagination Endpoint

This video explains adding hash caching to pagination endpoint.

6. Python Object Serialization

This video explains Python object serialization.

7. Cache Flushing

This video explains cache flushing.

8. Data Compression

This video explains data compression.


8. Linting

1. MyPy Configurations

This video explains the MyPy configurations.

2. Import Sorting

This video explains import sorting.

3. Automatic Code Formatting

This video explains automatic code formatting.

4. Additional Code Checking

This video explains additional code checking.


9. GitHub

1. GitHub Credentials Setup

This video explains how to set up GitHub credentials.

2. GitHub Desktop Setup

This video explains how to set up GitHub Desktop.

3. Cloning a Repository

This video explains how to clone a GitHub repository.

4. Pushing a Local Repository to GitHub

This video explains how to push a local repository GitHub.

5. Reverting and Squashing Commits

This video explains reverting and squashing Commits.

6. GitHub Branches

This video explains GitHub branches.

7. Pull Request

This video explains a Pull request.

8. Precommit Hooks

This video explains Precommit hooks.

9. GitHub CLI

This video explains GitHub CLI.

10. Tagged Release

This video explains tagged release.

11. Reading Documentation

This video explains reading documentation.


10. Concurrent and Parallel Programming

1. Threading, Multiprocessing, and Async Introduction

This video explains threading, multiprocessing, and async statements.

2. Threading in Python

This video explains threading in Python.

3. Creating a Threading Class

This video explains how to create a threading class.

4. Creating a Wikipedia Reader

This video explains how to create a Wikipedia Reader.

5. Creating a Yahoo Finance Reader

This video explains creating a Yahoo Finance Reader.

6. Queues and Master Scheduler

This video explains queues and master scheduler.

7. Creating a Postgres Worker

This video explains how to create Postgres Worker.

8. Integrating the Postgres Worker

This video explains integrating the Postgres Worker.

9. Yaml File Introduction

This video introduces you to Yaml file.

10. Creating a Yaml Reader

This video explains how to create a Yaml Reader.

11. Improving Our Wiki Worker

This video explains improving our Wiki Worker.

12. Improving All Workers and Adding Monitoring

This video explains improving all workers and adding monitoring.

13. Final Program Clean-Up

This video explains final program clean-up.

14. Locking

This video explains Locking.

15. Multiprocessing Introduction

This video introduces you to multiprocessing.

16. Multiprocessing Queues

This video explains multiprocessing queues.

17. Multiprocessing Pool

This video explains multiprocessing pool.

18. Multiprocessing Pool Map Multiple Arguments

This video explains multiprocessing pool map multiple arguments.

19. Multiprocessing Multiple Varying Arguments

This video explains multiprocessing multiple varying arguments.

20. Multiprocessing Checking Elements in List in Certain Ranges

This video explains multiprocessing checking elements in list in certain ranges.

21. Introduction to Writing Asynchronous Programs

This video introduces you to writing asynchronous programs.

22. Asynchronous Tasks

This video explains asynchronous tasks.

23. Async Gather Method

This video explains the async Gather method.

24. Using Async Timeouts

This video explains async timeouts.

25. Creating Asynchronous For Loops

This video explains how to create asynchronous 'for' loops.

26. Using Asynchronous Libraries

This video explains using asynchronous libraries.

27. The Async Wait Statement

This video explains the async wait statement.

28. Combining Async and Multiprocessing

This video explains combining async and multiprocessing.

Course Content

  1. Python for Software Engineering Bootcamp

About The Provider

Packt
Packt
Birmingham
Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and i...
Read more about Packt

Tags

Reviews