Software Configuration Management, Script-Entwicklung, Perl, Unix
Aktualisiert am 04.06.2024
Profil
Freiberufler / Selbstständiger
Remote-Arbeit
Verfügbar ab: 24.06.2024
Verfügbar zu: 100%
davon vor Ort: 100%
Software Configuration Management
Perl
SCM
Legacy Perl Code
Deutsch
Englisch
fliessend

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
möglich

Projekte

Projekte

8 Monate
2022-10 - 2023-05

Eine Performance-Verbesserung wird durch den Einsatz einer Datenbank erreicht

Software-Entwickler Perl Git
Software-Entwickler
Gewachsener Perl-Code verarbeitet große Mengen an Daten. Die

Performance soll gesteigert werden.


Legacy Perl Code wird analysiert und optimiert.

Perl Git SPICE
Perl Git
Infineon
München
8 Monate
2021-10 - 2022-05

Bestehende Software wird auf eine neue Version des Betriebssystems umgezogen

Software-Entwickler Perl Analyse von Legacy Code
Software-Entwickler
Gewachsener, Perl-Code, der ?rmen-intern im Einsatz ist, soll
nach einem Upgrade des Betriebssystems weiter produktiv bleiben.
Funktionalität wird analysiert. Notwendige Änderungen werden ein-

gebracht und getestet.


Bei der Gelegenheit wird Podman eingeführt.
Perl Git Selenium Podman
Perl Analyse von Legacy Code
München
2 Jahre 2 Monate
2019-01 - 2021-02

Ein produktives Proof of Concept wird nachgebaut

Software-Entwickler Perl
Software-Entwickler

Situation: Gewachsener, produktiver Perl-Code wird im Rahmen einer Firmenübernahme mit übernommen. Die Funktionalität wird analysiert um dann mit eigenen Mitteln und eigenen Standards folgend nachgebaut zu werden.

Aufgaben: Analyse von Perl-Code. Beratung im Hinblick auf das Re-Implementieren der Funktionalität.

Perl
Perl
Köln
9 Monate
2017-10 - 2018-06

Ein Perl-Projekt wird durch eine Neu-Entwicklung abgelöst

Software-Entwickler Perl
Software-Entwickler

Situaion: Älterer historisch gewachsener Perl-Code befindet sich in einem Zustand in dem die Weiterentwicklung aufwendig ist. Der Kunde ist dabei, den Code durch eine Neu-Entwicklung in Java zu ersetzen. Dabei wird produktiver Perl-Code analysiert um Aussagen über dessen Verhalten zu gewinnen, die dann in die neue Entwicklung einfließen können. Daneben soll der produktive Code um Features ergänzt werden, die auch in der Neu-Entwicklung implementiert werden.

Der bestehende Perl-Code ist während der Maßnahme weiter im Einsatz und erfährt Veränderungen, indem neue Merkmale eingeführt werden.

Aufgaben: Analyse von bestehendem Perl-Code. Entwicklung an bestehendem Perl-Code. Unterstützung der Entwickler bei der Neu-Entwidklung in Java.

JetBrains IntelliJ IDEA Perl Atlassian JIRA Atlassian Confluence
Perl
Berlin
1 Monat
2017-01 - 2017-01

Entwicklung in Perl

Perl

Umfeld:

Betreiber von Shops im World-Wide Web

Perl
Online-Händler
Hannover
1 Jahr
2015-01 - 2015-12

Document Management, Archivierung, Umgang mit Multimedia-Inhalten, Indexing

Software-Entwickler Perl PostgreSQL
Software-Entwickler

Redundanzen oder Veränderungen in Datei-Systemen sollen erkannt werden. Abweichungen von Datei-System-Hierarchie-Konventionen sollen erkannt und korrigiert werden. Dateien werden indiziert.

Zusammenfassung

  • Wir beabsichtigen, Veränderungen an Dateisystemen zu entdecken um so Konfigurations-Daten eines Systems zu finden.
  • Wir beabsichtigen, redundante Dateien in einem Datei-System zu entdecken.
  • Wir beabsichtigen, Abweichungen von Konventionen der Datei-System-Hierarchie zu entdecken oder sicherzustellen, daß beim Vereinnahmen von neuen Dateien die Konventionen eingehalten werden.
  • Dateien sollen indiziert werden. Damit soll ein schnelles Auffinden ermöglicht werden.

Situation

Veränderungen an einem Dateisystem

Der Inhalt der Konfigurations-Dateien, die von einem Software-System, zum Beispiel einem Server, verwendet werden, weicht im Betrieb von dem Zustand nach der Installation ab. Das Entdecken von Veränderungen hilft, die Konfiguration des Systems zu verstehen, zum Beispiel um auf der Basis einer vorhandenen, im Gebrauch gewachsenen Konfiguration ein ähnliches System zu erstellen, das das erste ersetzen soll.

Redundanzen im Datei-System

Datei-Hierarchien, die zum Beispiel auf beweglichen Geräten, die während ihrem Einsatz keine Verbindung zu einem Server oder zu einander haben, können von einander abweichen. Abweichungen oder Redundanzen sollen erkannt werden.

Datei-System-Hierarchie-Konventionen

Abweichungen von einer Konvention sollen erkannt und bereinigt werden. Zum Beispiel bei der Vereinnahmung von Medien-Dateien aus einem Aufnahme-Gerät soll hier gegen die Konvention geprüft werden und gegebenenfalls Dateien verschoben werden, um der Konvention zu genügen.

Benutzte Funktionalität

Linux, NetBSD, ein wenig Windows

Veränderte Funktionalität

Perl-Scripts dokumentieren Tupel von Verzeichnissen, die wesentliche Redundanzen haben.

Netto Effekt

Techniken zur Versionierung, Archivierung, zum Document Management sind unverzichtbar. Entstehende Scripts können später zum Beispiel als Sicherheits-Netz genutzt werden.

