Curriculum vitae


Dr. rer. nat. Johannes Neubauer

Director Development

adesso SE
http://www.adesso.de

Germany

Education

Work Experience

  • Director (Business Unit Lead), Aug 2023 — now, adesso SE, Line of Business Cross Industries, Business Unit West Germany
  • Vice President, Jan 2023 — Jul 2023, Materna Information & Communications SE, Ressort Industries, Software Factory Cloud
  • Head of Cloud Software Development, Jul 2021 — Jul 2023, Materna Information & Communications SE, Digital Transformation, Software Factory
  • Manager (team leader), Feb 2019 — Dec 2022, Materna Information & Communications SE, Digital Transformation, Software Factory, Cloud & Mobile & Innovation
  • Master project manager, Nov 2018 — Jan 2019, Materna Information & Communications SE, Digital Enterprise, Applications and Portals
  • Senior project manager, Oct 2017 — Oct 2018, Materna Information & Communications SE, Digital Enterprise, Applications and Portals
  • Postdoctoral researcher, Oct 2014 — Sept 2017, TU Dortmund, Chair of Programming Systems
  • Research assistant, Oct 2008 — Sep 2014, TU Dortmund, Chair of Programming Systems
  • Research stay, Oct 2013, At the Institute of Biomedical Sciences of the University of São Paulo (Brazil): flexible data-modeling for cancer research.
  • Student assistant: Oct 2005 — Sep 2008, TU Dortmund, Chair for Programming Systems
  • Entrepreneur: 2001 — 2021, Johannes Neubauer GbR
    Software development in the context of web applications (e.g. with Beepworld GmbH)
  • Entrepreneur: 2015 — 1019, Infenius UG (haftungsbeschränkt)
    Development of mobile games and apps for the iOS (Swift and Objective-C) and Android (Java and Kotlin) platform

Professional Expertise

Projects (excerpt):

Customer Leading construction and real estate enterprise
Project Smart Building Application
Industry Construction & Real Estate
Period 08/2021 – 04/2023
Description Development of a large-scale home automation solution for newly constructed commercial and residential buildings. The system integrates seamlessly with a Building Information Modeling (BIM) platform, enabling detailed tracking of assets, monitoring of energy consumption, and maintenance planning. Public cloud infrastructure is leveraged for data processing, analytics, and secure data storage. The application also includes comprehensive ESG reporting features, allowing stakeholders to measure and optimize sustainability performance, resource usage, and overall building efficiency.
Technical Environment Public Cloud (IaaS/PaaS), BIM Integration (e.g., IFC data processing), Microservices Architecture, IoT Sensor Integration, Data Analytics, CI/CD, DevOps, Container Orchestration, React, TypeScript, Node.js, Spring Boot, PostgreSQL, MQTT, OAuth2, Automated Testing
Role Architecture, Project Management, BIM Integration, ESG Reporting Design, Technical Consulting

 

Customer International chemical corporation
Project Cloud-Native Modernization Execution
Industry Chemical Industry
Period 04/2021 – 04/2023
Description The corporation has developed a cloud-native strategy for its application landscape, to be completed by 2030. A bottom-up approach is used: each application is assessed (e.g., business value, criticality, cloud readiness), a migration proposal is created, then executed, and finally deployed and operated in the cloud.

For the modernization of PRODUCTNAME, a check assessment was carried out and a modernization proposal was developed together. The modernization execution has been done in advance.
Technical Environment Microsoft Azure, Serverless, Infrastructure as Code, Fortran
Role Face to the customer, Lead architect

 

Customer Transmission system operator
Project Asset Management System Development, Maintenance, Modernization, and Migration
Industry Utilities
Period 03/2021 – 04/2023
Description Maintenance and further development of custom applications. Migration of a legacy WPF application to a Single-Page Application (SPA).

