Jörg (Ulrich) H.

IT Consultant - Big Data & Search, Apache NiFi

Friedrichsdorf, Germany

Experience

May 2024 - Present
1 year 5 months

Health Insurance Dataflows

Healthcare Sector - Health Insurance Companies

Further development and creation of dataflows for health insurance.

  • Further development and creation of health insurance dataflows
  • Data management across different storage systems (DB2, MSSQL, PostgreSQL, S3, custom APIs, …)
  • Documentation and training
  • Planning and rollout of NiFi 2.X (major upgrade)
  • Grafana integrations for visualization, monitoring, and alerting
  • Extensive use of the NiFi API to continuously monitor system status and its components
  • System environment: Apache NiFi (cluster), ETL, Redis Cluster/Sentinel, DB2, PostgreSQL, Apache Zookeeper; Security/PKI; JSON, XML, Parquet; MQ, JMS; Linux (RedHat), Unix scripting, Groovy, GitLab, Grafana, Kubernetes, Flyway; primarily using open source products
Jan 2024 - Apr 2024
4 months

Design and Development of a BI Solution / Data Platform in the Energy Sector

Energy Sector - Renewable Energy Producers (Wind, Solar)

Setup and development of a BI solution / data platform in the energy sector.

  • Foundational design and development of the entire system
  • Continuous integration of power generation data – creating ETL flows to connect load profile data from various wind and solar farms
  • Visualization of power production, prices, etc.
  • Monitoring, observability, and alerting
  • Automated analyses
  • Building a security infrastructure (server, agents) for intrusion detection and alerting (OSSEC)
  • Establishing a private VPN (OpenVPN server/clients)
  • Setting up an email relay service
  • System environment: Apache NiFi (cluster), ETL, PostgreSQL, Apache Superset, Apache Zookeeper; Security/PKI; JSON, XML, Excel; Apache Solr (cluster), SOAP-UI; Linux (Ubuntu), Unix scripting, user management; Groovy, Python, QGIS; OSSEC, OpenVPN, Postfix; primarily using open source products
Dec 2023 - Dec 2023
1 month

Enhancement of a Bank-wide Data Platform

Financial Services Provider

Enhancement of a data platform for a bank.

  • Updating data platform components with the hosting partner across all environments
  • Expanding extensive NiFi flows for various production applications
  • Training employees in the relevant technologies
  • Anonymizing customer and transaction data
  • System environment: Apache NiFi (cluster), ETL, NiFi Registry, Apache Solr (cluster), MariaDB; Apache Superset, Apache Zookeeper; Security/PKI, Monit, Banana, SOAP-UI; Linux (Ubuntu), Unix scripting, user management; Git; primarily using open source products
May 2023 - Nov 2023
7 months

Enhancement, Optimization, Documentation, and Knowledge Transfer of an ETL and Search Solution for Corporate Customer Master

Banks

Corporate customer master data is updated daily and then written into a distributed search index so it can be quickly retrieved by various authorized clients.

  • Expanding core business solutions (primarily using NiFi)
  • Updating development infrastructures (Apache NiFi, Apache Solr cluster, etc.)
  • Load and performance testing with overall system optimizations
  • Knowledge transfer
  • System documentation (e.g., tech specs)
  • Data anonymization for testing purposes
  • System environment: Apache NiFi, ETL, NiFi Registry; Apache Solr; Apache Zookeeper; JSON, XML; PKI/security
Nov 2021 - Apr 2023
1 year 6 months

Build and Development of a Bank-wide Data Platform

Financial Services Provider

For a mid-sized German bank, we built a new data platform for production applications, where data is intelligently and automatically combined, monitored, and prepared for different purposes.

  • Advising on tool selection
  • Installing and configuring data platform components with the hosting partner across all environments
  • Creating extensive NiFi flows for various production applications
  • Setting up a central log server to aggregate and make production logs searchable
  • Training employees in the relevant technologies
  • Anonymizing customer and transaction data
  • System environment: Apache NiFi (cluster), ETL, NiFi Registry, MiNiFi, Apache Solr (cluster), MariaDB; Apache Superset, Apache Zookeeper; Security/PKI, Monit, Banana, SOAP-UI; Linux (Ubuntu), Unix scripting, user management; Git; primarily using open source products