Perl PostgreSQL
(Eigenbedarf)
Köln
5 Monate
2014-08 - 2014-12

Inhalt wird von PDF-Dateien extrahiert

Software-Entwicklung Java Perl YAML
Software-Entwicklung

Merkmale:

  • Textverarbeitung
  • Buchhaltung

Stichwörter:

  • Datei-Konversion
  • PDF
  • Buchhaltung

Situation:

Eine Quelle von Daten f¨ur die Buchhaltung ist die manuelle Eingabe von Daten aus Dokumenten. Einige der Dokumente liegen primär in Form von Dateien im PDF-Format vor. Die Maschine soll den Vorgang der Dateneingabe aus PDF-Dokumenten übernehmen. Zun¨achst sollen Daten aus einigen bestimmten Dokumenten, die im PDF-Format vorliegen, gewonnen werden. Die Motivation besteht hauptsächlich in konstruktiver Faulheit.


Wir hoffen auf diese Seiteneffekte:

  • Mehr Daten können in die Buchhaltung einfließen
  • Daten können zeitnäher verwendet werden, indem die
    manuelle Eingabe durch einen mehr oder weniger
    automatisierten Prozess ersetzt wird.
  • Die Extraktion von Daten aus Dokumenten ist weniger
    fehleranfällig als die manuelle Eingabe.

Es muss ein Weg gefunden werden, Daten aus PDF- Dokumenten zu übernehmen, die von Anderen zum alleinigen Zweck der Präsentation in zweidimensionalen Medien vorbereitet wurden. – Die Aktivität wird als Teil des Weges zu einem angenehm automatisierten Buchhaltungs-Prozess gesehen. Die generierte Funktionalit¨at soll konfigurierbar sein, so dass sie mit wenig Aufwand an sich ¨andernde Dokumenten-Formate oder andere Dokumente angepaßt werden kann.

Funktionalität

Die Buchhaltung wird mit Hilfe einer Menge von schnellgestrickten Scripts durchgef¨uhrt. Daten werden
ausschließlich manuell mit Hilfe von einem Bildschirm, einer
Tastatur und einem Bild des Quell-Dokumentes eingegeben.

Erfahrung

Es wurde gezeigt, daß eine Lösung gefunden werden
kann, die sicherstellt, dass keine relevanten Daten verloren
gehen. Der Inhalt des Quell-Dokumentes wird in einer Form
weitergereicht, wie er von folgenden Prozess-Schritten verarbeitet werden kann. Veränderte Funktionalität Wir verwenden verschiedene Merkmale von pdfbox um ein existierendes PDF-Dokument in Text zu wandeln. Ein Perl-Script extrahiert die relevanten Informationen von diesem Text. Die Extraktion wird durch eine Konfiguration gesteuert.

Ziele:

  • Die Verlustlose Extraktion vom Inhalt einer PDF-Quell-Datei ist sichergestellt.
  • Falls das Quell-Dokument unerwartet formatiert ist, werden
    entsprechende Warnungen ausgegeben. Es wird angemerkt, falls der Extraktions-Prozess in Bezug auf die Extraktion von relevanten Daten nicht komplett durchgef¨uhrt werden kann. Auf diese Weise wird vermieden, dass sich die unerwartete Formatierung des Quell-Dokuments oder auch Fehler in der Konfiguration unbemerkt auf die ausgegebenen Daten auswirken.
  • Daten werden in einem benutzbaren Format weitergereicht,
    zum Beispiel formatiert als YAML.
  • Die Anpassung der Konfiguration an eine ge¨anderte
    Formatierung des Quell-Dokuments oder das Erstellen einer
    Konfiguration f¨ur ein neues Quell-Dokument-Format ist
    einfach.

Verwendete Produkte

  • Perl
  • pdfbox

Zukunft

Die fast ausschließlich mit Mitteln von Perl generierte Funktionalität könnte in pdfbox integriert werden. Damit könnte
die Benutzbarkeit und die Erweiterbarkeit erhöht werden.
Effekt Erfahrungen sollen zeigen, ob die Funktionalit¨at zum Beispiel beim Lesen von Kontoauszügen oder Telefon-Rechnungen eingesetzt werden kann.

pdfbox Perl
Java Perl YAML
(Eigenbedarf)
Köln
2 Monate
2014-03 - 2014-04

Wartung von Legacy Perl Code

Software-Entwickler Perl Omnimark XML ...
Software-Entwickler
  • Der Kunde war dabei, eine bestehende Publishing-Prozesskette von Omnimark auf XML umzustellen.
  • Beratung, Wartung von Legacy Perl Code Zusammenfassung Hier ging es um den Umgang mit Legacy Perl Code. Der Kunde benutzte Omnimark. Die Einarbeitung in Omnimark war gefordert. Situation Omnimark in der publishing pipeline sollte abgelöst werden. Netto Effekt Es war eine Erfahrung mit Omnimark

Perl Omnimark XML XSL
Verlag
Düsseldorf
1 Jahr
2013-01 - 2013-12

Einführung von Software Configuration Management, Scrum

Software-Entwicklung, Software Configuration Management
Software-Entwicklung, Software Configuration Management

Einführung von SCM-Maßnahmen, Werkzeugen, Prozessen,
Methoden für die Software-Entwicklung: Der Kunde hat die
Absicht, in einem bestehenden Software-Entwicklungs-Team
Agile Methoden einzuführen. Analyse von Legacy-Perl-Code mit dem Ziel, Wartbarkeit und Stabilit¨at zu verbessern.

Entwicklung in Perl

Fachlicher Hintergrund: Entwicklung, Software Configuration Management Linux, Perl, Jazz RTC, Software, Development Cycle, Software Development, Agile, Perl, Jazz RTC, Entwicklung, Perl, Software Configuration Management, Agile Software Development

