Thomas Kovacs

Software-Ingenieur und Gründer von personly and astateful

Beschäftigungen

Software Architect, Webgears GmbH

Götzis, Österreich
15.3.2023 to 31.7.2024

Um den Anforderungen des Unternehmens gerecht zu werden und die Produktivität der Entwickler zu steigern, habe ich ein Update aller 12 unserer Frontend-Produkte von NextJS v10 auf v14 App-Router durchgeführt. Die Aktualisierung umfasste das Umschreiben unserer Seiten, damit sie statisch generiert werden, um zwischengespeicherte Daten ordnungsgemäß bereitzustellen, das Entwerfen eines auf AWS DynamoDB basierenden Routing-Systems, das in die NextJS-Middleware integriert wurde, und die Nutzung von React Server Components sowie Context, um clientseitige Interaktivität auf eine Weise bereitzustellen, die ein hohes Maß an SEO-Leistung beibehält.

Implementierung eines Drei-Monats-Plans für die Migration aktualisierter Websites zu AWS. Zu den Aufgaben gehörte die Koordinierung der Tests der neu aktualisierten und migrierten Websites, die Koordinierung der Verwaltung von AWS CloudFront und Route53, die Sicherstellung, dass die derzeit entwickelten Funktionen ordnungsgemäß auf das neue System portiert wurden, die Koordinierung externer Auftragnehmer, die bei verschiedenen UI-Verbesserungen helfen sollten, sowie die direkte Codierung kritischer Funktionen nach Bedarf. Die Migration war ein voller Erfolg: Es gab keine Ausfallzeiten, die Leistung und Stabilität der Website wurde für unsere Millionen von monatlichen Besuchern verbessert, die monatlichen Ausgaben wurden um 60% gesenkt und die Produktivität und Moral des Entwicklerteams verbessert.

Durchführung von 1:1-Sitzungen mit den Mitgliedern des Entwicklungsteams, Ermittlung von Bereichen, auf die man sich konzentrieren und die man verbessern sollte, sowie Umsetzung von Aktionsplänen zur Förderung der beruflichen Entwicklung. Darüber hinaus organisierte er eine Teamveranstaltung, um den Migrationsplan zu AWS zu fördern, Wissen zu teilen und eine allgemeine Entwicklungsvision für das Team bereitzustellen, die sich auf einen transformativen Führungsstil stützte.

Entwurf eines Plans für die Frontend-Migration zu AWS, Identifizierung von Möglichkeiten zur Stornierung teurer Dienste, die nach der Migration nicht mehr benötigt würden, sowie Identifizierung eines Migrationspartners, der SaaS nutzt, um eine qualitativ hochwertige Automatisierung der Bereitstellungen zu gewährleisten, alles mit dem Ziel, die Produktivität der Entwickler zu verbessern und das Unternehmen zu stärken.

Gründer, astateful e.U.

Graz, Österreich
1.6.2020 to 28.2.2023

Entwurf und Umsetzung eines Konzepts für eine moderne Personal Matching-Plattform "personly", die eine geeignete Alternative zu Anwendungen im Stil des Foto-Matching darstellen soll. Das grundlegende Konzept ist eine "tokenisierte Person", bei der der Nutzer einer neuen Person einen Token-Betrag zuweist, der bestimmt, mit wie vielen anderen Personen diese Person zusammenpassen kann. Token können auf der Plattform für kleine Beträge in Fiat-Währung erworben werden, wodurch die traditionelle Marktdynamik zur Verwaltung der Erstellung und des Abgleichs von Personen genutzt werden kann.

Wir haben verschiedene Funktionen implementiert, die für das Funktionieren der Plattform entscheidend sind, wie z. B. das Benutzerregistrierungssystem, das Personenverwaltungssystem einschließlich des Matching-Algorithmus, die Funktion zum Hochladen von Bildern, die Chat-Funktion und andere. Die Funktionen sind in einer Reihe von Webanwendungen implementiert, die sowohl mit ReactJS als auch NextJS geschrieben wurden, mit Backend-Konnektivität und Streaming durch grpc mit Datenspeicherung in MongoDB.

