2019-07
2020-08
Inhalt: Softwareentwickler, Mitglied im Entwicklungsteam, 40 Wochenstunden vom Juli 2019 bis August 2020 mit Büropräsenz im Firmenoffice.
Ich war Mitglied im Bereich für Technische Informatik - Team aus 5 Softwareentwicklern im kompletten Entwicklungszyklus.
Gegenstand der Entwicklung: Weiterentwicklung der Teilmodule der Kundenanwendung mit Datenbankanbindung für Verwaltung der technologischen Objekte.
Vorgehen: SCRUM-Besprechungen und Planungen einmal wöchentlich.
Gegenstand der Entwicklung: Entwicklung einer Telematik-Schnittstelle,
(Weiter-)Entwicklung der Berichte aus dem Anlass der Modernisierung, gleichzeitige Entwicklung mehrerer Berichtsversionen für einige Kunden als Teilmodule des Berichtsmoduls.
Code- und Datenbasis: einige C#-Projektmappen - je eine pro Software-Projekt (z.B. eine Mappe für die Schnittstelle, eine Mappe für die Berichtskomponenten). Sybase SQL Anywhere Datenbank. Die Verwaltung der Codebasis (zunächst) im GITLab und (danach) in Azure DevOps
Verantwortung / Rollen - Andriy Urodin
Werkzeuge: Visual Studio 2019, Sybase SQL Anywhere Designer, GITLab, DevOps, Telerik-Berichtsumgebung
Sprachmittel: C# in .NET-Umgebung, SQL (Watcom-Dialekt für SQL Anywhere)
1. Rolle. Fertigstellung eines vorentwickelten Schnittstellenprototyps zum Laden der Betriebsdaten aus externen Quellen in die Betriebsdatenbank (in C#).
Asynchrone Verbindung zu externen Portalen. Anschließende Typenkonversion und Übertragung der Betriebsdaten in die produktive Datenbank.
2. Rolle. Umstellung älterer Berichtskomponenten (einschließlich Tests) auf modernisierte Berichtsengine (in C# und Telerik-Berichtsdesigner).
2015-11
2017-11
Inhalt: Softwareentwickler, Mitglied im Entwicklungsteam, 40 Wochenstunden, vom November 2015 bis November 2017 mit Büropräsenz im Firmenoffice.
Ich war Mitglied eines einzigen internen Entwicklerteams aus acht Personen (6 vor Ort, 2 am Stadtort) im Unternehmen; im kompletten Entwicklungszyklus: Support, Definition der Werte, Analyse der Anforderungen und Funktionen, Entwurf, Spezifizierung,
Implementierung, Tests, Dokumentation, Veröffentlichung, Monitoring, Logging und Rückmeldung.
Vorgehen: tägliche SCRUM-Konferenzen, Sprint-Planung für die nächsten drei Wochen mit Sondervorgehen vor den Ausliefererungen.
Gegenstand der Entwicklung: Weiterentwicklung der Unternehmensanwendung für den internen gebrauch mit Anbindung an die Microsoft SQL Datenbank zur Verwaltung der täglichen Geschäftsaktivitäten. Die Anwendung basiert hauptsächlich auf Komponenten, die als Masken dargestellt werden.
Code- und Datenbasis: eine Projektmappe in Visual Studio mit bis zu 60 C#-Projekten, Datenbank mit über 100 Tabellen (zunächst) in Microsoft SQL Server 2008, und (danach) in Microsoft SQL Server 2016.
Verwaltung der Versionen und der Codebasis im Team Foundation Server
* eine Projektmappe mit dem gesamten Code-Bestand,
* das exklusive sperrende Bearbeitung der Dateien durch Entwickler - ohne Merge-Vorgänge,
* die Zuordnung zu den TFS-Betriebselementen (zu den User-Stories und zu den Funktionen im TFS) durch Referenzieren beim Einchecken (check in),
* die ausführlich kommentierte Historie der Dateiversionen (beim Eincheck-Vorgang).
Verantwortung / Rollen - Andriy Urodin
Werkzeuge: internes Entwicklungsdesigner, Visual Studio 2017, Microsoft SQL Management Studio, Profiler, Team Foundation Server zur Registrierung von Stories, Items und Funktionen.
Sprachmittel: C# in .NET-Umgebung (einschl. LINQ), Transact-SQL, XML, teilw. WSDL, minimal ADO.NET; objektorientiertes Vorgehen mit Hierarchien von Klassen und Schnittstellen.
1. Rolle. Die Entwicklung, Optimierung und Monitoring einer Schnittstelle für Artikelbestände
Schnittstelle zur Modernisierung des Systems für Verwaltung der Artikelbestände (von MS Access Datenbank zu MS SQL Datenbank, ETL-Prozess)
Inhalt:
* die Übertragung der Daten für die im älteren System (MS Access) gebuchten Aufträge (inkl. Artikel an Standorten) eins zu eins (mit Typenkonversion zwischen den Datenbankstandards) in die spezifischen Aufnahmetabellen,
* die Berechnung der resultierenden Artikelbestände an Standorten mit Speicherung in Bestandstabellen der Produktivdatenbank
Sprachmittel: C#, T-SQL (ausführlich kommentierter Script), XML.
Das Lösungsvorgehen als periodisch auszuführender Windows-Dienstauftrag
(in C# implementiert)
Extract: Bulkimport in die Aufnahmetabellen mit OLEDB-Verbindung zu MS Access-Datenbank
Transform, Load: Ausführung des SQL-Scripts, der aus den Werten in Aufnahmetabellenen den korrekten Bestand berechnet und in die Tabellen speichert, die zum Bestandsmodell gehören.
Methode: aus dem C#-Code wird die Ausführung des SQL-Scripts gestartet, der basierend auf isolierten SQL-Transaktionen die Bestände berechnet und speichert.
2. Rolle. Die Erweiterung und Optimierung der Test-Umgebung mit asynchronem Modus zur Prüfung der Anwendungskomponenten und Datenbankelementen auf Integrität und Konsistenz - Testumgebung, die aus dem Entwicklungs-Designer die Bestandteile der Komponenten prüft (in C#).
3. Rolle. Nach Absprache mit dem Anwendungsarchitekten: Optimierung und Weiterentwicklung einzelner (Teil-)Module des internen Entwicklungswerkzeugs (z.B. Verbesserung der Logging-Routinen).
4. Rolle. Die Unterstützung für Anwendungbenutzer: E-Mail und telefonische Kommunikation - 2nd- und 3rd-Level-Support; Reaktion auf Anfragen, Dokumentierung der Vorgänge in Team Foundation Server.
2nd-Level-Support abwechselnd in Wochenschichten: telefonische Unterstützung und Erfassung der Anfragen als Anforderungen, User Stories, Funktionen im Entwicklungszyklus in Team Foundation Server mit anschließender Weitergabe an die jeweils verantworlichen Kollegen für 3rd-Level-Support.
5. Rolle. Die Entwicklung von Masken als Komponenten für die Unternehmensanwendung zu diversen Unternehmensthemen (z.B. Übersicht des Artikelbestandes). Entwicklung im internen Designer: Zusammensetzung des Maskenentwurfs aus Objekten-Deskriptoren.
6. Rolle. Die Rolle bei planbaren Vorbereitungswochen für die Auslieferungen: Integrität der Anwendungskomponenten und Datenbankelementen durch Prüfung.
7. Rolle. zwei Vorträge in jeweils aktuellsten Projektthemen für die Kollegen aus der Entwicklung.
06/2019 - 08/2020
Teilnahme am Projekt zur Algorithmen- und Anwendungsentwicklung (.NET Core) als Mitglied eines Entwicklerteams mit Bezug auf den Datentransfer- und umwandlung (SCRUM-Vorgehen).
11/2015 - 11/2017
Mitglied des Softwareentwickungsteams (.NET, SCRUM-Vorgehen)
Erfolgreiche Anwendung folgender Fähigkeiten:
2007-10
2014-06
2002-09
2005-01
Grundstudium in Präsenz, Dauer: 5 Semester
Angestrebte Tätigkeit als Software-Entwickler in Tele(heim)arbeit / Andriy Urodin
Die analytisch und strukturell intensive Entwicklung und mathematisch orientierte Beschäftigung, im Sinne der logisch, kalkulationstechnisch und rechnerisch beladener, zahlenaffiner Vorgehensweise.
Weiterhin beschäftige ich mich
* mit der Optimierung und Verbesserung der Kern-Framework und den wichtigsten Grundlagenmodule (z.B. Standardmodule) im Hinblick auf die vordefinierten Metriken (z.B. auf die zu verwendenden Resourcen - Zeit, Energie, Operationenzahl),
* mit der Analyse der Daten, Optimierung massiver Datenverarbeitung,
* mit der zweckmäßigen Modellierung der Datenbanken (einschließlich Abfragen u. deren Optimierung),
* mit den Know-how Testverfahren für die Anwendungen,
* mit der stilsicheren Refaktorisierung und Review der wesentlichen (Standard-)Module mit Einhaltung der Sprachstandards und -muster für Programmierung,
* Schulungen und Training zu den mathematischen Themen.