Senior Software Developer - Async Architecture & Concurrency (m/w/d)
Summary
Senior Software Developer focusing on modernizing .NET applications via async/await migration, solving concurrency issues, and coaching teams; core tech includes C#, .NET, WPF, WinForms.
Wir, die emagine, suchen einen Senior Software Developer - Async Architecture & Concurrency (m/w/d) in Jena.
Gesucht wird ein erfahrener Entwickler, der komplexe .NET-Systeme nicht nur implementiert, sondern deren Architektur nachhaltig gestaltet. Dein Schwerpunkt liegt auf der Entwicklung robuster und leistungsfähiger Lösungen rund um Asynchronität, Threading und Concurrency. Du erkennst Performance-Engpässe, verstehst die Zusammenhänge moderner Softwarearchitekturen und entwickelst Anwendungen, die auch langfristig höchsten Anforderungen gerecht werden.
Standort: Jena
Wochenstunden: 38,5
Dauer: 24 Monate
Deine Rolle:
Du übernimmst die technische Verantwortung für die schrittweise Modernisierung gewachsener .NET-Anwendungen und bringst sie in eine stabile, asynchrone Zukunft. Konkret heißt das:
Du entwickelst Migrationsstrategien, die synchrone Legacy-Codebasen sicher in moderne Async-/Await-Architekturen überführen - ohne die Systemstabilität zu gefährden.
Du baust robuste Integrations- und Entkopplungskonzepte zwischen synchronen und asynchronen Komponenten.
Du analysierst und löst komplexe Concurrency-, Threading- und Performance-Probleme in produktiven Anwendungen.
Du gestaltest skalierbare, wartbare Architekturen für Desktop-Anwendungen auf Basis von WPF und WinForms.
Du definierst Best Practices für Asynchronität, Fehlerbehandlung, Cancellation und Ressourcenmanagement.
Du baust Diagnose-, Monitoring- und QS-Mechanismen auf, die die Softwarestabilität nachhaltig verbessern.
Du berätst und coachst Entwicklungsteams zu modernen Async-Paradigmen, UI-Threading und Softwarearchitektur.
Was du mitbringst:
Ein abgeschlossenes Studium der Informatik, Software Engineering oder eine vergleichbare Qualifikation.
Mehrjährige Erfahrung in der Entwicklung komplexer Desktop- und Enterprise-Anwendungen mit C# und .NET.
Fundierte Praxis in der Migration großer synchroner Codebasen auf moderne Async-/Await-Konzepte.
Sicherheit im Umgang mit hybriden Sync-/Async-Architekturen und stabilen Übergängen zwischen beiden Welten.
Nachweisbare Erfahrung im Vermeiden und Beheben typischer Async-Probleme wie Deadlocks, Thread-Pool-Exhaustion oder Blockierungen durch synchrone Aufrufe.
Tiefes Verständnis von SynchronizationContext, Task Scheduler und ConfigureAwait sowie deren Einfluss auf Skalierbarkeit und Benutzerfreundlichkeit.
Erfahrung mit strukturierter Fehlerbehandlung, CancellationToken und Timeout-Management.
Know-how in der Analyse komplexer Concurrency-Probleme, Race Conditions und schwer reproduzierbarer Laufzeitfehler.
Sicherer Umgang mit Diagnose- und Debugging-Techniken für Multi-Threading-Anwendungen, z. B. Visual Studio Diagnostics oder PerfView.
Mehrjährige Erfahrung mit WPF- und WinForms-Anwendungen sowie Expertenwissen zu Dispatcher, SynchronizationContext und Thread-Kommunikation.
Erfahrung darin, rechenintensive Prozesse vom UI-Thread zu entkoppeln, um eine performante und stabile Benutzeroberfläche sicherzustellen.
Praxis mit Architekturmustern für asynchrone und ereignisgetriebene Systeme sowie mit Refactoring-Strategien für gewachsene Softwarearchitekturen.
Erfahrung mit großen Software-Monolithen und deren schrittweiser Modernisierung.
Idealerweise Erfahrung als technischer Lead, Coach oder Mentor in Entwicklungsteams.
Wir freuen uns auf deine Rückmeldung.