Description

  • IT - Software Engineering
  • Bern
  • Contracting
  • Teilzeit
  • Snowflake, PostgreSQL, RabbitMQ

Die zwei Engineers, die gemeinsam die gesamte Datenverarbeitungskette verantworten, ergänzen sich idealerweise mit ihren technischen Schwerpunkten wie folgt:

  • Streaming & Performance: Schwerpunkt auf RabbitMQ-Consumer-Entwicklung, Python Concurrency, Performance-Optimierung und stabiler Verarbeitung unter hoher Last
  • Data Integration & Recovery: Schwerpunkt auf Snowflake/PostgreSQL, zuverlässiger Datenaufnahme sowie Recovery-, Replay- und Backfill-Prozessen

Für beide Schwerpunkte werden praktische Erfahrung mit RabbitMQ und nachweisbare Projekterfahrung in produktiven Umgebungen vorausgesetzt.

Aufgaben:

  • Entwicklung und Optimierung einer skalierbaren Python-Anwendung zur Verarbeitung von RabbitMQ-Datenströmen
  • Implementierung und Weiterentwicklung von RabbitMQ-Consumern für produktive Streaming-Umgebungen
  • Integration und Konfiguration der Datenaufnahme in Snowflake und Snowflake Postgres
  • Sicherstellung einer zuverlässigen Nachrichtenverarbeitung inklusive Acknowledgements, Redelivery, Backpressure und Deduplizierung
  • Konzeption und Implementierung robuster Recovery-, Replay- und Backfill-Prozesse
  • Optimierung von Latenz, Durchsatz sowie CPU- und Speicherverbrauch
  • Analyse und Behebung von Performance-Engpässen, Lastspitzen und Fehlerfällen
  • Sicherstellung von Datenvollständigkeit und Datenkonsistenz bei Live- und historischen Daten
  • Integration von Nachladeprozessen unter Verwendung von Kestra und dlt (dltHub) in Zusammenarbeit mit dem internen Data Ingestion Engineer
  • Entwicklung automatisierter Tests sowie Durchführung von Performance- und Lasttests
  • Integration der Lösung in Azure DevOps CI/CD und Implementierung grundlegender Monitoring-Funktionen
  • Enge Zusammenarbeit mit internen Plattform- und Engineering-Teams sowie Dokumentation und Wissenstransfer

Profil:

  • Sehr gute praktische Erfahrung in der Python-Entwicklung, insbesondere mit langlaufenden produktiven Anwendungen
  • Fundierte Erfahrung mit RabbitMQ, insbesondere Consumer-Entwicklung, Message Processing und Fehlerbehandlung
  • Praktische Erfahrung mit Streaming-Systemen unter realer Last sowie deren Performance-Optimierung
  • Gute Kenntnisse in Snowflake und PostgreSQL, insbesondere im Bereich Data Ingestion und Datenintegration
  • Erfahrung mit Recovery, Replay, Backfill, Deduplizierung und Datenkonsistenz
  • Sehr gutes Verständnis von Acknowledgements, Redelivery, Backpressure und Message Queuing
  • Kenntnisse in Python Concurrency, CPU-/Memory-Profiling und Performance-Optimierung
  • Erfahrung in der Entwicklung und im Betrieb produktionsfähiger Datenpipelines
  • Kenntnisse in automatisierten Tests, CI/CD und Monitoring
  • Erfahrung mit Azure DevOps sowie modernen Entwicklungs- und Deployment-Prozessen
  • Kenntnisse in Azure, AKS, Kestra, dlt, Kafka oder Debezium von Vorteil
  • Selbstständige, strukturierte und lösungsorientierte Arbeitsweise sowie ausgeprägte Teamfähigkeit
  • Erfahrung in der Zusammenarbeit mit internen Plattform-, Entwicklungs- und Betriebsteams