WIR SUCHEN DICH.
Wir legen uns ins Zeug, damit Gamer Spaß haben. Die Interwebmedia GmbH ist seit über 10 Jahren auf dem Markt und betreut verschiedene kreative Projekte, die dafür sorgen sollen, dass Jung und Alt bei uns Zuflucht vor dem Alltag finden und einfach mal abschalten können. Uns gehört unter anderem eine der größten Minecraft Communities im DACH-Raum und haben nun zusätzlich eine eigene Agentur für weitere In-House Projekte gegründet. Wir verbinden flache Hierarchien mit ausgeklügelten Organisationsstrukturen und suchen nun jemanden, der unser Team ergänzt.
Aufgaben
Deine Mission
Als Entwickler wirst du in einem kleinen Team zusammenarbeiten und deinen Input liefern, damit unsere User ein reibungsloses Spielerlebnis haben.
Dein Beitrag:
Entwicklung und Erweiterung von Minecraft-Plugins
Umsetzung eigenständiger Java-Anwendungen
Wartung und Optimierung bestehender Systeme
Analyse und Behebung von Bugs in Plugins, Serverfunktionen und Java-Komponenten
Einarbeitung in bestehende Codebasen und externe Schnittstellen
Unterstützung bei der technischen Konzeption neuer Features
Qualifikation
Dein Profil
Must-Have Skills:
Java (LTS-Versionen wie 17 oder 21):
Tiefes Verständnis moderner Java-Konzepte wie Streams, Lambdas, Records, Optionals und asynchroner Verarbeitung (z. B. CompletableFuture) sowie fundierte Erfahrung im Umgang mit stabilen LTS-Versionen
Backend-Entwicklung mit Java:
Entwicklung modularer, wartbarer Systeme über REST-APIs, Event-Handling oder serviceorientierte Architekturen mit Fokus auf Skalierbarkeit und Lesbarkeit
Spigot/Bukkit/Paper API (für Spiele- und Serverentwicklung):
Entwicklung robuster Plugins auf Basis der Bukkit-, Spigot- oder Paper-API, inkl. Events, Commands, Permissions und Konfigurationshandling
Thread-sicheres Arbeiten:
Entwicklung sicherer Nebenläufigkeit mit `synchronized`, Locks, `Concurrent*`-Klassen und CompletableFutures zur Vermeidung von Race Conditions
NMS (`net.minecraft.server`) / Reflection:
Umgang mit internen Minecraft-Klassen und Version-Abstraktion mittels Reflection zur Umsetzung tiefergreifender Funktionalität
Protokollverständnis:
Erfahrung im Umgang mit Minecraft-spezifischer Netzwerkkommunikation – entweder über Netty bei Low-Level-Zugriffen oder durch den Einsatz von ProtocolLib für Packet-Manipulation auf höherer Ebene
Redis / Valkey (Live Messaging \& Caching):
Erfahrung mit Redis oder Valkey als In-Memory-Datenbank für Pub/Sub-Kommunikation, Session-State, verteiltes Messaging und Caching häufig genutzter Daten
Performantes Arbeiten:
Analyse und Optimierung von RAM-, CPU- und Tick-Zeit-Verbrauch durch effiziente Datenstrukturen, Caching, Lazy Loading und asynchrone Verarbeitung
Git (Versionskontrolle):
Versionssichere Entwicklung mit Git inkl. Branching, Pull Requests, Merge-Strategien sowie der Nutzung von Conventional Commits und Semantic Versioning
Multi-Modul-Projekte (Maven):
Strukturierung komplexer Projekte in einzelne Module (z. B. `api`, `common`, `bukkit`, `bungee`) mit sauberem Dependency-Management
MongoDB (Morphia):
Arbeit mit dokumentenbasierten Datenbanken unter Verwendung des MongoDB Java-Treibers oder Morphia als ODM, inklusive Aggregationen, Indexoptimierung und performanter Abfragegestaltung
REST-API-Entwicklung und -Anbindung:
Erstellung und Konsumierung von RESTful APIs, inkl. JSON-Handling, Authentifizierung, Statuscodes und Schnittstellenstrukturierung
Clean Code \& Architektur:
Anwendung von SOLID-Prinzipien, saubere Trennung von Verantwortlichkeiten, modulare Architektur sowie Best Practices für wartbaren und testbaren Code
Fehleranalyse \& Debugging:
Systematische Identifikation und Behebung komplexer Bugs durch Loganalyse, Stacktrace-Interpretation, Tests und Runtime-Inspection
Unit- und Integrationstests:
Testabdeckung mit JUnit und Mocking-Frameworks wie Mockito sowie Integrationstests auf Systemebene
Arbeiten mit externen APIs und Bibliotheken:
Fähigkeit, sich eigenständig in fremde APIs einzuarbeiten, deren JavaDocs und Dokumentationen zu verstehen und korrekt in eigene Systeme zu integrieren
Nice-to-Have:
Docker:
Containerisierung von Java-Anwendungen und Services für lokale Entwicklung und Produktion, inkl. Docker Compose-Setups
Linux-Server-Verwaltung:
Grundkenntnisse in Linux-Administration (Ubuntu/Debian), inklusive Systemverwaltung, Netzwerkkonfiguration und Monitoring
Deployment \& Automatisierung (z. B. Ansible, GitHub Actions, GitLab CI):
Aufbau und Pflege automatisierter CI/CD-Pipelines, Konfigurationsmanagement, automatische Tests und Versionsbereitstellung
Benefits
Betriebliche Weiterbildung
Firmenhandy
Flexible Arbeitszeiten
Homeoffice-Möglichkeit
Zusätzliche Urlaubstage
Bonuszahlungen