A desktop application that manages information about technical sites (e.g., substation facilities, fields, busbars), the primary (e.g., transformers, circuit breakers), secondary technology (e.g., cabinets, panels, UPS devices), and infrastructure (e.g., buildings and air-conditioning systems) of substations in voltage levels from 110 to 380 kV. Upcoming maintenance tasks are planned; equipment movements and changes are recorded and managed.
Technical Environment MS Visual Studio 2017/2019, C#, WPF, .NET Framework 4.6, Oracle DB 12c, TFS-VC, TFS-Git, AzureDevOps, VUE.js, MS EntityFramework
Methodical Environment OOP, MVVM, Agile development
Role Face to the customer, Lead Architect

 

Customer International corporation, manufacturer of large kitchen appliances
Project IoT Connectivity Cloud
Industry Mechanical and plant engineering
Period 01/2019 – 04/2023
Description Building an international IoT solution for initially four companies in a group of large kitchen appliance manufacturers. The system is based on MS Azure and processes data from various devices in professional kitchens (dishwashers, ovens, refrigerators). The data generated by the devices is stored in a cloud database and is accessible via single-page applications and mobile apps.
Technical Environment MS Azure, Azure Cosmos DB, MongoDB, Azure Functions, Azure FrontDoor, Azure KeyVault, GraphQL, DataLoader, Apollo, Python, Azure Monitor, Azure B2C, Azure AAD, SendGrid, TypeScript, React, React Native, Jest, JUnit, Fastlane, Azure DevOps, CI/CD, GitOps, WAF
Role Architect, Development, Consulting, Facilitation of agile workshops

 

Customer International corporation, manufacturer of large kitchen appliances
Project Workshop IoT Connectivity Solution
Industry Mechanical and plant engineering
Period 09/2019 – 09/2019
Description Preparation, execution, and follow-up of a specification workshop with the customer. Key aspects include:
  • Broad knowledge of potential technologies and methods
  • Experience with cloud-native applications
  • Experience in secure-by-design
Role Development of a software structure and selection of suitable front-end technologies

 

Customer International automotive manufacturer
Project Custom Application Procurement Processes
Industry Automotive
Period 08/2019 – 12/2019
Description Creation of a fully functional prototype of a web application for visualizing and calculating optimal end-to-end logistics processes in the automotive industry. Unlike prior approaches, the entire supply chain from the supplier to the production line is considered. A multi-stage optimization process is implemented, accounting for the interaction of different part families and the option to revise decisions later (change management). Several follow-up projects resulted from this.
Technical Environment MS Azure, Spring Boot 2, Hibernate, PostgreSQL, Java, JUnit
Role Project management, Consulting

 

Customer E-ticketing provider for transport companies
Project Mobile Ticketing App and WebShop
Industry Mechanical and plant engineering
Period 01/2019 – 06/2020
Description Development of a multi-tenant eTicketing platform in the AWS Cloud that allows cashless ticket purchases for bus and train via smartphone. The solution includes:
  • A cloud-native microservice backend based on Spring Boot and Spring Data REST
  • A Spring Boot Backend-For-Frontend (BFF) providing GraphQL interfaces
  • An administration UI for tenant management (React)
  • iOS and Android end-customer apps (React Native)
  • A checker app for ticket inspectors (React Native)