Entwicklung eines benutzerdefinierten Build-Systems, um automatisch sowohl Docker-Images als auch Kubernetes-Service-, PVC- und Deployment-Dateien zu generieren, die über einen externen DNS-Kubernetes-Service in das DNS des Cloud-Anbieters integriert werden. Das Build-System generiert auch PM2-Prozessdateien für die Verwendung während der Entwicklung sowie Docker Compose-Dateien für die Verwendung in einer Staging-Umgebung.

Lead Developer, Ünversität für Musik und darstellende Kunst Wien

Wien, Österreich
1.7.2020 to 31.8.2021

Für die Internationale Sommerakademie (ISA) der Musikuniversität Wien wurde eine Website eingerichtet, auf der sich die Studierenden einloggen und die anstehenden und aktuellen Veranstaltungen des jährlich stattfindenden zweiwöchigen Sommerakademienprogramms einsehen können. Die Studierenden konnten auch Links zu den von ihnen gewählten Kursleitern austauschen. Die zugehörigen Studenten-, Professoren- und Veranstaltungsdaten wurden aus dem CMS der Startseite importiert.

Es wurde ein separates Administrationsprogramm entworfen und implementiert, mit dem Benutzer mit den entsprechenden Berechtigungen sowohl Veranstaltungen als auch Studenten verwalten können. Sowohl die Studenten- als auch die Admin-Applikation wurden mit React/Redux/NextJS für die GUI sowie GRPC/MongoDB/NodeJS für die Backend-Architektur implementiert.

Erstellung eines Release-Prozesses unter Verwendung des Lerna Monorepo Management Tools zusammen mit NPM und Yarn Workspaces Package Management, um die privaten Pakete und ihre semantischen Versionen hochzuladen und zu pflegen. Erstellung eines Build-Prozesses, der die Erstellung von Docker-Images automatisiert, indem er die privaten NPM-Pakete herunterlädt, konfiguriert und in die entsprechenden Docker-Images einbaut.

Lead Developer, Vaultoro Limited

Berlin, Deutschland
15.9.2017 to 31.5.2020

Als leitender Entwickler für Vaultoro entwarf und implementierte ich die Strukturen, die für den erfolgreichen Relaunch der Vaultoro-Plattform für den Handel mit Kryptowährungen und Vermögenswerten erforderlich sind. Das Anwendungs-Backend basiert auf einer Microservice-Architektur, die sich auf ein beliebtes Protokollformat stützt, das sowohl Streaming- als auch Unary-Anfragen ermöglicht, um den Auftragsabgleich, das Abrufen von Preisen und die Verarbeitung von Wallet-Transaktionen zu erleichtern. Das Front-End basiert auf ReactJS über NextJS mit Redux als Datenmodell. Zusätzlich entwickelte und pflegte ich das Build-System, das die automatische Generierung von Docker-Images ermöglicht.

Als leitender Entwickler für die Bar9 GmbH habe ich die Strukturen entworfen und implementiert, die notwendig sind, um den erfolgreichen Start der Bar9-Webanwendung für den Kauf und Verkauf von Metallwerten zum aktuellen Marktpreis zu gewährleisten. Die Anwendung ist in Javascript geschrieben und basiert auf dem weit verbreiteten MeteorJS, das sowohl eine Backend-Laufzeitumgebung als auch Frontend-Bindings für ReactJS bereitstellt, wobei das eigene Socket-Protokoll für den Datentransfer verwendet wird.

Pflege des Produkt-Backlogs für Bar9 unter Verwendung von Jira über die Github-Integration und enge Zusammenarbeit mit den Produktverantwortlichen zur Bereitstellung von Schwierigkeitsschätzungen hinsichtlich der Länge und Komplexität der Funktionsimplementierung sowie der Beziehung zwischen den Funktionen für das Vaultoro-Handelsprodukt. Er war in der Lage, Features auf sehr abstrakte Weise miteinander in Beziehung zu setzen und kritisches Feedback zu Feature-Abhängigkeiten zu geben. Er führte Code-Reviews durch und fungierte als inoffizieller Teamleiter in einer begrenzten Führungsrolle.

Software Developer, microDimensions GmbH

Munich, Deutschland
1.2.2014 to 31.5.2017