Merkmale:

  • Entwicklung von einem Framework für Analyse und
    Refactoring von Perl-Code.
  • Erarbeiten von Vorschlägen mit dem Ziel eine hohe
    Code-Qualität und Wartbarkeit von Perl-Code zu erreichen,
    i. e., die Qualität von Legacy-Code zu verbessern.
  • Erarbeiten von Vorschl¨agen f¨ur einen Minimal-Standard für
    die Dokumentation innerhalb vom Quell-Code.
  • Einführung eines Workflows f¨ur die Dokumentation.
  • Einführung von Tools f¨ur die Dokumentation.
  • Analyse von existierendem Programm-Code, besonders im
    Hinblick auf die Dokumentation und das Entdecken von
    Verbesserungs-Potential.
  • Erarbeiten von Vorschlägen von Maßnahmen, die Qualit¨at
    von vorhandenem Code zu verbessern.
  • Erarbeiten eines Vorschlags für die Vorgehensweise zu der
    Verbesserung der Qualit¨at und der Wartbarkeit von
    vorhandenem Code, also eines Prozesses f¨ur die Analyse und Veränderung von Programm-Code.

Situation

Der Kunde unterhält eine Eigen-Entwicklung, die benutzt
wird um Konstrukteuren CAD-Daten zur Verf¨ugung zu stellen.
Das geschieht in einem Prozess, der dem Software-Build-Prozess ähnelt.

  • Bei der Entwicklung wurde nicht einheitlich einem Coding
    Standard gefolgt.
  • Die Entwicklung erfolgte verteilt auf mehrere Standorte,
    wobei unterschiedliche Standorte an jeweils unterschiedlichen Teilen der Software arbeiteten und
    unterschiedliche Programmier-Stile hatten.
  • Entwicklung folgte nicht einem definierten Prozess.
  • Wir sahen das Ziel darin, Prozesse so zu definieren und
    Code so zu verändern, dass ein gelegentlicher Entwickler in der Lage wäre, Veränderungen am Code durchzuführen, e. g. bei der Lösung eines Problems als auch, reguläre Entwickler bei ihrer Arbeit zu unterst¨utzen.

Benutzte Funktionalität

Perl-Scripts, die mit Job-Control in einer Cluster-Umgebung umgehen.

  • Perl-Scripts, die mit CAD-Daten umgehen.

Erfahrung

Analyse von Perl-Code mit bloßen Augen und mit Hilfe von Funktionalität, die für diesen Zweck entwickelt wurde.

  • Kontakt mit Team-Mitgliedern in einem interkontinental
    verteilten Team mit dem Ziel, ihre Arbeitsgewohnheiten
    kennenzulernen.
  • Entwicklung in Perl.

Wirkung

Der Kunde bekam von uns

  • Perl-Funktionalität, die bei Analyse und Refactoring von
    Perl-Code helfen kann.
  • Vorschläge, wie Misfeatures in existierendem Code entdeckt
    und ausgemerzt werden können, um so eine vernünftige
    Wartbarkeit zu erreichen.
  • Vorschläge, wie der Prozess, Perl-Code zu verändern um
    Misfeatures zu beseitigen teilweise automatisiert werden
    kann.

Veränderte Funktionalität

  • Wir haben existierenden Perl-Code mit den gewöhnlichen
    Mitteln der Text-Verarbeitung (also awk, sed, . . ., Perl)
    analysiert um Merkmale des Codes zu visualisieren
    (,,Software Visualization”).
  • Wir haben auf der Basis von PPI ein Framework entwickelt,
    das f¨ur die Analyse und die Veränderung von Perl Code
    verwendet werden kann, e. g., indem der Code auf mehrere
    Dateien aufgeteilt wird, w¨ahrend Symbole so verändert
    werden, daß Referenzen erhalten bleiben.
  • Wir haben Werkzeuge und Konventionen f¨ur die
    Dokumentation im Code eingef¨uhrt.
  • Wir haben Coding Conventions vorgeschlagen.
  • Wir haben bei der Einf¨uhrung von Jazz RTC assistiert.
  • Wir haben beim Aufsetzen von Cacti assistert.

Netto Effekt

Es war eine interessante Erfahrung mit der Grammatik von Perl und mit PPI bei der Analyse von Perl-Code.

Verwendete Produkte

  • Libraries: PPI.
  • SCM-Werkzeuge: Doxygen, Jazz RTC.
  • Werkzeuge zur Administration: Cacti.

Programmiersprache:

Perl.

Daimler
Esslingen
3 Monate
2012-10 - 2012-12

Perl Entwicklung, Administration

Perl

Beobachten, Verwalten, Visualisieren von Prozessen. Das Ziel war, bestehende Prozesse pflegeleichter zu machen.

Perl
Einzelhandel in Neckarsulm
4 Monate
2011-12 - 2012-03

Software-Entwicklung im Bereich Halbleiter

Linux Perl Clearcase ...
  • Software-Entwicklung, Support für eine Toolchain, die von 2000 Entwicklern weltweit verwendet wird
Linux Perl Clearcase Software Development Cycle Problem Management Continuous Integration Test
Halbleiter-Hersteller in München
3 Monate
2011-07 - 2011-09

Automatisierung von Test-Prozessen: Konzept, Analyse

Software-Test Perl
Software-Test

Fachlicher Hintergrund

Entwicklung

Perl
Telekommunikations-Unternehmen
Bonn
4 Jahre
2006-06 - 2010-05

Telekommunikation

Linux Perl Ruby ...

Umfeld

Software-Entwicklung bei einem
Telekommunikationsanbieter: Im Umfeld des Arbeitsplatzes
wurde in Teams von insgesamt etwa 12 Entwicklern für die
Abrechnung von Gesprächsdaten in den Sprachen C++ und Java entwickelt.

Aufgaben