Jul 2019 - Sep 2021
2 years 3 months

Development of various IT solutions - especially in the open-source search area

IT service provider / Financial services provider

Consulting and development of various customer requests on search solutions. Examples:

  • Consulting and partial development of a central global search index of various corporate data sources for regulatory purposes (Global Index)

  • Design and development of a search solution for corporate customer master data

  • Conduct evaluations and proof-of-concepts

  • Build core business solutions (mainly in NiFi)

  • Set up, distribute and use development infrastructures (Apache NiFi, Apache SOLR cluster, ...)

  • Load and performance testing with overall system optimizations

  • Create the access service layer (RESTful)

  • Set up various security infrastructures

  • System environment: Java; Apache NiFi, ETL, NiFi Registry, MiNiFi, Apache SOLR; Apache ZooKeeper, Hadoop HDFS; Kafka; GIT; Eclipse; JMeter; web services (REST + JAX-WS); JSON, XML; JUnit; PKI/security; ServiceNow; Grafana, Prometheus, Banana

Jan 2018 - Jun 2019
1 year 6 months

Architecture, design and implementation of a solution for permanently centralizing and updating globally distributed

Deutsche Bank

The metadata constantly generated by more than 100 worldwide installations of a product are continuously collected into a central search engine cluster. Access to these sensitive data in the index is controlled by a custom-built component for data protection reasons. Primary challenges of this completely custom solution were the volume of data, its timely updating in the central index, scalability and fault tolerance, as well as the secure handling and delivery of these sensitive information.

  • Contributed to the core idea of the solution
  • Prototype implementation
  • Built the core business solution (mainly in NiFi)
  • Set up, distribute and use development infrastructures (Apache NiFi, Apache SOLR cluster, Spring application)
  • Load and performance testing with overall system optimizations
  • Created the access service layer (RESTful)
  • Ongoing development communication and coordination with client systems to improve the overall solution
  • Set up various security infrastructures
  • System environment: Java; Apache NiFi; Apache SOLR; GIT; Maven; AES; Spring (Boot, Framework, Security, ...); Eclipse; JMeter; web services (REST + JAX-WS); JSON, XML; JUnit; PKI; Hudson; MariaDB / MySQL; ORACLE
Mar 2011 - Dec 2017
6 years 10 months

Modernization of architecture and further development of the enterprise-wide search engines of a large German private bank

Deutsche Bank

For a large German private bank, the existing enterprise-wide search engines, especially their middleware and frontend, were refactored to create a flexible, extensible, and stable architectural foundation for current and future system requirements. Clear layer separation through well-defined interfaces, pooling and caching of existing search engine and database resources, enhanced monitoring solutions, and integration of single-sign-on for personalization and persistence of user preferences are the main features of the improved search solution. In addition to many internal project-specific search solutions and their integration into the enterprise search, a central connector framework for document indexing and personalized retrievals was created.

  • Architecture and design of the new system and setup of the platform / enterprise-wide secure, scalable search engine ecosystem
  • Load and performance testing with overall system optimizations
  • Set up, distribution, and use of development infrastructures (Maven, Hudson/Jenkins, Nexus, MySQL, Wiki, backlog, ...)
  • Database design with access layers
  • Development and implementation of project-specific monitoring solutions
  • Introduction of extensive unit and web frontend tests
  • System documentation (e.g. TechSpec)
  • Development and creation of SOAP web service and JSON interfaces for in-house client systems with consulting
  • Creation and integration of a security connector framework
  • Set up various security infrastructures
  • System environment: Java; Jenkins/Hudson; SVN; Maven; Spring; JPA Hibernate; Apache Tomcat; MariaDB / MySQL; ORACLE; Eclipse; JMeter; Wiki; Autonomy HP IDOL; SOLR; ManifoldCF; web services (JAX-WS + Axis2); JSON; Apache Commons; JUnit; Selenium; SonarQube; Enterprise Architect; JSF (PrimeFaces); Spring (Security); PKI; AES; Apache NiFi
Nov 2010 - Feb 2011
4 months

Development with load and performance optimizations for the budget-based entry of a major vehicle configurator

Ogilvy, etecture, BMW

