Masterarbeit: Migration durch LLM
Pully
Auf einen Blick
- Veröffentlicht:07 Oktober 2025
- Pensum:100%
- Arbeitsort:Pully
Job-Zusammenfassung
ELCA sucht Unterstützung für Migrationen und Refactoring in großen Codebasen. Bei uns erwartet dich ein dynamisches, internationales Team.
Aufgaben
- Bewertung bestehender Tools für Migrationsaufgaben.
- Entwicklung eines LLM-gestützten Prototyps für Migration.
- Überprüfung der Nützlichkeit von LLMs bei Migrationen.
Fähigkeiten
- Kenntnisse in mindestens einer Programmiersprache erforderlich.
- Starke analytische Fähigkeiten sind ein Muss.
- Erfahrung mit LLMs ist von Vorteil.
Ist das hilfreich?
Beschreibung
Bei ELCA müssen wir häufig Migrationen oder umfangreiche Refaktorierungen an großen Codebasen durchführen, wie zum Beispiel:
• Upgrade auf eine neue Hauptversion eines Frameworks, die Breaking Changes mit sich bringt oder Funktionen veraltet.
• Migration der kundenspezifischen Anwendungen, die auf einer Legacy-Technologie laufen, zu einem moderneren Stack, manchmal in einer anderen Programmiersprache.
Diese Aufgaben haben gemeinsam, dass sie sehr zeitaufwendig, sehr repetitiv und dennoch schwer zu automatisieren sind. Ähnlich wie bei der Übersetzung menschlicher Sprachen sollte eine Migration von einer Technologie zu einer anderen die Idiome der Zielsprache übernehmen, um sicherzustellen, dass der generierte Code leicht verständlich, überprüfbar und wartbar ist.
Die Übersetzung menschlicher Sprachen basierend auf LLMs (Large Language Models) übertrifft programmierte Algorithmen dank des enormen Textvolumens, auf dem sie trainiert wurden. Ebenso haben LLMs in den letzten Jahren eine zunehmende Fähigkeit bei der Verarbeitung und Produktion von "idiomatischem" Quellcode gezeigt. Sie spielen heute eine Schlüsselrolle bei vielen groß angelegten Refaktorierungs- und Migrationsaufgaben.
LLMs neigen bekanntermaßen zu "Halluzinationen" und "Kreativität", was bei der Arbeit mit Quellcode unerwünscht ist, daher ist die Verifikation und Durchsetzung des von einem Migrationstool erzeugten Codes entscheidend. Fehlererkennung kann mit statischen Analysetools am generierten Code erfolgen oder durch das Erzeugen bzw. Migrieren automatisierter Tests. Wenn ein Test entdeckt, dass Code falsch migriert wurde, muss es eine Möglichkeit geben, die Generierung zu iterieren, um fehlschlagende Tests und Kompilierungsfehler zu beheben. Eine solche iterative Codeverfeinerung wurde bereits mit LLM-basierten Codegeneratoren demonstriert.
Ziele
- Bestehende Arbeiten in diesem Bereich untersuchen und die Fähigkeiten vorhandener Werkzeuge für solche Aufgaben bewerten.
- Auf ELCAs bestehenden Prototypen aufbauen, um einen LLM-basierten Proof-of-Concept für ein konkretes Migrationsprojekt vorzuschlagen und umzusetzen, unter Nutzung von Techniken wie Prompt Engineering, Fine-Tuning und Training bis hin zu komplexeren Workflows mit Iteration, werkzeuggestützten Agenten, automatisiertem Testen, Fehlerkorrektur und so weiter.
- Bewerten, inwieweit LLMs bei Migrationsaufgaben hilfreich sind und in welchen Fällen handgefertigte Codegeneratoren besser geeignet sein könnten.
Unser Angebot
- Ein dynamisches Arbeits- und Kollaborationsumfeld mit einem hochmotivierten multikulturellen und internationalen Standortteam
- Die Chance, das Leben von Menschen durch den Aufbau innovativer Lösungen zu verbessern
- Verschiedene interne Coding-Events (Hackathon, Brownbags), siehe unseren technischen Blog
- Monatliche After-Works, organisiert nach Standorten
Erforderliche Fähigkeiten
Kenntnisse in mindestens einer Programmiersprache (Java, TypeScript, Python) und starke analytische Fähigkeiten im Allgemeinen sind erforderlich. Erfahrung oder allgemeines Wissen im Umgang mit LLMs ist von Vorteil.
Über das Unternehmen
Pully