Software Configuration Management, Build Management,
Test, Entwicklung, Weiterentwicklung von Script für SCM, Build
Management, Trouble Shooting

  • Compilieren der durch Entwicklung gelieferten Software und
    Lieferung der compilierten Artefakte an eine zentrale
    Integration, Troubleshooting und Support von Entwicklung,
    Kommunikation mit Release Management, Test.
  • Durchführung von System-Tests
  • Vorbereiten von Dokumentation für die Publikation: Der
    Kunde war im Begriff, Dita einzuführen. Dafür wurden
    Dokumente aus dem Word-Format konvertiert.

Technischer Hintergrund

Linux, Perl, Ruby, Python, Shells, ClearCase

Eingesetzte Tools

Perl, Ruby, Python, Shells, Cleartool,
Clearmake, QualityCenter, Oracle (toad), CVS, Apache, Tomcat

Fachlicher Hintergrund

Administration, Troubleshooting, Entwicklung

Eingesetzte Skills

Entwicklung, Perl, . . ., SCM, Linux-Kenntnisse, XML, XSLT, Dita

Linux Perl Ruby Python Shells Clearcase
Telekommunikations-Unternehmen
Bonn
6 Monate
2005-11 - 2006-04

Installation und Wartung einer großen Anzahl Server-Maschinen

Linux Shells Perl ...

Fachlicher Hintergrund

Entwicklung, Administration

Linux Shells Perl Shells Cfengine Entwicklung Administration Perl Linux-Kenntnisse Cfengine
nternet-Dienstleister
Karlsruhe
8 Monate
2005-02 - 2005-09

Automatische Installation von Linux-Servern und Windows-Clients in Filialen

Linux Shells Entwicklung ...

Installation, Support, Troubleshooting, Wartung und Entwicklung von Perl- und Shell-Scripts

Fachlicher Hintergrund

Entwicklung, Administration

Linux Shells Entwicklung Administration Perl Linux-Kenntnisse
Finanzdienstleistungs-Unternehmen
Münster
11 Monate
2003-06 - 2004-04

Entwicklung in Perl, Systemadministration

Unix Linux Shells ...

Installation, Applikationssupport, Troubleshooting. Wartung und Entwicklung von Perl- und Shell-Scripts. Analyse von ASCII-Log-Daten des Mail-Systems eines großen ISPs mit dem Ziel, Anhaltspunkte f¨ur Mißbrauch und Spam zu entdecken.

Unix Linux Shells Entwicklung Administration Perl XML unix MySQL PostgreSQL
Telekommunikations-Unternehmen
Ulm
3 Monate
2003-02 - 2003-04

erschiedene UNIX Derivate, darunter Linux

Perl Shell Script

Software Installation scripten, Testen

Perl Shell Script
Telekommunikations-Unternehmen
Eschborn
2 Monate
2002-07 - 2002-08

Systemadministraton, Applikationssupport, Troubleshooting

Systemadministrator unix Diagnose Tools Tivoli Solaris und Tru64 ...
Systemadministrator

Technischer Hintergrund

Sparc (E6500, E10K, E15K), Sun Cluster, Compaq TruCluster

Fachlicher Hintergrund

Systemadministration f¨ur insgesamt etwa 400 unix-Systeme (Solaris und Tru64); Process Quality (OS), Troubleshooting; 2nd Level Support und Koordination von Änderungsmaßnahmen zwischen Betrieb, Systemtechnik und Lieferanten (SUN, Compaq); Performance-Tuning; Applikation von Patches; Softwareinstallationen und -konfigurationen

unix Diagnose Tools Tivoli Solaris und Tru64 Script (Shell)
Telekommunikations-Unternehmen
Münster

Kompetenzen

Kompetenzen

Top-Skills

Software Configuration Management Perl SCM Legacy Perl Code

Schwerpunkte

Perl, Unix, Administration

Aufgabenbereiche

Administration, Support, Programmierung, Dokumentation

Produkte / Standards / Erfahrungen / Methoden

Administration
Agile
Atlassian Confluence
Atlassian JIRA
Cacti
Cfengine
Clearcase
Entwicklung
Jazz RTC
JetBrains IntelliJ IDEA
Omnimark
pdfbox
PPI
Script (Shell)
Shells
Shells Cfengine
Software Development
Software Development Cycle
Software Visualisation
Solaris und Tru64
Tivoli
unix Diagnose Tools
XML
XSL
YAML

Web Server Aufbau, Administration

  • Internet, HTML, HTTP, TCP/IP, SMTP, News,

Web Entwicklung

  • CGI, Perl (Entwicklung im eCommerce Umfeld), DBD/DBI, MySQL, XML, XSL, XSLT, Xalan, Samba, Sendmail, Apache

Software Configuration Management

  • ClearCase, subversion, CVS

Configuration Management

  • Cfengine, Cacti, SyslogNG

Arbeitsgebiete, Branchen

  • EDV-Dienstleistungen, Telekommunikation, Multimedia, Internet Hosting

Betriebssysteme

Linux
Linux-Kenntnisse
Unix
unix

Unix: Linux, Solaris (Sun Cluster), FreeBSD, NetBSD, OS/9, IRIX, AIX, Tru64 (Compaq TruCluster), Anwenderkenntnisse in Windows, Windows CE und MS-DOS

Programmiersprachen

Java
Perl
Python
Ruby
Shell Script

Perl, Shell (Bourne-, ...), TeX, LaTeX, VRML, XML, Working Knowledge in Java, JavaScript, C, C++

Datenbanken

MySQL
PostgreSQL

mSQL, mySQL: Perl DBD/DBI

Datenkommunikation

Ethernet, Fax, Internet, Intranet, ISDN, SMTP, NNTP, HTTP, TCP/IP, UUCP, Windows Netzwerk (Samba)

Hardware

PC, Sun Sparc, Silicon-Graphics

Branchen

Branchen

EDV-Dienstleistungen

Telekommunikation

Multimedia

Internet Hosting

Einsatzorte