For a large southern German carmaker, a new entry point for the online vehicle configurator was created. The end customer can enter personal financing values online to find possible desired vehicles and choose their preferred model. A small team of about 5 people worked in SCRUM to develop the middleware and backend logic. The frontend sends the user's currently selected financing data (mainly term in months, down payment, mileage, monthly rate) as a JSON request to the server cluster. The server determines matching vehicles and their financing options from pre-calculated cubes. For the middleware, JEE services with JTA and JPA using Hibernate (with EhCache for caching) were used, accessing an ORACLE database. In addition to porting the application server from WebLogic to GlassFish, the challenge was to perform load and performance tests and follow-up optimizations to ensure the required throughput and response times.

  • Built parts of the administration logic (frontend and business logic)
  • Load and performance testing and overall system optimizations
  • Migrated the application from a BEA cluster to a GlassFish cluster
  • Automated the entire application (e.g. cron jobs)
  • System environment: Hudson; SVN; Ant; BEA WebLogic; ORACLE GlassFish; Unix/Debian; JPA/Hibernate (Annotations); EhCache; JMS; Eclipse; ORACLE; JSON; JMeter; Confluence Wiki
Sep 2010 - Jan 2011
5 months

Development of an international web application for determining protective clothing

Ogilvy, etecture, DuPont

For an international client in the pharma and energy sector, a new web application was developed. This application allows technicians working in electrical environments to calculate their required protective clothing and then configure possible clothing combinations. In a small team (about 5 people) using SCRUM, interim results were regularly presented to the globally distributed business and IT departments. The web interface was built with HTML, JavaScript, and jQuery, communicating with backend services via JSON/AJAX calls. On the backend, an Apache/Tomcat cluster runs Java EE services to implement the business logic and uses Hibernate to access the underlying ORACLE database. Continuous integration was ensured from the start with Hudson, Maven2, and Sonar as the development infrastructure.

  • Initial setup of the complete development infrastructure
  • Architecture and design of all middleware services
  • Domain model and database design concept
  • Presentation of results
  • Support with front-end development
  • System environment: Hudson; SVN; Maven2; Tomcat; Unix/Debian; Hibernate 3.5.5 (Annotations); Eclipse; ORACLE; Apache Commons Configuration; JUnit 4; Mockito; VirtualBox (VM); HTML; JavaScript; JSON; jQuery; Interwoven Teamsite (CMS); Confluence Wiki
May 2010 - Aug 2010
4 months

New development of the reservation system for a major German tour operator

German Travel Agency

A large German tour operator is developing the successor to its reservation system using modern technologies. In addition to using pioneering architectures such as SOA and RCP, the focus is on flexible business processes and keeping the system documentation up to date at all times. One of the subprojects is "Travel Document Productions" in the fulfillment area. The responsibilities include business analysis and design for issuing, printing, sending, and returning travel documents.

  • Analysis of the existing Travel Document Production process
  • Designing the module for the new system in UML
  • Presenting results
  • Organizing and conducting ongoing coordination with the Architecture Board
  • Clarifying, evaluating, and incorporating a variety of new requirements (features)
  • System environment: Magic Draw (UML); Jira (requirements analysis); RCP (target platform)
Jul 2009 - Apr 2010
10 months

New development of a group-wide central CRM system for a major German private bank

Commerzbank

As part of the integration of a major German private bank, a unified, central, primary system for customer data within the group was created. Accesses from client systems to the core and to reference systems are handled by the Service Layer (ESB). Creating this Service Layer is the task of the subproject. It implements services for accessing and maintaining customer data and provides them through a public interface. The Service Layer relies on a process integration layer of the core system and the bank's reference systems (mainly HOST systems). The main task is therefore the integration function of this system landscape. An agile approach based on SCRUM was chosen and successfully applied for the Service Layer subproject.

  • Technical Lead for the Service Layer team
  • Planning and tracking Scrum stories
  • Coordinating and aligning a variety of reference and client systems
  • Developing, agreeing on, and implementing architecture topics
  • Technical integration of reference systems
  • Detailed design and implementation of service operations
  • System environment: IBM Rational Application Developer 7.5.2; WebSphere Application Server; Mingle (Scrum planning tool); ClearCase; soapUI; Spring; JAXB; JAX-WS; Mercury Quality Center; Maven 2; EasyMock
Aug 2008 - May 2009
10 months

