logo

View all jobs

Full-Stack Entwickler/In (w/m/d) - September

Remote, Remote
Für einen unserer Kunden in der Energie-branche suchen wir einen freiberuflichen Full-Stack Entwickler/In (w/m/d)

Projektbeschreibung
Weiterentwicklung eines lokalen Clients (Frontend) und des dazugehörigen Backends in Azure PaaS.
Um Marktdaten (Urgent Market Messages, UMM) von verschiedenen europäischen Börsen nahe Echtzeit zu lesen, zu verarbeiten und zu speichern. Der dazugehörige Client stellt die Daten für die Endbenutzer in einer einheitlichen Übersicht dar. Die Börsen sind über eigens zu implementierende Schnittstellen und mit Hilfe der vorhandenen Middleware an die Lösung anzubinden.


Leistungsbeschreibung:

Alle Leistungen werden im Rahmen einer agilen Entwicklungsmethode eigenständig erbracht. Die Entwicklung erfolgt innerhalb eines selbständigen Projekts, welches sich auf die Entwicklung einer cloud-friendly Applikation fokussiert. Im Rahmen der agilen Vorgehensweise finden bis zu drei “Daily Scrum“ Meetings in der Woche statt. Dabei übernimmt der interne Produktowner die Abstimmung der Anforderungen mit dem Fachbereich und die Leistungsbeschreibung für die Entwicklung durch den externen Entwickler. Die für die Entwicklung benötigten Informationen sind zentral in Azure DevOps hinterlegt und ermöglichen es dem externen Entwickler selbständig die Programmierung durchzuführen. Der Auftragnehmer unterliegt bei der Leistungserbringung in fachlicher, örtlicher und zeitlicher Hinsicht sowie hinsichtlich der Wahl seines Tätigkeitsortes keinen Weisungen des Auftraggebers wird aber Anforderungen beachten, die zur fachgerechten Erbringung der unten aufgeführten Projektleistungen einzuhalten erforderlich sind. Dies betrifft funktionale Anforderungen die IT-Lösung im Sinne des „Was soll die IT-Applikation leisten“ und das „Rahmenwerk des WIE“. D.h. innerhalb der Kunden Cloud Standards, z.B.; Entwicklung eines Front-End Clients auf Basis des Electron Frameworks (inkl. Database, Kubernetes, etc.) in Verbindung mit Azure Services. Die Informationen werden ebenfalls im Azure DevOps bereitgestellt.


Aufgrund der speziellen Kundenanforderungen und des Fehlens eines Standardprodukts wurde beschlossen, die Anwendung intern von Kunden IT zu entwickeln. Das dazugehörige Know-How über die Entwicklung eines End-User Clients auf Basis einer Cross-Plattform-Desktop-Anwendung mit den Frameworks Electron und Node.js wird dabei extern bezogen, da im Unternehmen nicht vorhanden. Das agile Projekt ist in Sprints unterteilt. Die Sprints haben eine Dauer von zwei Wochen, so dass die Sprint-Planungsmeetings in Intervallen von zwei Wochen stattfinden. Die “Daily Scrums“ finden jeweils jeden zweiten Tag statt. Der Sprint-Review findet ebenfalls alle zwei Wochen statt. Im Anschluss zu dem Review folgt die Retrospektive. Die direkte Kommunikation innerhalb des Projekts erfolgt im Wesentlichen in MS Teams Calls und Chats. Die fachlichen Anforderungen werden direkt in Azure DevOps Boards von dem internen Produktowner (auf Basis der Kundenanforderungen) eingebracht. Davon unabhängig werden alle für die Weiterentwicklung relevanten Informationen im projekteigenen DevOps Board (als Produkt Backlog Item, Bug, Feature, etc.) festgehalten. Die Kommunikation bzgl. Anforderungen, Features, etc. findet über die Items in dem Board statt. Jedes Projektmitglied (inkl. Externer) hat Zugriff auf diese Informationen.


Entwicklung folgender Funktionalitäten (Front-/Backend):
  1. Die Weiterentwicklung des Clients, welcher lokal auf dem Rechner des Endusers installiert und genutzt werden kann. Dieser Client soll in einer ständigen Verbindung mit dem Backend (in Kunden Azure Cloud) stehen, und Information, sowie Daten in kürzester Zeit austauschen können. Das dazugehörige Backend ist ebenfalls eigenverantwortlich (auf Basis der Kunden IT-Strategieregeln und fachlichen Vorgaben) weiterzuentwickeln. Unter anderem ist auf die leichte Wartbarkeit und optimale Nutzung der vorhandenen Azure Services zu achten.
Im Wesentlichen beinhaltet dies:
  • Relaunch des lokalen Clients um Veränderungen des Layouts und Datahandlings umzusetzen
  • Anpassungen und Erweiterungen des Power BI Reportings
  • Automatisierte Versendung des lokalen Logfiles (nach aktiver Auslösung durch den Benutzer)
  • Automatische Auslösung eines Trading Stops durch ein weiteres internes IT-System
  1. Anbindung des Backends an die bestehende Middleware, um Börsendaten zu empfangen. Die Nachrichten werden zentral über ein bestehendes Middleware-System von der Börse abgefragt und für den Abruf über eine API bereitgestellt. Basierend auf der jeweiligen Schnittstellenbeschreibung ist die Gegenstelle/Empfang für die neue Anwendung zu implementieren.
Im Wesentlichen beinhaltet dies:
  • Modernisierung der HUPX Schnittstelle, von dem heutigen RSS Feed zu API
  • Anpassungen der bestehenden Datenstruktur/-modell und Schnittstellen aufgrund der Veränderungen der datenliefernden Systeme (z.B. Atonyx, EEX, etc.)
  • Erweiterung der Nichtverfügbarkeitsinformationen um die Daten bezüglich Consumption und Storage (analog zur bestehenden Production)
  • Überprüfung der Marktpublikationen bzgl. des Veröffentlichungszeitpunkts und Korrektheit
  1. Die empfangenden Börseninformationen sind nach den bekannten Handelsmärkten aufgrund der definierten Kriterien zu filtern und in den jeweiligen Ansichten anzuzeigen.
    Im Wesentlichen beinhaltet dies:
  • Umfangreiche Erweiterung (inklusive Filter, Sortierung und Suche) der Urgent Market Messages (UMM) um alle Marktteilnehmer, statt der Einschränkung auf interne Kraftwerke
  • Implementierung von Hyperlinks zu den Quellangaben der Nichtverfügbarkeitsinformationen an den Börsen, bzw. alternative generelle Links zu den Börsen
Die für die Entwicklung benötigte lokale Entwicklungsumgebung ist nicht vorgegeben. Der Austausch der zu liefernden Codebestandteile erfolgt über ein zentrales GitHub. Der Review und die Versionierung werden über Azure DevOps gesteuert.

Wesentliche Bestandteile von Kunden Cloud Framework (Grundlage der erforderlichen Entwicklung):

Azure (Backend) Services:
  • Azure Active Directory
  • Azure DevOps
  • Azure SQL
  • Azure Service Bus
  • Azure File Storage
  • Azure Functions
  • Azure Apps Insights
  • Azure Kubernetes Services
  • MS Power Platform:
  • Power BI
  • Client (Frontend) Frameworks: Electron Node.js

Der Kunde stellt vorab alle erforderlichen Unterlagen, Informationen und notwendigen Zugänge zu den verwendeten Systemen (MS Azure) zur Verfügung.

Projektstart: ASAP
Projektdauer: 4+ Monate
Projektkapazität: 20 Std./Woche
Einsatzort: Remote

 

Share This Job

Powered by