Einsatzorte

Deutschland, Österreich, Schweiz
möglich

Projekte

Projekte

8 Monate
2022-10 - 2023-05

Eine Performance-Verbesserung wird durch den Einsatz einer Datenbank erreicht

Software-Entwickler Perl Git
Software-Entwickler
Gewachsener Perl-Code verarbeitet große Mengen an Daten. Die

Performance soll gesteigert werden.


Legacy Perl Code wird analysiert und optimiert.

Perl Git SPICE
Perl Git
Infineon
München
8 Monate
2021-10 - 2022-05

Bestehende Software wird auf eine neue Version des Betriebssystems umgezogen

Software-Entwickler Perl Analyse von Legacy Code
Software-Entwickler
Gewachsener, Perl-Code, der ?rmen-intern im Einsatz ist, soll
nach einem Upgrade des Betriebssystems weiter produktiv bleiben.
Funktionalität wird analysiert. Notwendige Änderungen werden ein-

gebracht und getestet.


Bei der Gelegenheit wird Podman eingeführt.
Perl Git Selenium Podman
Perl Analyse von Legacy Code
München
2 Jahre 2 Monate
2019-01 - 2021-02

Ein produktives Proof of Concept wird nachgebaut

Software-Entwickler Perl
Software-Entwickler

Situation: Gewachsener, produktiver Perl-Code wird im Rahmen einer Firmenübernahme mit übernommen. Die Funktionalität wird analysiert um dann mit eigenen Mitteln und eigenen Standards folgend nachgebaut zu werden.

Aufgaben: Analyse von Perl-Code. Beratung im Hinblick auf das Re-Implementieren der Funktionalität.

Perl
Perl
Köln
9 Monate
2017-10 - 2018-06

Ein Perl-Projekt wird durch eine Neu-Entwicklung abgelöst

Software-Entwickler Perl
Software-Entwickler

Situaion: Älterer historisch gewachsener Perl-Code befindet sich in einem Zustand in dem die Weiterentwicklung aufwendig ist. Der Kunde ist dabei, den Code durch eine Neu-Entwicklung in Java zu ersetzen. Dabei wird produktiver Perl-Code analysiert um Aussagen über dessen Verhalten zu gewinnen, die dann in die neue Entwicklung einfließen können. Daneben soll der produktive Code um Features ergänzt werden, die auch in der Neu-Entwicklung implementiert werden.

Der bestehende Perl-Code ist während der Maßnahme weiter im Einsatz und erfährt Veränderungen, indem neue Merkmale eingeführt werden.

Aufgaben: Analyse von bestehendem Perl-Code. Entwicklung an bestehendem Perl-Code. Unterstützung der Entwickler bei der Neu-Entwidklung in Java.

JetBrains IntelliJ IDEA Perl Atlassian JIRA Atlassian Confluence
Perl
Berlin
1 Monat
2017-01 - 2017-01

Entwicklung in Perl

Perl

Umfeld:

Betreiber von Shops im World-Wide Web

Perl
Online-Händler
Hannover
1 Jahr
2015-01 - 2015-12

Document Management, Archivierung, Umgang mit Multimedia-Inhalten, Indexing

Software-Entwickler Perl PostgreSQL
Software-Entwickler

Redundanzen oder Veränderungen in Datei-Systemen sollen erkannt werden. Abweichungen von Datei-System-Hierarchie-Konventionen sollen erkannt und korrigiert werden. Dateien werden indiziert.

Zusammenfassung

  • Wir beabsichtigen, Veränderungen an Dateisystemen zu entdecken um so Konfigurations-Daten eines Systems zu finden.
  • Wir beabsichtigen, redundante Dateien in einem Datei-System zu entdecken.
  • Wir beabsichtigen, Abweichungen von Konventionen der Datei-System-Hierarchie zu entdecken oder sicherzustellen, daß beim Vereinnahmen von neuen Dateien die Konventionen eingehalten werden.
  • Dateien sollen indiziert werden. Damit soll ein schnelles Auffinden ermöglicht werden.

Situation

Veränderungen an einem Dateisystem

Der Inhalt der Konfigurations-Dateien, die von einem Software-System, zum Beispiel einem Server, verwendet werden, weicht im Betrieb von dem Zustand nach der Installation ab. Das Entdecken von Veränderungen hilft, die Konfiguration des Systems zu verstehen, zum Beispiel um auf der Basis einer vorhandenen, im Gebrauch gewachsenen Konfiguration ein ähnliches System zu erstellen, das das erste ersetzen soll.

Redundanzen im Datei-System

Datei-Hierarchien, die zum Beispiel auf beweglichen Geräten, die während ihrem Einsatz keine Verbindung zu einem Server oder zu einander haben, können von einander abweichen. Abweichungen oder Redundanzen sollen erkannt werden.

Datei-System-Hierarchie-Konventionen

Abweichungen von einer Konvention sollen erkannt und bereinigt werden. Zum Beispiel bei der Vereinnahmung von Medien-Dateien aus einem Aufnahme-Gerät soll hier gegen die Konvention geprüft werden und gegebenenfalls Dateien verschoben werden, um der Konvention zu genügen.

Benutzte Funktionalität

Linux, NetBSD, ein wenig Windows

Veränderte Funktionalität

Perl-Scripts dokumentieren Tupel von Verzeichnissen, die wesentliche Redundanzen haben.

Netto Effekt

Techniken zur Versionierung, Archivierung, zum Document Management sind unverzichtbar. Entstehende Scripts können später zum Beispiel als Sicherheits-Netz genutzt werden.

Perl PostgreSQL
(Eigenbedarf)
Köln
5 Monate
2014-08 - 2014-12

Inhalt wird von PDF-Dateien extrahiert

Software-Entwicklung Java Perl YAML
Software-Entwicklung

Merkmale:

  • Textverarbeitung
  • Buchhaltung

