Senior Software Engineer - Full-Stack with Distributed Systems Focus

Senior Software Engineer - Full-Stack with Distributed Systems Focus

Berlin Vollzeit 61650 - 75350 € / Jahr (geschätzt) Hybrid
U

Auf einen Blick

  • Aufgaben: Entwickle eine eventgesteuerte E-Commerce-Plattform und baue innovative Tools.
  • Unternehmen: Unybrands, ein aufstrebendes E-Commerce-Unternehmen mit globaler Präsenz.
  • Vorteile: Wettbewerbsfähiges Gehalt, flexible Arbeitszeiten und Weiterbildungsmöglichkeiten.
  • Weitere Informationen: Dynamisches Team mit exzellenten Wachstumschancen und modernem Tech-Stack.
  • Warum dieser Job: Gestalte die Architektur eines neuen Systems und habe direkten Einfluss auf den Geschäftserfolg.
  • Qualifikationen: Mindestens 5 Jahre Erfahrung in der Softwareentwicklung und Kenntnisse in verteilten Systemen.

Das prognostizierte Gehalt liegt zwischen 61650 - 75350 € pro Jahr.

Unybrands wurde 2020 von einer Gruppe von Partnern gegründet, die eine gemeinsame Vision teilen: die führende nächste Generation E-Commerce-Plattform für Mikro-Marken aufzubauen. Das Unternehmen hat seinen Hauptsitz in Miami und ist global mit Teams in Berlin, London, New York und China vertreten. Unybrands erwirbt E-Commerce-Unternehmen, die sowohl auf als auch außerhalb von Amazon verkaufen. Nach der Übernahme werden diese Marken in die Plattform von Unybrands integriert, wo die Abläufe optimiert, die Geschäftsleistung verbessert und die Expansion in neue Produktlinien und Märkte vorangetrieben wird.

Aktuell haben wir 30 Marken erworben, darunter Pet Care, Personal Care, Home Care, Supplements, Baby & Juvenile, Garden & Outdoor, Sports & Fitness sowie Home, Lifestyle Culinary & Arts. Durch professionelles Management und robuste Infrastruktur ermöglicht Unybrands E-Commerce-Marken, zu wachsen und erfolgreich zu sein.

Wir suchen einen unserer ersten Senior Engineers, um unsere ereignisgesteuerte E-Commerce-Plattform aufzubauen. Wir entwickeln nicht nur Integrationen, sondern nutzen diese verbundenen Systeme, um Anwendungen zu erstellen, die uns betriebliche Vorteile gegenüber Wettbewerbern verschaffen. Dies umfasst interne Tools, die uns helfen, Bestände schneller zu bewegen, die Nachfrage besser vorherzusagen und effizienter zu arbeiten als traditionelle E-Commerce-Unternehmen.

Dies ist eine einzigartige Gelegenheit für jemanden mit starker Erfahrung in verteilten Systemen, der über unseren gesamten Stack hinweg arbeiten kann - von leistungsstarken Backend-Diensten bis hin zu modernen React-Anwendungen. Wir benötigen Ingenieure, die die Prinzipien von nachrichtengetriebenen Architekturen verstehen und diese anwenden können, egal ob sie in Rust, TypeScript oder Python entwickeln. Wenn Sie Rust noch nicht kennen, aber über umfassende Erfahrungen mit verteilten Systemen in anderen Sprachen verfügen, unterstützen wir Ihre Lernreise.

Was diese Rolle einzigartig macht:

  • Plattform-Gründungsteam: Gestalten Sie Architekturentscheidungen von Anfang an.
  • Geschäftsauswirkungen: Entwickeln Sie Tools, die direkt die Abläufe und den Wettbewerbsvorteil verbessern.
  • Verteilte Systeme im großen Maßstab: Entwickeln Sie ereignisgesteuerte Systeme, die täglich Millionen von Ereignissen verarbeiten.
  • Vollständige Verantwortung: Übernehmen Sie Funktionen von PostgreSQL bis React UI.
  • Moderne Technologie-Stack: Rust (oder Bereitschaft zu lernen), TypeScript/React, AWS cloud-nativ.
  • Echte Komplexität: Bewältigen Sie eventual consistency, Nachrichtenreihenfolge und Multi-Tenant-Isolation.

Hauptverantwortlichkeiten:

  • Backend (60-70% Ihrer Zeit): Entwerfen und Implementieren von nachrichtengetriebenen Mikrodiensten, Erstellen von Integrationsverbindern für externe APIs (Marktplätze, ERPs, Logistik), Bearbeiten komplexer asynchroner Workflows mit ordnungsgemäßer Fehlerbehebung.
  • Frontend (30-40% Ihrer Zeit): Erstellen von React/TypeScript-Anwendungen für interne Operationsteams, Erstellen von Dashboards zur Überwachung der Integrationsgesundheit und Datenflüsse, Implementieren von Echtzeit-Updates mit ereignisgesteuerten Mustern, Entwerfen von UI-Komponenten, die asynchrone Zustände elegant behandeln, Entwickeln von Tools, die Teams helfen, schnellere, datengestützte Entscheidungen zu treffen.

