Kontakt aufnehmen

Schulungsübersicht

Tag 1 — Fundamentale Python-Konzepte & Tooling

Moderne Python-Features und Typisierung

  • Grundlagen der Typisierung, Generics, Protocols und TypeGuard
  • Überblick über Dataclasses, gefrorene Dataclasses und attrs
  • Pattern Matching (PEP 634+) und idiomatische Nutzung

Code-Qualität und Tooling

  • Code-Formatter und Linter: black, isort, flake8, ruff
  • Statisches Type-Checking mit MyPy und pyright
  • Pre-commit-Hooks und Entwickler-Workflows

Projektmanagement und Paketierung

  • Dependency-Management mit Poetry und virtuellen Umgebungen
  • Paket-Struktur, Einstiegspunkte und Best Practices für Versionierung
  • Bauen und Veröffentlichen von Paketen auf PyPI und privaten Registries

Tag 2 — Design Patterns & Architekturelle Praktiken

Design Patterns in Python

  • Kreatorische Patterns: Factory, Builder, Singleton (Pythonic-Varianten)
  • Strukturelle Patterns: Adapter, Facade, Decorator, Proxy
  • Behaviorale Patterns: Strategy, Observer, Command

Architekturprinzipien

  • SOLID-Prinzipien angewendet auf Python-Codebasen
  • Hexagonale/Clean Architecture und Grenzen
  • Dependency-Injection-Patterns und Konfigurationsmanagement

Modularität und Wiederverwendbarkeit

  • Design von Bibliotheks- vs. Anwendungscode
  • APIs, stabile Schnittstellen und semantische Versionierung
  • Umgang mit Konfiguration, Secrets und umgebungsspezifischen Einstellungen

Tag 3 — Concurrentity, Async IO und Performance

Concurrentity und Parallelität

  • Grundlagen von Threading und die Auswirkungen des GIL
  • Multiprocessing und Process Pools für CPU-bound Tasks
  • Wann concurrent.futures vs. Multiprocessing einsetzen

Asynchrone Programmierung mit asyncio

  • Async/await-Patterns, Event-Loop und Cancellation
  • Design asynchroner Bibliotheken und Interoperabilität mit synchronem Code
  • IO-bound Patterns, Backpressure und Rate Limiting

Profiling und Optimierung

  • Profiling-Tools: cProfile, pyinstrument, perf, memory_profiler
  • Optimieren von Hot Paths und Einsatz von C-Erweiterungen/Numba wo angemessen
  • Messen von Latenz, Durchsatz und Ressourcenauslastung

Tag 4 — Testing, CI/CD, Observability und Deployment

Test-Strategien und Automatisierung

  • Unit Testing und Fixtures mit pytest; Test-Organisation
  • Property-Based Testing mit Hypothesis und Contract Testing
  • Mocking, Monkeypatching und Testen asynchronen Codes

CI/CD, Release und Monitoring

  • Integration von Tests und Quality Gates in GitHub Actions/GitLab CI
  • Bauen reproduzierbarer Container mit Docker und Multi-Stage Builds
  • Anwendungs-Observability: strukturiertes Logging, Prometheus-Metriken und Tracing

Sicherheit, Härten und Best Practices

  • Dependency-Auditing, SBOM-Grundlagen und Vulnerability Scanning
  • Sichere Coding-Praktiken für Input-Validierung und Secrets Management
  • Runtime-Härten: Ressourcenlimits, Benutzerrechte und Container-Sicherheit

Capstone-Projekt & Review

  • Team-Labor: Entwerfen und Implementieren eines kleinen Services unter Nutzung der Kurs-Patterns
  • Testing, Type-Checking, Paketierung und CI-Pipeline für das Projekt
  • Abschliessende Review, Code-Kritik und massnahmbarer Verbesserungsplan

Zusammenfassung und Nächste Schritte

Voraussetzungen

  • Solide Python-Programmiererfahrung auf mittlerem Niveau
  • Vertrautheit mit objektorientierter Programmierung und grundlegendem Testing
  • Erfahrung im Umgang mit der Kommandozeile und Git

Zielgruppe

  • Senior Python-Entwickler
  • Software-Ingenieure, die für die Code-Qualität und Architektur von Python-Code verantwortlich sind
  • Technische Leitende und MLOps/DevOps-Ingenieure, die mit Python-Codebasen arbeiten
 28 Stunden

Teilnehmerzahl


Preis je Teilnehmer (exkl. USt)

Erfahrungsberichte (2)

Kommende Kurse

Verwandte Kategorien