Stichwörter:

  • Datei-Konversion
  • PDF
  • Buchhaltung

Situation:

Eine Quelle von Daten f¨ur die Buchhaltung ist die manuelle Eingabe von Daten aus Dokumenten. Einige der Dokumente liegen primär in Form von Dateien im PDF-Format vor. Die Maschine soll den Vorgang der Dateneingabe aus PDF-Dokumenten übernehmen. Zun¨achst sollen Daten aus einigen bestimmten Dokumenten, die im PDF-Format vorliegen, gewonnen werden. Die Motivation besteht hauptsächlich in konstruktiver Faulheit.


Wir hoffen auf diese Seiteneffekte:

  • Mehr Daten können in die Buchhaltung einfließen
  • Daten können zeitnäher verwendet werden, indem die
    manuelle Eingabe durch einen mehr oder weniger
    automatisierten Prozess ersetzt wird.
  • Die Extraktion von Daten aus Dokumenten ist weniger
    fehleranfällig als die manuelle Eingabe.

Es muss ein Weg gefunden werden, Daten aus PDF- Dokumenten zu übernehmen, die von Anderen zum alleinigen Zweck der Präsentation in zweidimensionalen Medien vorbereitet wurden. – Die Aktivität wird als Teil des Weges zu einem angenehm automatisierten Buchhaltungs-Prozess gesehen. Die generierte Funktionalit¨at soll konfigurierbar sein, so dass sie mit wenig Aufwand an sich ¨andernde Dokumenten-Formate oder andere Dokumente angepaßt werden kann.

Funktionalität

Die Buchhaltung wird mit Hilfe einer Menge von schnellgestrickten Scripts durchgef¨uhrt. Daten werden
ausschließlich manuell mit Hilfe von einem Bildschirm, einer
Tastatur und einem Bild des Quell-Dokumentes eingegeben.

Erfahrung

Es wurde gezeigt, daß eine Lösung gefunden werden
kann, die sicherstellt, dass keine relevanten Daten verloren
gehen. Der Inhalt des Quell-Dokumentes wird in einer Form
weitergereicht, wie er von folgenden Prozess-Schritten verarbeitet werden kann. Veränderte Funktionalität Wir verwenden verschiedene Merkmale von pdfbox um ein existierendes PDF-Dokument in Text zu wandeln. Ein Perl-Script extrahiert die relevanten Informationen von diesem Text. Die Extraktion wird durch eine Konfiguration gesteuert.

Ziele:

  • Die Verlustlose Extraktion vom Inhalt einer PDF-Quell-Datei ist sichergestellt.
  • Falls das Quell-Dokument unerwartet formatiert ist, werden
    entsprechende Warnungen ausgegeben. Es wird angemerkt, falls der Extraktions-Prozess in Bezug auf die Extraktion von relevanten Daten nicht komplett durchgef¨uhrt werden kann. Auf diese Weise wird vermieden, dass sich die unerwartete Formatierung des Quell-Dokuments oder auch Fehler in der Konfiguration unbemerkt auf die ausgegebenen Daten auswirken.
  • Daten werden in einem benutzbaren Format weitergereicht,
    zum Beispiel formatiert als YAML.
  • Die Anpassung der Konfiguration an eine ge¨anderte
    Formatierung des Quell-Dokuments oder das Erstellen einer
    Konfiguration f¨ur ein neues Quell-Dokument-Format ist
    einfach.

Verwendete Produkte

  • Perl
  • pdfbox

Zukunft

Die fast ausschließlich mit Mitteln von Perl generierte Funktionalität könnte in pdfbox integriert werden. Damit könnte
die Benutzbarkeit und die Erweiterbarkeit erhöht werden.
Effekt Erfahrungen sollen zeigen, ob die Funktionalit¨at zum Beispiel beim Lesen von Kontoauszügen oder Telefon-Rechnungen eingesetzt werden kann.

pdfbox Perl
Java Perl YAML
(Eigenbedarf)
Köln
2 Monate
2014-03 - 2014-04

Wartung von Legacy Perl Code

Software-Entwickler Perl Omnimark XML ...
Software-Entwickler
  • Der Kunde war dabei, eine bestehende Publishing-Prozesskette von Omnimark auf XML umzustellen.
  • Beratung, Wartung von Legacy Perl Code Zusammenfassung Hier ging es um den Umgang mit Legacy Perl Code. Der Kunde benutzte Omnimark. Die Einarbeitung in Omnimark war gefordert. Situation Omnimark in der publishing pipeline sollte abgelöst werden. Netto Effekt Es war eine Erfahrung mit Omnimark

Perl Omnimark XML XSL
Verlag
Düsseldorf
1 Jahr
2013-01 - 2013-12

Einführung von Software Configuration Management, Scrum

Software-Entwicklung, Software Configuration Management
Software-Entwicklung, Software Configuration Management

Einführung von SCM-Maßnahmen, Werkzeugen, Prozessen,
Methoden für die Software-Entwicklung: Der Kunde hat die
Absicht, in einem bestehenden Software-Entwicklungs-Team
Agile Methoden einzuführen. Analyse von Legacy-Perl-Code mit dem Ziel, Wartbarkeit und Stabilit¨at zu verbessern.

Entwicklung in Perl

Fachlicher Hintergrund: Entwicklung, Software Configuration Management Linux, Perl, Jazz RTC, Software, Development Cycle, Software Development, Agile, Perl, Jazz RTC, Entwicklung, Perl, Software Configuration Management, Agile Software Development

