~/talk

How we deleted 10,000 lines of code and got control of our Airflow DAGs

Talkat PyCon Israel 2024 · on Monday, 2024-09-16· [python, data-engineering]
name:Gil Reich
linkedin:gilreich
slides:none on file

Airflow pipeline for site classification shrinks from 100+ files to ~25 specific files plus ~25 in a reusable DSdag framework, removing roughly 10,000 lines over two to three months. A config-driven orchestrator replaces duplicate orchestrator files for daily, monthly and backfill runs; seven internal DAGs become instances of one class with one-line DAG creation and auto-generated docs. Runtime changes: output-ready sensor lets orchestrator proceed earlier so morning results arrive faster, local testing prefixes avoid clobbering prod tables, and the framework is already reused across projects.

AI-written summary · about

  1. 0:00Introduction and context
  2. 1:58Inheriting technical debt
  3. 3:00Guiding principles for refactoring
  4. 3:21Tackling duplicate code
  5. 4:24Unifying orchestrators
  6. 5:48Standardizing internal DAGs
  7. 7:54Building the DS DAG framework
  8. 9:19Results and benefits
  9. 9:42Enabling ad hoc runs
  10. 10:45Speeding up pipelines
  11. 11:49Improving local testing
  12. 12:52Automating documentation
  13. 14:59Extending framework to other projects
  14. 16:02Summary and conclusion
  15. 16:44Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.