All native apps and cloud components are fully automated, tested, and deployed; the infrastructure is also automated via Infrastructure as Code (IaC). The solution was developed with rigorous agile methods (DevOps, Scrum, Agile-GitOps). It meets the highest security standards regarding data protection and protection against attacks (e.g., DDoS), confirmed by an external penetration test. In addition to unit, component, integration, and end-to-end tests by developers, a separate QA department performed end-to-end testing with Ranorex across automatically created cloud stages.
Technical Environment Java 8–13, Lombok, Spring Boot 2, Spring Security, Spring Data REST, HATEOAS, Swagger, Wiremock, Jacoco, GraphQL, React, Bootstrap, React Native, Apollo-Boost, TypeScript, Selenium, Appium, Ranorex, Moquito JUnit, Jest, IntelliJ, JWT, JSON, XML, SonarQube, RX-Java, Jackson, FeGen, PDFBox, JPA, Eclipse Link, PostgreSQL, Tomcat, Git, Maven, NPM, GitLab, Docker, Terraform, AWS Fargate, AWS Route 53, AWS RDS, AWS SES, AWS SNS, AWS CloudWatch, Braintree, Flyway, OAuth 2, Keycloak, Fastlane, JIRA, Scrum, KeyCloak, Microservices, CI/CD, DevOps
Role Architecture, Agile consulting, Conception, Architecture reviews, Development

 

Customer Internet Service Provider
Project Development of a Native App for the ISP’s End Customers
Industry Telecommunications
Period 09/2018 – 12/2020
Description Development of the new app PRODUCTNAME (native iOS and Android) plus a React web app, enabling customers to book a new ISP product portfolio. The ISP offers a basic “Telephony and Internet” product that can be enhanced on demand. An end customer can spontaneously adjust their internet bandwidth and receives push notifications about the success of that change. In addition to the app and web app, Materna developed the backend-for-frontend. The backend runs hybrid on-premise and in the AWS Cloud.
Technical Environment Spring Boot 2, Spring Data REST, Spring Cloud Services, AWS SQS, AWS SNS, AWS SES, React, iOS, Swift, Android, Kotlin, OAuth2, REST, HATEOAS, H2-DB
Role Customer consulting, Project management, Development, Quality control

 

Customer Supplier in the automotive industry
Project PoC Testcenter
Industry Automotive
Period 04/2018 – 04/2018
Description Implementation of a PoC for using test automation on the customer’s websites, including an on-site demo.
Technical Environment Cucumber, Gherkin, Selenium, Kotlin
Role Project management, Implementation support, Face to the customer

 

Customer International parcel and mail express service
Project Private customers
Industry Transport & Logistics
Period 03/2018 – 05/2018
Description Preparation and delivery of a workshop on test automation
Role Preparation and delivery of a workshop on test automation

 

Customer Automotive manufacturer
Project Test-Tool Evaluation
Industry Automotive
Period 11/2017 – 01/2018
Description Evaluation of a test tool for the automation of customizing a Microfocus Service Manager, plus presentation of the results
Role Test tool evaluation for the test automation of Microfocus Service Manager customization and presentation of findings

 

Customer Product
Project DyWA Integrated Modeling Environment (DIME)
Industry Technology
Period 01/2015 – 09/2017
Description Development of an integrated modeling environment with Cinco for creating web applications (incl. for Springer Nature projects), featuring full code generators for various model types (e.g., data model, process model, user interface, access control).
Technical Environment Java EE, Angular, Dart, Xtend, Eclipse, Xtext, Graphiti, EMF
Role Conception, Planning, Design, Project management, Implementation, Architecture

 

Customer Product
Project Cinco
Industry Technology
Period 01/2015 – 09/2017
Description Open-source meta-modeling environment in Eclipse
Technical Environment Eclipse, Xtext, Xtend, Graphiti, EMF
Role Architecture, Conception, Design

 

Customer Product
Project Java Application Building Center 4 (jABC4)
Industry Technology
Period 01/2013 – 12/2015
Description Implementation of an Integrated Modeling Environment (IME) based on jABC3 as an incarnation of the Higher-Order-Process Engineering principle, transferring various classic programming concepts (variability, type safety, service orientation, dependency injection, dependency management, …) in a simplified way to the modeling level.
Technical Environment Project management, Conception, Design, Planning, Development
Role Project management, Conception, Design, Planning, Development (Public sector: Research and teaching)

 