Merkmale:

  • Entwicklung von einem Framework für Analyse und
    Refactoring von Perl-Code.
  • Erarbeiten von Vorschlägen mit dem Ziel eine hohe
    Code-Qualität und Wartbarkeit von Perl-Code zu erreichen,
    i. e., die Qualität von Legacy-Code zu verbessern.
  • Erarbeiten von Vorschl¨agen f¨ur einen Minimal-Standard für
    die Dokumentation innerhalb vom Quell-Code.
  • Einführung eines Workflows f¨ur die Dokumentation.
  • Einführung von Tools f¨ur die Dokumentation.
  • Analyse von existierendem Programm-Code, besonders im
    Hinblick auf die Dokumentation und das Entdecken von
    Verbesserungs-Potential.
  • Erarbeiten von Vorschlägen von Maßnahmen, die Qualit¨at
    von vorhandenem Code zu verbessern.
  • Erarbeiten eines Vorschlags für die Vorgehensweise zu der
    Verbesserung der Qualit¨at und der Wartbarkeit von
    vorhandenem Code, also eines Prozesses f¨ur die Analyse und Veränderung von Programm-Code.

Situation

Der Kunde unterhält eine Eigen-Entwicklung, die benutzt
wird um Konstrukteuren CAD-Daten zur Verf¨ugung zu stellen.
Das geschieht in einem Prozess, der dem Software-Build-Prozess ähnelt.

  • Bei der Entwicklung wurde nicht einheitlich einem Coding
    Standard gefolgt.
  • Die Entwicklung erfolgte verteilt auf mehrere Standorte,
    wobei unterschiedliche Standorte an jeweils unterschiedlichen Teilen der Software arbeiteten und
    unterschiedliche Programmier-Stile hatten.
  • Entwicklung folgte nicht einem definierten Prozess.
  • Wir sahen das Ziel darin, Prozesse so zu definieren und
    Code so zu verändern, dass ein gelegentlicher Entwickler in der Lage wäre, Veränderungen am Code durchzuführen, e. g. bei der Lösung eines Problems als auch, reguläre Entwickler bei ihrer Arbeit zu unterst¨utzen.

Benutzte Funktionalität

Perl-Scripts, die mit Job-Control in einer Cluster-Umgebung umgehen.

  • Perl-Scripts, die mit CAD-Daten umgehen.

Erfahrung

Analyse von Perl-Code mit bloßen Augen und mit Hilfe von Funktionalität, die für diesen Zweck entwickelt wurde.

  • Kontakt mit Team-Mitgliedern in einem interkontinental
    verteilten Team mit dem Ziel, ihre Arbeitsgewohnheiten
    kennenzulernen.
  • Entwicklung in Perl.

Wirkung

Der Kunde bekam von uns

  • Perl-Funktionalität, die bei Analyse und Refactoring von
    Perl-Code helfen kann.
  • Vorschläge, wie Misfeatures in existierendem Code entdeckt
    und ausgemerzt werden können, um so eine vernünftige
    Wartbarkeit zu erreichen.
  • Vorschläge, wie der Prozess, Perl-Code zu verändern um
    Misfeatures zu beseitigen teilweise automatisiert werden
    kann.

Veränderte Funktionalität

  • Wir haben existierenden Perl-Code mit den gewöhnlichen
    Mitteln der Text-Verarbeitung (also awk, sed, . . ., Perl)
    analysiert um Merkmale des Codes zu visualisieren
    (,,Software Visualization”).
  • Wir haben auf der Basis von PPI ein Framework entwickelt,
    das f¨ur die Analyse und die Veränderung von Perl Code
    verwendet werden kann, e. g., indem der Code auf mehrere
    Dateien aufgeteilt wird, w¨ahrend Symbole so verändert
    werden, daß Referenzen erhalten bleiben.
  • Wir haben Werkzeuge und Konventionen f¨ur die
    Dokumentation im Code eingef¨uhrt.
  • Wir haben Coding Conventions vorgeschlagen.
  • Wir haben bei der Einf¨uhrung von Jazz RTC assistiert.
  • Wir haben beim Aufsetzen von Cacti assistert.

Netto Effekt

Es war eine interessante Erfahrung mit der Grammatik von Perl und mit PPI bei der Analyse von Perl-Code.

Verwendete Produkte

  • Libraries: PPI.
  • SCM-Werkzeuge: Doxygen, Jazz RTC.
  • Werkzeuge zur Administration: Cacti.

Programmiersprache:

Perl.

Daimler
Esslingen
3 Monate
2012-10 - 2012-12

Perl Entwicklung, Administration

Perl

Beobachten, Verwalten, Visualisieren von Prozessen. Das Ziel war, bestehende Prozesse pflegeleichter zu machen.

Perl
Einzelhandel in Neckarsulm
4 Monate
2011-12 - 2012-03

Software-Entwicklung im Bereich Halbleiter

Linux Perl Clearcase ...
  • Software-Entwicklung, Support für eine Toolchain, die von 2000 Entwicklern weltweit verwendet wird
Linux Perl Clearcase Software Development Cycle Problem Management Continuous Integration Test
Halbleiter-Hersteller in München
3 Monate
2011-07 - 2011-09

Automatisierung von Test-Prozessen: Konzept, Analyse

Software-Test Perl
Software-Test

Fachlicher Hintergrund

Entwicklung

Perl
Telekommunikations-Unternehmen
Bonn
4 Jahre
2006-06 - 2010-05

Telekommunikation

Linux Perl Ruby ...

Umfeld

Software-Entwicklung bei einem
Telekommunikationsanbieter: Im Umfeld des Arbeitsplatzes
wurde in Teams von insgesamt etwa 12 Entwicklern für die
Abrechnung von Gesprächsdaten in den Sprachen C++ und Java entwickelt.

Aufgaben

Software Configuration Management, Build Management,
Test, Entwicklung, Weiterentwicklung von Script für SCM, Build
Management, Trouble Shooting

  • Compilieren der durch Entwicklung gelieferten Software und
    Lieferung der compilierten Artefakte an eine zentrale
    Integration, Troubleshooting und Support von Entwicklung,
    Kommunikation mit Release Management, Test.
  • Durchführung von System-Tests
  • Vorbereiten von Dokumentation für die Publikation: Der
    Kunde war im Begriff, Dita einzuführen. Dafür wurden
    Dokumente aus dem Word-Format konvertiert.