New development of a platform for telecommunications monitoring

ATIS Systems

The existing product suite of a client for telecommunications monitoring required modernization. The resulting new development is shaped significantly by using the Eclipse RCP (Rich Client Platform). A key feature of the new development is the many different user roles with various views and process permissions on the same data. Using the RCP allows professional workstations to quickly and precisely identify, evaluate, and further consolidate relevant information from large volumes of data. Access to the persistence layer is mapped via a specific object-relational mapper and optimized using a search engine.

  • Reviewing and expanding business concepts
  • Creating complete IT concepts and architecture aspects
  • Implementing full GUI perspectives (complete UI development, database connections and optimizations; print functionality; ...)
  • Integrating and connecting a search engine
  • Introducing unit tests
  • Coordinating with quality assurance
  • System environment: Eclipse RCP 3.4; Oracle 11g; Subversion; Bugzilla; CruiseControl; Windows Vista/Linux (SUSE Linux 10.2); UML; VMware; FAST search engine; PL/SQL; JUnit 4; SQL Developer
May 2008 - Jun 2008
2 months

Elaboration of architecture modernization

DZ Bank

The architecture of the portal landscape (Internet, Extranet, Intranet) of a major German central bank needed modernization. Various architectural alternatives were evaluated, developed, and presented to the client.

  • Detailed documentation of a future alternative architecture with pros and cons of all involved system components.
  • Supporting the preparation and presentation of findings.
  • System environment: Word, PowerPoint
Jan 2008 - Apr 2008
4 months

Relaunch of the banking portal (Extranet)

DZ Bank

The Extranet and its applications were modernized for a major German central bank. As part of this modernization, functionality and layout were developed in alignment with the IT and business departments and rolled out. The project goal was to transform the banking portal from an information portal to an active sales portal. The measures taken included optimal navigation, fast search, proactive engagement, and the introduction of interactive components.

  • Further development and redesign of various portal functions: TableOfContent lists; login/my profile processes and dialogs; voting; online survey; newsletter distribution; content functions: automated order requests, contact forms, and forwarding functions.
  • Current market and stock data from a supplier were also integrated into the portal.
  • System environment: JSP/HTML; AJAX DWR; ATG Dynamo; IBM WebSphere Application Server; CMS NPS; Windows XP; Sun Solaris
Mar 2007 - Dec 2007
10 months

Design and implementation of new independent application components within an intranet eCRM system

Dresdner Kleinwort

In the context of corporate banking integration into the investment banking area, an independent application component was needed for maintaining client teams. Additionally, existing application modules of the central eCRM system were quickly further developed or rebuilt according to business requirements and their rollout was continuously supported by new product versions (example modules: Budget, Docs&Notes, LegalInfos, …). Most developments covered the web front-end and server parts as well as parts of the database layer. Robust open source products such as JBoss AppServer, JSF MyFaces, and CruiseControl were put into production. Another task was load and performance testing of the overall application (global deployment) and analyzing the results. The resulting recommended optimizations to eliminate various performance bottlenecks were successfully implemented.

  • Planning, design and implementation of the new standalone application component using JavaServer Faces (first use at the client) and iBATIS
  • Ongoing adjustments and improvements of this application component on request of various business units
  • Further development of existing eCRM application modules
  • Introduction of new technologies (JSF, iBATIS) and coaching of team members
  • Execution and analysis of load and performance tests
  • Presentation of analysis results with recommendations for action
  • Implementation of system-wide performance optimizations
  • System environment: JSF (MyFaces Tomahawk + Trinidad), JSP + Struts; JBoss, Subversion, CruiseControl, Windows XP / Linux, iBATIS, Eclipse, Sybase
Jan 2007 - Feb 2007
2 months

Enhancements to the corporate intranet and public website

DZ Bank

Analysis and implementation of various 'small assignments'. For the corporate intranet and public website of a large banking group, adjustments and improvements were required. For the requested changes, IT concepts were created in coordination with the business and IT departments, and feasibility analyses and their implementations were carried out. Essentially, new features and improvements were added to JSP files, the NPS document management system, and TCL scripts, and their integration and production rollout were supported.

  • Creation of IT concepts
  • Goal-oriented coordination with the business unit
  • Implementation of various 'small assignments'
  • System environment: JSP/HTML, ATG Dynamo, IBM WebSphere, NPS, TCL, Windows XP, Solaris