Erforderliche Erfahrung:

  • Nicht verhandelbare Anforderungen: 5+ Jahre Softwareentwicklung mit Produktionssystemen, starke Erfahrung mit verteilten Systemen und nachrichtenbasierten Architekturen, Produktionserfahrung mit mindestens einem der folgenden: Kafka, RabbitMQ, SQS, EventBridge, Pulsar, Verständnis von Mustern verteilter Systeme: Event Sourcing, CQRS, Saga-Muster, eventual consistency, SQL-Datenbankerfahrung mit komplexem Datenmodellierung, API-Integrationskenntnisse mit Drittsystemen.

Technische Fähigkeiten:

  • Must have: Nachrichtenwarteschlangen, ereignisgesteuerte Architektur, asynchrone Programmierung, REST APIs.
  • Backend: Starke Erfahrung in einer modernen Sprache (Go, Java, C#, Python, Node.js). Rust-Erfahrung ist ein Plus, Bereitschaft zu lernen erforderlich.
  • Frontend: React mit Hooks oder eine der modernen Alternativen mit Bereitschaft zum Wechsel.
  • Datenbank: PostgreSQL oder ähnliches RDBMS.
  • Cloud: AWS-Dienste (SQS, EventBridge, Lambda, EKS).

Was Sie entwickeln werden:

  • Ereignisverarbeitungs-Pipelines, die außer der Reihenfolge eintreffende Nachrichten und Wiederholungen behandeln.
  • Zustandsmaschinen für komplexe mehrstufige Workflows.
  • API-Clients mit Schaltkreisschutz und Ratenbegrenzung.
  • React-Anwendungen mit Echtzeitdaten-Updates.
  • Überwachung und Beobachtbarkeit für verteilte Systeme.
  • Interne Tools, die Wettbewerbsvorteile bieten.
  • Automatisierung, die manuelle Betriebsarbeiten eliminiert.

Ideales Kandidatenprofil:

  • Sie sind jemand, der: Verteilte Systeme in der Produktion aufgebaut und betrieben hat, die Kompromisse zwischen Konsistenz und Verfügbarkeit versteht, Probleme über mehrere Dienste und Nachrichtenwarteschlangen debuggen kann, Frontend-Code schreibt, der die Realitäten verteilter Systeme behandelt (eventual consistency, partielle Ausfälle), bereit ist, Rust zu lernen, wenn Sie es noch nicht wissen, zwischen Backend-Diensten und React UI wechseln kann.

unybrands ist ein Arbeitgeber, der Chancengleichheit bietet und alle Bewerber ohne Rücksicht auf Rasse, Hautfarbe, Religion, Geschlechtsidentität, sexuelle Orientierung und Alter berücksichtigt. Bewerber werden auch nicht aufgrund von Behinderungen oder geschützten Klassen diskriminiert.

Seniority Level: Mid-Senior Level

Beschäftigungsart: Vollzeit

Jobfunktion: Technologie, Information und Internet

Senior Software Engineer - Full-Stack with Distributed Systems Focus Arbeitgeber: unybrands

Als Arbeitgeber bietet unybrands eine dynamische und innovative Arbeitsumgebung, die auf Wachstum und Entwicklung ausgerichtet ist. Mit einem engagierten Team von über 240 Fachleuten in einer inspirierenden Stadt wie Miami profitieren Mitarbeiter von vielfältigen Weiterbildungsmöglichkeiten und einer offenen Unternehmenskultur, die Kreativität und Zusammenarbeit fördert. Zudem legt unybrands großen Wert auf Chancengleichheit und Vielfalt, was das Unternehmen zu einem attraktiven Arbeitsplatz für alle macht.

U

Kontaktdaten:

unybrands Recruiting-Team

StudySmarter Expertenrat🤫

Wir sind der Meinung, dass du so Senior Software Engineer - Full-Stack with Distributed Systems Focus erhalten könntest

✨Engagier dich in Entwickler-Communities!

Lass uns mal ehrlich sein: In der Software-Entwicklung sind Netzwerke Gold wert! Tummel dich in GitHub-Projekten, nehme an lokalen Meetups oder Hackathons teil und vernetze dich mit anderen Entwicklern. So steigerst du nicht nur deine Sichtbarkeit, sondern lernst auch die neuesten Trends und Technologien kennen.

✨Zeig deine Fähigkeiten!

Erstelle ein Portfolio, das deine besten Projekte und Code-Examples zeigt. Nichts überzeugt mehr als ein praktischer Beweis deiner Skills. Das kann auch helfen, bei unybrands anzuklopfen, wenn du dich auf die Stelle als Senior Software Engineer - Full-Stack with Distributed Systems Focus bewirbst – so wissen sie gleich, was sie von dir erwarten können!

✨Nutze Jobplattformen speziell für Tech-Jobs!

Plattformen wie Stack Overflow Jobs oder AngelsList sind perfekte Orte, um Vollzeitstellen in der Software-Entwicklung zu finden. Hier sind viele tolle Unternehmen auf der Suche nach Talenten wie uns, also schau regelmäßig vorbei und bewirb dich direkt über die Website.

✨Such dir Mentoren und Feedback!

Hol dir Feedback von erfahrenen Entwicklern, die dir Tipps geben können, was Recruiter wirklich suchen. Ob über LinkedIn oder persönliche Kontakte: Menschen, die sich in der Branche auskennen, können enorm wertvoll sein, um dir zu helfen, dich optimal auf deine Bewerbung bei unybrands vorzubereiten!

Wir glauben, dass du diese Fähigkeiten brauchst, um Senior Software Engineer - Full-Stack with Distributed Systems Focus mit Bravour zu bestehen

Verteilte Systeme
Nachrichtenbasierte Architekturen
Ereignisgesteuerte Architektur
Asynchrone Programmierung
REST APIs
PostgreSQL
React mit Hooks

Einige Tipps für deine Bewerbung 🫡

Highlights deiner Coding-Skills:In der Software-Entwicklung kommt es auf konkrete Fähigkeiten an. Vergiss nicht, relevante Programmiersprachen und Frameworks in deinen Lebenslauf aufzunehmen. Zeig uns, was du kannst – vielleicht mit einem Link zu deinem GitHub-Profil oder einer Übersicht deiner Side Projects, die deine Programmierkenntnisse illustrieren.

Dokumentation deiner Erfolge:Gerade bei einer Vollzeitstelle in der Software-Entwicklung sind konkrete Ergebnisse Gold wert. Nenn uns Zahlen und Ergebnisse aus deinen vorherigen Projekten. Hast du den Code optimiert oder Systemfehler behoben? Solche Erfolge zeigen, dass du die Sprache der Entwickler sprichst und einen echten Mehrwert bringst.

Attraktive Projektbeschreibungen:Wenn du an Projekten gearbeitet hast, die hervorstechen, beschreibe sie ausführlich in deinem Lebenslauf. Was war das Problem, das du gelöst hast? Welche Technologien hast du eingesetzt? Das gibt uns einen klaren Einblick in deine Herangehensweise und Problemlösungsfähigkeiten.

Motivation zeigen:In deinem Anschreiben solltest du deine Motivation für die Stelle im Bereich Software-Entwicklung bei unybrands klar herausstellen. Warum sprichst gerade du die Anforderungen für diese Vollzeitrolle an? Mach deutlich, was dich an der Arbeit bei uns reizt und wie du über das rein Technische hinaus wachsen möchtest.

Wie man sich auf ein Vorstellungsgespräch bei unybrands vorbereitet

✨Technische Vorbereitung auf die Coding-Challenges

In der Software-Entwicklung sind technische Fragen oft ein zentraler Teil des Interviews. Macht euch mit Plattformen wie LeetCode oder HackerRank vertraut, um eure Problemlösungsfähigkeiten zu trainieren. Zeigt im Interview viel Selbstbewusstsein beim Erklären eurer Ansätze!

✨Das eigene Portfolio im besten Licht präsentieren

Stellt sicher, dass ihr ein aussagekräftiges Portfolio habt, das einige eurer besten Projekte zeigt. Seid bereit, darüber zu sprechen, was eure Rolle war, welche Technologien ihr verwendet habt und welche Herausforderungen es gab. Das gibt den Interviewern einen Einblick in eure praktische Erfahrung.

✨Teamfähigkeit und Kommunikation betonen

In einer Vollzeit-Position wird Kommunikation im Team sehr wichtig sein. Seid bereit, Beispiele aus der Vergangenheit zu teilen, in denen ihr effektiv im Team gearbeitet habt. Dies zeigt, dass ihr nicht nur technische Fähigkeiten habt, sondern auch gut ins Team passt.

✨Vorbereitung auf Fragen zur Software-Architektur

Bereitet euch darauf vor, Fragen zur Software-Architektur zu beantworten. Themen wie RESTful APIs, Microservices und Cloud-Architekturen können Teil eures Interviews sein. Zeigt euer Verständnis durch Diskussionen und Beispiele aus eurer bisherigen Arbeit oder Projekte.