Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udemy

Taking Python to Production: A Professional Onboarding Guide

via Udemy

Overview

Data scientists, analysts, and beginner devs: transition from "coder" to "software engineer" and learn to ship code

What you'll learn:
  • Set up a professional Python development environment - Visual Studio Code, pyenv, git, autocompletion
  • Learn the professional git workflow with GitHub and CI/CD with GitHub Actions
  • Make the terminal more intuitive with ZSH and plugins
  • Version and package Python software and publish it for the community
  • Setup automated code quality checks (testing, linting, documentation, type checking, etc.)

This is a course about transitioning from a "coder"to a "software engineer". It specifically covers the tools needed to develop and "ship" production-ready software with Python.


As an MLOps engineer, my role is to help enable data scientists, analysts, and junior engineers become more self-sufficient at bringing products to production.

This course covers a mix of foundational tools, engineering practices, and career advice that new engineers should be given during the onboarding process when they join a team (but they often don't get guidance!).

By the end of this course, you should feel confident contributing to complex software projects in a team setting, whether open-source or at a company (or please request a refund within 30 days!).

You will understand how closed- and open-source projects are run and how to run your own.

In the course, we write very little code and instead focus on the non-coding aspects of software engineering that make you an effective member of the software engineering community.

That said, you should have a solid grasp of Python fundamentals (loops, functions, classes, etc.) before taking this course.


Expect to learn

  • how to set up a professional Python development environment

  • how to set up a professional workflow for Python development with Visual Studio Code; extra emphasis on autocompletion

  • how to use git, GitHub, "branching strategies", and their integrations with VSCode and the terminal

  • how to write clean, maintainable code and ensure that all code contributed to your projects is good quality (testing, linting, formatting, type checking, documentation, etc.)

  • how to publish production-quality software for a wide audience with packaging, versioning, continuous integration, and continuous delivery (pre-commit, GitHub Actions, PyPI)

  • how to templatize all of the above points, so you can create new, high-quality projects in seconds

Before paying for this course, please sample the preview lectures so you can get a sense of whether it's right for you.

See you in the course!

- Eric

Syllabus

  • Introduction
  • Environment Setup
  • Improving the terminal with ZSH
  • Managing multiple Python versions
  • VS Code: shortcuts, auto-completion, and virtual environments
  • Git and VS Code
  • GitHub and Code Review
  • Continuous Integration: clean code, formatters, linters and VS Code integrations
  • Continuous Integration - The pre-commit framework
  • GitHub Actions
  • Python Packaging
  • Intro to Continuous Delivery: Publishing to PyPI
  • Automating Continuous Delivery of Python Packages with GitHub Actions
  • Advanced GitHub Actions Optimization Techniques
  • Software Testing and Pytest
  • [No Articles Yet] Course project: Advanced Python package and repo template
  • Bonus

Taught by

Eric Riddoch

Reviews

4.7 rating at Udemy based on 518 ratings

Start your review of Taking Python to Production: A Professional Onboarding Guide

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.