Customer App Store / Play Store
Project Fusionate
Industry Software
Period 07/2014 – present
Description An abstract retro board game with modern elements and integration of various frameworks (GameCenter, ReplayKit, StoreKit, GameKit, AdMob).
Technical Environment Swift, Kotlin, iOS, Android, internal DSL, differential testing
Role Project management, Planning, Conception, Design, Implementation, Testing, Test automation

 

Customer Springer Nature
Project Bulk-Order Calculator
Industry Publishing
Period 01/2014 – 12/2015
Description Web application for calculating prices in various Springer series.
Technical Environment Java EE, Tapestry 5
Role Project management, Conception

 

Customer Product
Project Dynamic Web Application (DyWA)
Industry Technology
Period 01/2013 – 09/2017
Description Framework/application for prototype-driven web development, enabling dynamic and process-driven data migration at runtime.
Technical Environment Java EE, Tapestry 5, PostgreSQL
Role Conception, Planning, Design, Project management

 

Customer Product
Project Java & Scala Code Generators for jABC4
Industry Technology
Period 01/2013 – 12/2015
Description jABC4 full-code generators that translate process models into executable Java or Scala code. Implementation was done via a bootstrapping process.
Technical Environment Java, Scala, MDSD
Role Conception, Planning, Design, Partial implementation, Project management, Partial testing

 

Customer Large mechanical engineering company
Project Machine Monitor
Industry Manufacturing Industries
Period 01/2012 – 12/2013
Description Creation of a portal for managing product data. A key challenge was implementing a dynamic persistence layer that could be created and adapted by the customer without technical knowledge.
Technical Environment Java EE, Oracle
Role Architecture, Conception, Planning, Project management, Customer contact

 

Customer Springer Nature
Project Proceedings Production Service (PPS)
Industry Publishing
Period 01/2010 – 09/2017
Description A web application tightly integrated with OCS for creating, managing, and transferring conference proceedings.
Technical Environment Java EE 7, EJB 3.1, Tapestry 5, JPA, Hibernate, PostgreSQL, automated tests (Selenium), migration, JBoss, JMS
Role Architecture, Conception, Planning, Project management, Testing, Test automation, Quality management, Customer contact

 

Customer Springer Nature
Project Online Conference System
Industry Publishing
Period 10/2008 – 09/2017
Description New development of an online manuscript submission and review system (web application) offered by Springer Nature to its customers.
Technical Environment Java EE 7, EJB 3.1, Tapestry 5, JPA, Hibernate, PostgreSQL, automated tests (Selenium), test-based modeling with active automaton learning, migration, JBoss, JMS
Role Project management, Architecture, Conception, Requirements management, Consulting, Development, Testing, Test automation, Quality management

Entrepreneur: (esp. 2001-2004 and 2015-2021)

  • Mobile game: Fusionate
  • XML-Processing project for the Aziza GmbH
  • Java Applet/WebStart Client for Beepworld Chat Application
  • Forum application for Beepworld GmbH
  • Advertising flash-game BeepFighter for Beepworld GmbH
  • Flash guestbooks, and buttons for the web page builder tool of Beepworld GmbH

Professional Skills

  • Languages: German (native), English (fluent), French (basic)
  • Programming experience: Java, Swift, Xtend (expert); Scala, Kotlin, JavaScript, C (advanced); C++, C#, Objective-C, Typescript, Python, PHP, Perl, Dart (intermediate)
  • Operating systems: macOS, Unix, Windows
  • Technologies: Java EE + Java Persistence API (JPA), RESTful Services (JAX-RS), Web Services, Parser Generators (JavaCC, AntLR, StringTemplate), XML processing/transformation (JAXB, JAXP, XSD, XSLT, Xpath), Tapestry(5), (Swing) GUI, SpriteKit, Web technologies (SVG, CSS, HTML(5)), Meta-Modeling and Codegeneration technologies (Xtext, Xcore, EMF, Ecore, Cinco)
  • Paradigms: Separation of Concerns, Convention over Configuration, Divide and Conquer, One Thing Approach (OTA), eXtreme Model-Driven Design (XMDD), Full Codegeneration, Metamodeling, Domain-Specific Languages, …
  • Tools: Git, SVN, CVS, Maven, Ant, Gradle, Eclipse, IntelliJ IDEA, VisualVM, Xcode, jABC(4), LaTeX, MS Office, iWork, Inkscape, Gimp, Blender, FL Studio, Audacity, Final Cut Pro X