Nov 2005 - Dec 2006
1 year 2 months

Group-wide unique customer identification according to Basel II / US-GAAP

Dresdner Bank

To meet the bank's regulatory requirements, two main business goals were addressed: a) consolidating and managing customer master data from different partner systems into a standalone tool, and b) creating a unified group formation function for Basel II / US GAAP. The tool was developed client-side using the Eclipse Rich Client Platform. Web service access enabled client/server communication based mainly on stateless business components. These J2EE components on the IBM WebSphere AppServer use an Oracle database as the persistence layer via the Hibernate ORM mapper.

  • Architecture, design and implementation
  • Implementation of the Eclipse RCP client (first use at the client)
  • Build process management
  • Setup and management of the project wiki
  • Team member coaching
  • System environment: Eclipse Platform (RCP), J2EE, IBM WebSphere AppServer, RDBMS (Oracle 9i), Hibernate, Together, Windows XP, ANT, JavaWebStart
Jan 2005 - Sep 2005
9 months

Evaluation of an existing software solution to implement a tour operator as well as setup and

AMADEUS

Evaluation of an existing solution, among others for travel agencies, to be able to offer services as a tour operator. The existing solution allows external connectivity to various service providers (hotel, flight, …) to dynamically query prices and availability, as well as an inventory management system to manage own allocations. Furthermore, the solution supports selling the bundled services through different channels (multi channel - web user, travel agency, call center). It is also possible to add other services to the package (dynamic packaging). Based on this existing solution, a prototype was created and integrated into the existing booking system. Data components of the prototype were partly processed using XML. This data was read, manipulated, and written back to the database using XML parsers and transformers. The basic administration of the services was extended or replaced by a standalone solution based on JavaServer Faces (JSF). In the first phase, the SUN reference implementation was used and later ported to the open source JSF framework MyFaces.

  • Evaluation and recommendation of an existing partial solution
  • Concept, design and implementation of the new JSF prototype
  • Participation in strategic corporate planning and documentation for the "Future Leisure Platform"
  • Ongoing support for the product rollout from the previous project in a clustered environment
  • System environment: J2EE (JSF, JSP, …), XML management (Xalan, Xerces), Jakarta Tomcat 5.x, RDBMS (Oracle 9i), Eclipse (with various plugins), Apache MyFaces; various Eclipse plugins for JSF development
Jan 2002 - Dec 2004
3 years

Concept and development of a complete leisure travel system integrated into a travel reservation system

AMADEUS

Development of a system to support the travel agency process with focus on centralized, customer-oriented sales control. The system covers the phases of requirement analysis, consultation, availability checking, offer creation, and booking. A modular and flexible product structure was used for this. The clients of the system are launched within an existing portal and use the existing portal services (e.g. user management). For customizing and sales control of the products, a web-based administration tool was created - Client LTC (controlling). For the travel agent, a vendor-independent, full graphical, IP-based front-end (Swing applet) client was created - Client LTW (workflow). The core of the server-side development are the services that implement the business logic in the form of J2EE beans. These beans access, among others, replicated operator information from an Oracle database and use the connection to a legacy system (BS2000) through provided interfaces for vacancy checking. JavaWebStart and Java Plug-in were used to start and automatically update the local client software. This also automates the client-specific databases, which were implemented using the open source HypersonicSQL database.

  • Co-responsibility for building the software architecture
  • Design and development of services
  • Evaluation and development of web services that implement the communication architecture from the Swing client to the server
  • Development and setup of the product structure plan and the complete build process of the overall project using ANT, under which all project components are continuously compiled (Continuus build) and deployed to the application server
  • Building the client-service layer to encapsulate all client database access
  • Development and deployment of the application in a clustered environment
  • System environment: J2EE (EJB, JSP, JMS, …), BEA WebLogic Server, Windows 2000, Sun Solaris, Oracle 9i, CVS, MKS Source Integrity, Poseidon/ArgoUML, ANT, HypersonicSQL, AXIS
Mar 2001 - Dec 2001
10 months

Design and implementation of an intranet eCRM system

Dresdner Kleinwort