Zu den Hauptaufgaben als Softwareprogrammierer gehörte das Entwerfen und Implementieren von C++-Code im Zusammenhang mit Bild-I/O, insbesondere das Lesen von Bilddaten von der Festplatte und das optimale Schreiben von Bilddaten auf die Festplatte. Zusätzlich wurden Funktionen für die Bildverarbeitung implementiert, wie z. B. Qt-Widgets für die Durchführung von Bildexportaufgaben und den Import großer Bilddateien.

Erstellung eines Prototyps einer Webanwendung mit Angular2, Typescript, OpenSeadragon und Bootstrap, um sehr große Bilder online zu betrachten. Die Bilder und ihre zugehörigen Metadaten sowie Sitzungsinformationen und Bildkommentare waren über eine mit Express implementierte REST-API zugänglich, die asynchron Bilddaten über ein NodeJS-Modul erfasste, das V8-Engine-Bindings zu unseren zugrunde liegenden Bildverarbeitungs-DLLs enthielt.

Spielte eine wichtige Rolle dabei, unsere Desktop-Anwendungsfunktionalität über Webanwendungen ins Internet zu bringen. Zu den Hauptaufgaben gehörte die Entwicklung der Backend-Architektur, wie z.B. eine RESTful API, die mit NodeJS entwickelt wurde, sowie die Interaktion mit der Postgresql-Datenbank. Weitere Aufgaben umfassten die GUI-Entwicklung mit Polymer 2.0 sowie Redux, um die Grundlage für eine in Javascript geschriebene Single-Page-Anwendung zu schaffen.

Software Developer, Transact GmbH, a division of epay

München, Deutschland
1.8.2013 to 31.1.2014

Als Softwareentwickler im Back-Office-Team habe ich an der Erstellung von Berichten zur Unterstützung der Kundenfakturierung mitgewirkt. Das Front-End der Berichtsanwendung wurde in C++ unter Verwendung der Borland Compiler Suite erstellt und gepflegt, während die Berichtsdaten mithilfe komplexer SQL-Abfragen generiert wurden.

Assistierte bei der Entwicklung eines neuen webbasierten Kundenportals, um unseren Kunden eine bessere Kontrolle über ihre Konten bei der Firma zu ermöglichen und um Berichte einzusehen. Das System wurde unter Verwendung des Zend 2 Frameworks (PHP) zusammen mit Angular 1 und Bootstrap entwickelt. Für den Zugriff auf die wichtigen Kundendaten wurde eine Restful-API mit SOAP implementiert.

Software Developer, University of Graz

Graz, Österreich
1.10.2012 to 31.5.2013

Als Softwareentwickler in der Abteilung für Wirtschaftsinformatik der Universität überwachte ich die Implementierung einer "Digital Almanac"-Website, die Informationen über digitale Kommunikation liefert, wie z. B. historische Daten, die als Maßstab für die Ermittlung künftiger Trends dienen. Die Website wurde mit Wordpress umgesetzt.

Erstellung einer Anwendung in C++ zur Umwandlung von CSV-Rohdaten in ein Format, das für die Verwendung mit Google Public Data geeignet ist. Die Anwendung generierte auch optimiertes Javascript aus einer Google DSPL XML-Datei, um eine optimale Navigation für die Nutzer zu ermöglichen, die die in die Almanac-Website eingebetteten Visualisierungen betrachten.

Erstellung eines kleinen benutzerdefinierten Javascript-Frameworks zur Steuerung der Digital Almanac-Website. Das Framework war in der Lage, Inhalte dynamisch über AJAX zu laden und es einem Benutzer zu ermöglichen, Link-Parameter zu teilen, die den aktuellen Zustand der Visualisierung beschreiben. Es wurde auch für den Einsatz von Mobilgeräten, wie z. B. Bandbreitenbeschränkungen und verschiedene Bildschirmgrößen, eingesetzt.

Software Developer, Identum Communications GmbH

Wien, Österreich
1.2.2011 to 31.3.2012

Leitung der Entwicklungsarbeit für ein Facebook-Verwaltungstool für soziale Medien namens fimpl. fimpl, kurz für "Facebook. Simple" war in der Lage, mehrere Seiten und Profile auf Facebook zu verwalten, bevor diese Funktion auf Facebook existierte. Darüber hinaus war es möglich, Beiträge, Kommentare und Likes für die Veröffentlichung auf mehreren Seiten und Profilen zu einem späteren Zeitpunkt zu planen, so dass Agenturen die Facebook-Präsenz ihrer Kunden besser planen und verwalten konnten.