Technischer Hintergrund

Linux, Perl, Ruby, Python, Shells, ClearCase

Eingesetzte Tools

Perl, Ruby, Python, Shells, Cleartool,
Clearmake, QualityCenter, Oracle (toad), CVS, Apache, Tomcat

Fachlicher Hintergrund

Administration, Troubleshooting, Entwicklung

Eingesetzte Skills

Entwicklung, Perl, . . ., SCM, Linux-Kenntnisse, XML, XSLT, Dita

Linux Perl Ruby Python Shells Clearcase
Telekommunikations-Unternehmen
Bonn
6 Monate
2005-11 - 2006-04

Installation und Wartung einer großen Anzahl Server-Maschinen

Linux Shells Perl ...

Fachlicher Hintergrund

Entwicklung, Administration

Linux Shells Perl Shells Cfengine Entwicklung Administration Perl Linux-Kenntnisse Cfengine
nternet-Dienstleister
Karlsruhe
8 Monate
2005-02 - 2005-09

Automatische Installation von Linux-Servern und Windows-Clients in Filialen

Linux Shells Entwicklung ...

Installation, Support, Troubleshooting, Wartung und Entwicklung von Perl- und Shell-Scripts

Fachlicher Hintergrund

Entwicklung, Administration

Linux Shells Entwicklung Administration Perl Linux-Kenntnisse
Finanzdienstleistungs-Unternehmen
Münster
11 Monate
2003-06 - 2004-04

Entwicklung in Perl, Systemadministration

Unix Linux Shells ...

Installation, Applikationssupport, Troubleshooting. Wartung und Entwicklung von Perl- und Shell-Scripts. Analyse von ASCII-Log-Daten des Mail-Systems eines großen ISPs mit dem Ziel, Anhaltspunkte f¨ur Mißbrauch und Spam zu entdecken.

Unix Linux Shells Entwicklung Administration Perl XML unix MySQL PostgreSQL
Telekommunikations-Unternehmen
Ulm
3 Monate
2003-02 - 2003-04

erschiedene UNIX Derivate, darunter Linux

Perl Shell Script

Software Installation scripten, Testen

Perl Shell Script
Telekommunikations-Unternehmen
Eschborn
2 Monate
2002-07 - 2002-08

Systemadministraton, Applikationssupport, Troubleshooting

Systemadministrator unix Diagnose Tools Tivoli Solaris und Tru64 ...
Systemadministrator

Technischer Hintergrund

Sparc (E6500, E10K, E15K), Sun Cluster, Compaq TruCluster

Fachlicher Hintergrund

Systemadministration f¨ur insgesamt etwa 400 unix-Systeme (Solaris und Tru64); Process Quality (OS), Troubleshooting; 2nd Level Support und Koordination von Änderungsmaßnahmen zwischen Betrieb, Systemtechnik und Lieferanten (SUN, Compaq); Performance-Tuning; Applikation von Patches; Softwareinstallationen und -konfigurationen

unix Diagnose Tools Tivoli Solaris und Tru64 Script (Shell)
Telekommunikations-Unternehmen
Münster

Kompetenzen

Kompetenzen

Top-Skills

Software Configuration Management Perl SCM Legacy Perl Code

Schwerpunkte

Perl, Unix, Administration

Aufgabenbereiche

Administration, Support, Programmierung, Dokumentation

Produkte / Standards / Erfahrungen / Methoden

Administration
Agile
Atlassian Confluence
Atlassian JIRA
Cacti
Cfengine
Clearcase
Entwicklung
Jazz RTC
JetBrains IntelliJ IDEA
Omnimark
pdfbox
PPI
Script (Shell)
Shells
Shells Cfengine
Software Development
Software Development Cycle
Software Visualisation
Solaris und Tru64
Tivoli
unix Diagnose Tools
XML
XSL
YAML

Web Server Aufbau, Administration

  • Internet, HTML, HTTP, TCP/IP, SMTP, News,

Web Entwicklung

  • CGI, Perl (Entwicklung im eCommerce Umfeld), DBD/DBI, MySQL, XML, XSL, XSLT, Xalan, Samba, Sendmail, Apache

Software Configuration Management

  • ClearCase, subversion, CVS

Configuration Management

  • Cfengine, Cacti, SyslogNG

Arbeitsgebiete, Branchen

  • EDV-Dienstleistungen, Telekommunikation, Multimedia, Internet Hosting

Betriebssysteme

Linux
Linux-Kenntnisse
Unix
unix

Unix: Linux, Solaris (Sun Cluster), FreeBSD, NetBSD, OS/9, IRIX, AIX, Tru64 (Compaq TruCluster), Anwenderkenntnisse in Windows, Windows CE und MS-DOS

Programmiersprachen

Java
Perl
Python
Ruby
Shell Script

Perl, Shell (Bourne-, ...), TeX, LaTeX, VRML, XML, Working Knowledge in Java, JavaScript, C, C++

Datenbanken

MySQL
PostgreSQL

mSQL, mySQL: Perl DBD/DBI

Datenkommunikation

Ethernet, Fax, Internet, Intranet, ISDN, SMTP, NNTP, HTTP, TCP/IP, UUCP, Windows Netzwerk (Samba)

Hardware

PC, Sun Sparc, Silicon-Graphics

Branchen

Branchen

EDV-Dienstleistungen

Telekommunikation

Multimedia

Internet Hosting

Vertrauen Sie auf Randstad

Im Bereich Freelancing
Im Bereich Arbeitnehmerüberlassung / Personalvermittlung

Fragen?

Rufen Sie uns an +49 89 500316-300 oder schreiben Sie uns:

Das Freelancer-Portal

Direktester geht's nicht! Ganz einfach Freelancer finden und direkt Kontakt aufnehmen.