Creation and ongoing optimization and extension of a CRM system for the investment banking division, under dynamic customer requirements. Programming standalone and reusable components for the web front end and server side, using open source software and the MVC pattern. The HTML front end is generated with JSP files. The workflow and MVC separation were implemented with Struts (Apache Jakarta).

  • Designed and built an admin front end and its database design to modify system users
  • Fully implemented the independent "Client Profile" subcomponent to manage customer data (create, delete, etc.)
  • Upgraded the entire application from Struts 0.5 to Struts 1.0
  • Implemented a JavaMail solution for automated emailing of new application accounts
  • Implemented and enhanced the "TradeList" and "CoreInformation" components on the client/contact and team/member sides
  • Developed a cross-component generic filter (XP-Filter) to generate dynamic SQL database queries. Used JDOM to implement and handle XML filters.
  • System environment: Allaire JRun, JRun Studio, J2EE (Java, JSP, Servlets, JavaMail), HTML, JBuilder, Sybase, Struts, JDOM, XSLT, Windows 2000, Sun Solaris
Feb 2001 - Mar 2001
2 months

ATG Dynamo eBusiness Platform

Interne und externe Workshops

Participated in training courses.

  • Designed and implemented transactional enterprise portals with ATG's Dynamo portal software
  • Developed dynamic web components
  • Administered and configured the Dynamo server platform
  • System environment: ATG Dynamo, Java, JavaBeans (EJB), JHTML/JSP, Java Servlets
Oct 2000 - Feb 2001
5 months

Functional concept, design and implementation of a printing system

TLC, now DB Systel

Server-side development of a printing system for a large carrier to process print jobs of value documents, database design for document, printer and print job management.

  • Server-side development
  • Database design
  • System environment: Sun Solaris, Windows NT, Oracle 8i, C++, BEA Tuxedo transaction monitor, TogetherJ, ERWin
Sep 1998 - Sep 2000
2 years 1 month

Analysis, design and development of a web client

Start Informatik – now AMADEUS

Enhanced the client of a travel reservation system at a travel company, then analyzed, designed and developed a web client for a travel reservation system.

  • Rich client enhancement
  • New web client development
  • System environment: Sun Solaris, Oracle relational DB, Java, JDeveloper, XML, XSLT, HTML, Oracle Application Server
Oct 1996 - Aug 1998
1 year 11 months

Concept, analysis, design, implementation and introduction of the client software

Start Informatik – now AMADEUS

The client runs a primarily host-based travel reservation system and needed a new software client, which was rolled out in about 10,000 travel agencies via existing distribution mechanisms.

  • Concept, analysis, design, implementation and rollout of the client software for a travel reservation system
  • Core development and creation of a framework
  • Technical coordination of subsequent application projects
  • System environment: Windows NT, C++, MFC, COM
Apr 1995 - Sep 1996
1 year 6 months

New development, object-oriented analysis and design

Würth

The outbound logistics of a large trading company is being redeveloped using object-oriented methods.

  • Contributed to the redevelopment of outbound logistics
  • Performed object-oriented analysis and design using OMT
  • Client and server implementations
  • Environment: OOA, OOD, OMT, HP-UX, Windows NT, C++, SQL, Informix, ISA Dialog Manager
Oct 1994 - Mar 1995
6 months
Böblingen, Germany

Diploma thesis

IBM Research and Development Lab Böblingen

Topic: Design and prototype implementation of distribution strategies for data entities and attributes in distributed database systems.

  • Environment: OS/2, MS-Windows, C

Summary

I have built and optimized data platforms and search solutions across various industries such as finance, energy, and healthcare. I specialize in creating robust, efficient workflows using open source technologies like Apache NiFi, Solr, and ETL tools, ensuring that systems remain scalable and secure. My experience spans designing dataflows, automating processes, and integrating advanced monitoring to guarantee system performance and accuracy.

I consistently deliver measurable business value by transforming large, complex data environments into streamlined, user-friendly solutions. My hands-on expertise in data management and system architecture allows me to effectively tackle diverse technological challenges.

Languages

German
Native
English
Advanced

Education

Oct 1990 - Mar 1995
Lorem ipsum dolor sit amet

Computer Science Diploma (University of Applied Sciences) · Computer Science · Germany

Need a freelancer? Find your match in seconds.
Try FRATCH GPT
More actions