Research Interests

  • Tools for model-driven design:
    The main motivation is to extend the in essence control-oriented eXtreme Model-Driven Design (XMDD) paradigm with data-orientation, adapting well-known paradigms from programming languages in a simplicity-first fashion, ranging from features of object-orientation to functional programming.

     

    The new approach is type-aware, so that type-safety can be validated at design-time. The central achievement is, however, the introduction of higher-order semantics by treating services and processes as first-class citizens. They may be moved around just like data and plugged and played into activities at runtime, thus enabling higher-order process engineering (HOPE).

    • Rich (higher-order) process modeling
    • Adapting programming language features
    • Lightweight formal methods
  • Data:
    With HOPE data-orientation has been introduced to enable rich process-modeling, but non-programmers should be enabled to design, model, change, and maintain the respective data-structures (and the corresponding database), too. Therefore, DyWA supports the user-driven development of process-oriented web applications combining business process modeling with user-side application domain evolution. Using DyWA, application experts without programming knowledge are able to model according to their professional knowledge and understanding, both domain-specific data models and the business process models that act on the data.
    • Design
    • Modeling
    • Manipulation
    • Access servification
  • Information systems:
    I am interested in bringing together all the different parts of software engineering to a complete product (user interface, business-logic, persistence, authentication & authorization, …) in an agile manner, and at the same time ensure high quality over the whole life-cycle of software systems, which may change continuously, via Active Continuous Quality Control (ACQC).

     

    ACQC aims at providing evolving systems with efficient and effective quality assurance facilities. This approach enables not only to check for designated regressions and bugs but to validate whether the system behaves as expected across versions and platform changes, without the need to create a specification for every system version manually. The approach of ACQC allows to obtain hypothesis models via active automata learning for a new version essentially at the same level of detail as the hypothesis models for the previous version without requiring any further time consuming searches for counterexamples. This means that guiding this search by previously learned models successively accellerates the learning process despite the fact that the underlying system continuously changes.

    • Programming in the large
    • Quality assurance
    • Automata learning
  • Systemic Thinking, Holistic Approaches, and Meta-Modeling:
    My observations of the IT industry lead to a very simple conclusion: the participating people with their varying disciplines do not communicate (well) enough. Sometimes this effect is amplified by temporal, spacial, or organizational distance. This leads to separated optimizations and therefore isolated consideration of issues. But, e.g., optimizing a database on its own sometimes is not enough, instead a query has to be changed in an application. Hence, some of the optimization potential of the domain, the platform, or the infrastructure cannot be incorporated. That is due to missing information on the generic level of a virtualizer, an database operator, a clusterer, a container, an application server, an apache server, or a caching facility.

     Therefore, lately I am eager to combine my knowledge in process and data modeling, information systems, and quality assurance in a family of domain-specific modeling / programming languages in DIME (DyWA Integrated Modeling Environment) together with a great team at TU Dortmund. We base on the open source meta modeling tool suite Cinco, following a generative approach. In DIME the whole development process (see information systems above) is elevated to a language, technology, and platform independent description of what an application should do instead of having a unmanageable and unmaintainable implementation of how should an application do something. This way, business logic, and implementation details as well as optimization can be done completely orthogonal and holistic. The DIME approach allows for prototype-driven agile software development with true incorporation of all participants, not only the IT. We plan to go open source with this soon.

Professional Services

Publications

You may find my publications on google scholar.