Das Produkt wurde mit jQuery und Vanilla JS für das Frontend implementiert, während das Backend mit PHP und MongoDB sowie Gearman Job Scheduler implementiert wurde, um Aufgaben zur Aktualisierung von Facebook-Seiten und -Profilen über die Facebook Graph API zu planen und auszuführen.

Junior Software Developer, Globalstar Canada Satellite Co.

Mississaugua, Kanada
1.5.2010 to 31.12.2010

Unterstützung bei der Entwicklung und Wartung der Globalstar E-Commerce-Einkaufswagen-Plattform, die sowohl die Satellitentelefon- als auch die SPOT-Produkte umfasste. Der Einkaufswagen wurde mit Zencart entwickelt und in die Globalstar-Hauptwebsite integriert, um den Relaunch des gesamten weltweiten Globalstar-Website-Netzwerks vorzubereiten. Die Arbeit konzentrierte sich in erster Linie auf PHP mit zusätzlichen clientseitigen Funktionen, die in Vanilla JS und jQuery geschrieben wurden.

Support Technician, Magna Automotive Holding AG

Graz, Österreich
1.1.2009 to 31.12.2009

Arbeitete eng mit dem Management des Magna IT Global Help Desk zusammen, um ein kleines ERP-Tool zu erstellen, das das Support-Team bei der Verfolgung des Status von Erfüllungsanfragen unterstützte, z. B. bei der Beschaffung von Schlüsselanhängern für verschiedene Mitarbeiter auf dem Magna-Campus. Das kleine System, das mit PHP und MySQL im Backend sowie Vanilla JS und jQuery im Frontend geschrieben wurde, enthielt eine einfache Schnittstelle für die Verwaltung des Status der Anfragen einschließlich eines kleinen benutzerspezifischen Bereichs.

Unterstützung des IT-Helpdesks bei der Unterstützung verschiedener Mitarbeiter im weltweiten Magna-Netz bei der Lösung von Problemen im Zusammenhang mit der Nutzung des Magna-Netzes, z. B. Probleme mit E-Mail, Blackberry-Aktivierung, Systemanmeldung usw. Die Unterstützung erfolgte in der Regel per Telefon, über interne Chat-Tools, die von Lotus Notes bereitgestellt wurden, und gelegentlich auch vor Ort in Form von Schlüsselanhängern.

Arbeitgeber

wg-logo-quer.svg
Webgears GmbH

Wir verbinden Massen von Online-Shoppern mit wertvollen geschäftsorientierten Handelsinhalten über unser Partnernetzwerk vertrauenswürdiger Verlagsmarken.

astateful-light.svg
astateful e.U.

astateful bietet seinen Kunden umfassende Web-Lösungen.

isa-light.svg
Ünversität für Musik und darstellende Kunst Wien

ISA ist eine Abteilung der MDW, die eine internationale Musikakademie für angehende Musiker betreibt.

vaultoro-light.svg
Vaultoro Limited

Vaultoro ist eine Kryptowährungsbörse, die sich auf den Handel mit Gold und Silber sowie auf beliebte Kryptowährungen wie Bitcoin spezialisiert hat.

md-light.png
microDimensions GmbH

microDimensions war ein Biotech-Unternehmen, das sich auf Anwendungen für die digitale Pathologie spezialisiert hatte.

epay-light.png
Transact GmbH, a division of epay

epay ist Teil von Euronet, einem globalen Zahlungsanbieter, der eine Vielzahl von Zahlungsdiensten anbietet.

unigraz-light.png
University of Graz

Die Universität Graz ist eine der größten Universitäten Österreichs und Heimat vieler renommierter Wissenschaftler.

1641227317295.jpeg
Identum Communications GmbH

identum ist eine Kreativagentur mit Schwerpunkt auf klassischer Printmediengestaltung und Werbung

GSAT_BIG-2663defc.png
Globalstar Canada Satellite Co.

Globalstar bietet Konnektivität jenseits des Mobilfunknetzes mit globalen mobilen Satellitentelefonen, die von ihrem Satellitennetzwerk in niedriger Umlaufbahn betrieben werden.

Magna_logo.svg
Magna Automotive Holding AG

Magna International Inc. ist ein kanadischer Hersteller von Teilen für Automobilhersteller.