Teaching

  • Lecturer:
    2017–: Methodische Grundlagen des Software-Engineering (methodical foundations of software-engineering)
  • Guest Lecturer:
    2013–2017: Webtechnologien II (web technologies)
  • B.Sc./M.Sc./Diploma thesis co-supervisor:
  • 2017: Einbinden von lokalen und externen Services in DIME-Frontends am Beispiel des Online Conference Service (integration of local and external service into DIME-Frontends illustrated by means of the Online Conference Service)
  • 2016: Patrick Brandt, Unterstützung alternativer Datenbanksysteme sowie horizontale Skalierung in der DyWA (support of alternative database management systems as well as horizontal scalability in the DyWA)
  • 2016: Fabian Schulte, Konzeption und Umsetzung einer Weboberfläche zur Verfolgung und Wiederherstellung von Änderungen in der DyWA (concept and implementation of the web interface for auditing and restoring of changes in the DyWA)
  • 2016: Carsten Schulte, Konzeption und Umsetzung der Geschäftslogik zur Verfolgung und Wiederherstellung von Änderungen in der DyWA (concept and implementation of the business logic for auditing and restoring of changes in the DyWA)
  • 2016: Jan Winkels, Unterstützung von Serious Games mit Echtzeitsimulation in der DyWA (support of serious games with real-time simulation in the DyWA)
  • 2015: Nabil Abdel-Hafeez, Analyse und Umsetzung von Anforderungen an Integrated Modeling Environments am Beispiel des jABCs (analysis and realization of requirements to integrated modeling environments based on jABC)
  • 2015: Tolgay Usul, WebABC: Umsetzung einer Webversion des Modellierungstools jABC (WebABC: implementation of a web version of the modeling tool jABC)
  • 2015: Dennis Kühn, Domain-Specific Tailoring of jABC4
  • 2015: Alexander Schieweck, A Service-Oriented Interface for Testing Web Applications via Automata Learning
  • 2015: Alexander Bainczyk, Simplicity-Oriented Web-Based Control of Active Automata Learning
  • 2013: Markus Frohme, Agile Domänenmodellierung für prozessgesteuerte Webanwendungen (agile domain modeling for process-driven web applications)
  • 2012: Simon Dierl, Dynasec: Dynamische und hierarchische Zugriffskontrolle in Enterpriseumgebungen (dynamic hierarchical access control in enterprise environments)
  • 2012: Janina Marks, Vergleich der Präsentations- und Geschäftslogikschicht prozessgetriebener Webanwendungen auf Basis regulärer Extrapolation (comparison of presentation- and business logic layer of process-driven web applications via regular extrapolation)
  • 2011: Oliver Bauer, Beherrschung emergenten Verhaltens auf Basis regulärer Extrapolation am Beispiel einer prozessgesteuerten Anwendung (Mastering emergent behavior via regular extrapolation using the example of a process-driven application)
  • 2009: Steve Simon, Agiles Prozeß Management: Konzeptuelle Entwicklung und praktische Evaluation auf Basis des jABC Frameworks (agile process management: conceptual development and practival evaluation basing on the jABC framework)
  • Tutorial Instructor:
    2009: Datenstrukturen Algorithmen und Programmierung I (data structures, algorithms, and programming)
  • Advisor of project groups:
  • Bridging the Gap (BtG): 2016, Generieren von lauffähigen Steuerungsprogrammen aus verfahrenstechnischen Beschreibungen (Generation of executable control programs from process engineering descriptions)
  • KrisenPlan: 2015–2016, Planspiele für Krisenmanagement in Rechenzentren (business games for crisis management in datacenter)
  • ProBio: 2014–2015, Prozessorientierte Verarbeitung von Biomedizinischen Daten (process-oriented processing of biomedical data)
  • HeISs: 2013–2014, Hierarchische Inferenz evolvierender Spielstrategien (hierarchical inference of evolving game strategies)

Leave a Reply

Your email address will not be published. Required fields are marked *