Profileimage by Roman Dinkel Architect, Tech Lead, Senior Software Engineer, Fullstack from Sofia

Roman Dinkel

available

Last update: 14.08.2023

Architect, Tech Lead, Senior Software Engineer, Fullstack

Graduation: BSc. Computer Science
Hourly-/Daily rates: show
Languages: German (Native or Bilingual) | English (Native or Bilingual)

Keywords

Coordinating

Attachments

Lebenslauf_180623.pdf
CurriculumVitae_180623.pdf

Skills

I like to work conscientiously and with clean code practices in mind to achieve sustainable project progress. For newly started projects, I show new solutions with a minimum viable product (MVP), with which we can effectively determine the direction together. Especially with vague project ideas, early feedback can be a great help and help us to set priorities. With my diverse project experience, I develop suitable solutions for existing challenges. All of this preferably in a small and agile team or independently in coordination with the respective contact person. I prefer to take and give feedback constructively because I am convinced that good and coordinated communication has a great advantage.

Project history

12/2022 - 06/2023
DevOps, NDA Project
NDA (Internet and Information Technology, 50-250 employees)

Ensuring full coverage of specification and quality in a complex setup with many microservices.
Further development of the test infrastructure with simulator and mock services for local Minikube and Cloud Kubernetes environments. In addition, definition and implementation of test specifications.
The landscape for the application to be tested is modeled with over 14 microservices. The System Under Test is a new development for a nationwide deployment that just about everyone will come into contact with it indirectly.
Configuration and specific scripts of the GitLab CI/CD pipelines and Kubernetes. Encryption and code obfuscation. PKI, Certificates

05/2022 - 06/2022
Architecture, Performance and Teamwork Consultant, Freelancer,
Beta Systems (Banks and financial services, 500-1000 employees)

Consulting and optimization of existing software and development processes.
My contribution to improving the portal product from Beta Systems lay in well-founded analysis and measurements with data of varying complexity. My goal was to optimize the performance of the SQL queries and the interface between the backend and the database, as well as answering open questions about the architecture, libraries and solving complex challenges. In ad- dition, some of my advice was for the development process, organization and working with customers.

Industry: Management
Team: 6 Persons
Tasks: Refactoring, mentoring, knowledge transfer, support, advice
Successes: Solved performance problems in the team. It was only possible with deep expertise to decide on the right optimization

Applied Technologies: Spring Boot, PostgreSQL, Hibernate, Liquibase, Maven, Gradle, HTTPS, GitLab, git, Microsoft SQL, Scala, Java, Flutter, Dart, SSL, TLS, REST, Jira, KISS, SOLID, Scrum


10/2020 - 05/2022
Lead Software Developer and Consultant, Freelancer
Stromnetz Hamburg (Energy, water and environment, 1000-5000 employees)

New development of mobile and desktop apps as well as the backend systems and the entire architecture. In addition, extensive knowledge transfer to the employees.
At the beginning of my work at Stromnetz Hamburg I supported the project completion of the shaft inspection app in Flutter for iOS devices and the Spring Boot backend in a Kubernetes environment.

This was followed by the Flutter plugin development called SecureClient for uniform and secure communication of all Flutter apps at Stromnetz. The goal was to avoid unnecessarily time-consuming and individual solutions for each project and to ensure joint integration with SNH IT security. The Flutter plugin can be easily integrated into any Flutter project at Stromnetz. We maintain and develop this continuously. This plugin is already used in several projects (Schapp, Elvis, ZuGabe).

This was followed by the start of the new development of the archive management app Elvis and the backend in the same team setup, as a couple. For the new development, the very first step was the migration of the previous database from the Microsoft SQL database to PostgreSQL. We have this process with Liquibase automated and covered with tests, so we are able to migrate the current productive database at any time and can develop agilely according to Scrum based on the new database model, feature for feature. We worked in close contact with the department and provided regular updates to the Kubernetes integration environment. So that the department could test and accept the status for production. The regular new versions of the whole system were made available on IPhone, IPad and in the browser. The connection of hand scanners via Bluetooth for scanning barcodes and QR codes was also part of the project, so that archived goods can be scanned, stored and new ones can be cashed in.

After the archive management app Elvis went live, I started a new project, the ZuGabe. This is a Flutter app on iOS devices that provides various documents for the skilled workers on the job. Shows the coordinates on the map and keeps the data stock of several gigabytes on the smartphone up to date. The data is automatically synchronized in the background. For an efficient process, a database is set up via the app, which notes the updates and informs the user about outdated data. Outdated information can lead to errors and therefore the user is informed about it and asked for better network reception for synchronization. The data for the skilled worker is provided by the backend from various areas of the SNH network. For this, the user only has to authenticate himself.

The future development of the Elvis archive management app is to be planned and implemented as version 2.0. The maintenance of existing apps, e.g. of the SecureClient takes place regularly and other new projects are already waiting to be implemented.

Industry: energy, public sector
Team: 2 Persons
Key Skills: Refactoring, JUnit test, new development, mentoring, knowledge transfer, support Tasks: Refactoring, redevelopment, architecture design and implementation, JUnit testing, mentoring, knowledge transfer, support
Successes: Improvements implemented in various projects and two applications in a team of two and one application independently developed. Employee skills greatly encouraged.

Applied Technologies: Spring Boot, PostgreSQL, Hibernate, Liquibase, Maven, Gradle, HTTPS, GitLab, git, Microsoft-ADFS, OAuth2, Microsoft SQL, Kotlin, Java, JUnit Tests, Docker, Kubernetes, nginx, Flutter, Dart, iOS-App, Swift, Xcode, Unix, Mac, Linux, SSL, TLS, REST, Jira, KISS, SOLID, Redux, Bluetooth, Scanner, SQLite, Scrum, , Grafana, Prometheus


09/2019 - 09/2020
Technical Leader, Architect, Software Developer and Consultant, Freelancer
BKK VBU, Berlin (Insurance, 1000-5000 employees)

New development of the health insurance app as well as the backend systems and the entire architecture.

When I joined the platform project, the app was being developed by an external company that also wanted to import customer data from the health insurance company. I convinced those responsible to set up their own API interface with access rights, which I then implemented. For the access authorizations, the health insurance company already had a cooperation with a manufacturer of an Identity and Access Management (IAM) solution, which should also be used in the app. It turned out that this IAM did not have a complete OAuth2 implementation and was only conditionally configurable. As an alternative, I brought in the open source software Keycloak, which has already proven itself in the industry. Keycloak quickly replaced the IAM and its maker. Due to tough and slow communication with both external service providers, I convinced those responsible to take the app development into their own hands. The change of strategy took place before Christmas and I developed an app for both popular mobile platforms iOS and Android in a scrum sprint. Before Christmas, we rolled out the first test version with the Apple test flight for employees. Before the public start in the app stores, a few features should still be developed that will bring added value to customers. As with the API interface, the internal legacy systems had to be connected in order to be able to receive messages and files from the app in a specific format and process them automatically. Due to the corona pandemic and the lockdown in March, we released the app for both platforms early. The software and backend systems we develop run without failures and are stable as the number of users increases. My concepts and implementation include the app architecture, various app features and the app outbox. I also value code quality, backend stability and load testing. In order to protect the legacy systems from an unpredictable flood of data, a design and basic implementation of the caching (using Kafka) of incoming messages was also carried out, processing the raw data into the target formats and making the communicated data available to the app users. I also designed and developed custom keycloak modules for the Registerzug and Login to allow integration with the legacy system. The further and advanced train- ing of the employees with the mentioned technologies and concepts was also part of our cooperation.

Industry: Health care, insurance, public sector
Team: 6 Persons
Key Skills: Refactoring, JUnit test, new development, mentoring, knowledge transfer, support Tasks: Refactoring, Development, architecture design and implementation, JUnit testing, mentoring, knowledge transfer, support
Successes: Created a Minimum Viable Product (MVP) with several applications almost alone, set the team on track and further developed it as a team. Also exchanged a lot of knowledge with the team.

Applied Technologies: Amazon Web Services, AWS, Vert.x, Kotlin, JUnit Tests, PostgreSQL, jOOQ, Flyway, Gradle, Maven, HTTPS, Jenkins, GitLab, git, Keycloak, OAuth2, MySQL, Python, Hibernate, JavaEE, Docker, Kubernetes, nginx, cert-manager, ELK, Elasticsearch, Filebeat, Kibana, Prometheus, Grafana, Flutter, iOS-App, Android-App, ETL, Kafka, Zookeeper, Schema Reg- istry, Avro, Node.js, JavaScript, AWS, Scanbot.io, Linux, SSL, TLS, Jira, Miro, Scrum, Microservice


11/2019 - 12/2019
Software Developer and Consultant
(Public service)

Advice and development of a student learning app for the basics with random multiplication tasks and a graphical evaluation of the past 14 days to overview your own progress.

Industry: Education

Team: 1 Person
Tasks: Project consulting, development of the app Successes: Projektberatung, Fertigstellung der App

Applied Technologies: Flutter, Dart, Android


04/2019 - 06/2019
Software Developer and Consultant
(Internet and Information Technology)

Support for a startup in the mobility industry. Their goal is to further develop current mobility into a customer-friendly and environmentally friendly solution. With more detailed user information, the be- havior of the various mobility services and transport variants is illustrated. This data could be used to improve city planning and create solutions for lesser known use cases as well as improve existing ones.

Industry: Mobility
Team: 1 Person
Successes: Project consulting, setting up various tools for the entrepreneur

Applied Technologies: Google Cloud, JUnit Tests, MongoDB, MySQL, Payara 5, Linux, SSH, RStudio, ReactNative, Nodejs, Mobility Choices Project, Microservice


11/2018 - 04/2019
Cloud Solution Architect
Betterspace GmbH (Consumer goods and retail, 10-50 employees)

I evaluated open source software that went into developing the new infrastructure for the company. Unlike the old systems, this new system in the Google Cloud can communicate with more than a thousand IoT devices. The core of the system is Kafka, a message broker ideal for connecting microservices. It is also possible to connect data from various sources, link them together and generate the corresponding data streams (known as "Extract, Transform, Load" - ETL) for new products. To do this, I implemented several microservices prototypes for new products. In addition, I planned the migration of the old systems in several steps in order to switch over to the productive system without interruption. Also, I set up Spinnaker to manage and monitor the entire deployments via pipelines in different stages, which can be used easily and quickly by developers and project managers with different role rights. The aim of this was to enable the introduction of DevOps principles and to achieve a structured and agile organization and development. I was also involved in the interview processes of new candidates for the company.

Industry: Hotel, IoT devices
Team: 1-5 Persons
Tasks: New development, design and implement new architecture, JUnit
Successes: Completed a minimum viable product (MVP) almost alone and the team got on track

Applied Technologies: Amazon Web Services, AWS, ETL, Kafka, Confluent Kafka, KSQL, Avro, Schema Registry, Kafka connect, Java 8, Kotlin, Prometheus, Gradle 5+, Vert.x, Zookeeper, Spinnaker, Google Cloud (GKE, multiple Kubernetes Clusters, VPN, Virtual Private Cloud (VPC), Azure, Stackdriver, Cloud SQL, Shell, Cloud Build), cert-manager, Docker, PostgreSQL, MySQL, git, GitLab, JUnit Tests, DevOps Principles, YAML, Bash, Microservice, Kanban


04/2018 - 09/2018
Software Developer
Micromata GmbH (Internet and Information Technology)

Improvement and further development of the test infrastructure and applications for one of the largest logistics companies worldwide. Also working on an orchestration project with Kubernetes. He later moved to another team to support application development for one of the largest car manufacturers in the world. Adding a customizable data exporter and developing a new web app for the automaker’s own car dealerships. Dedicated participation in the company goals, the establishment and organization of the Tech Guild and the Quality Working Group.

Industry: Automotive, Logistik
Teams: 10-20 Persons, 2 Persons
Key Skills: Refactoring, JUnit testing, redevelopment
Tasks: Refactoring, redevelopment, architecture design and implementation, JUnit
Successes: Improvements implemented in various projects and a new application developed in a team of two

Applied Technologies: Kubernetes, Docker, AngularJS, Angular 6+, Java, SpringBoot, TypeScript, Javascript, git, reactjs, React, JUnit Tests, Prometheus, Grafana, ELK-Stack, Ansible, PostgresSQL, Scrum, Microservice


06/2016 - 03/2018
Software Developer, Quality Assurance
Flavia IT-Management GmbH (Internet and Information Technology)

Extensive further development of an internally used software, which is used for monitoring project budgets and creating performance records. Migration of the software architecture and technologies used. Also responsible for quality assurance and further development of a rapidly growing customer project.

Industry: E-mobility, management
Team: 2-7 Persons
Key Skills: Refactoring, redevelopment, architecture design and implementation
Tasks: Refactoring, redevelopment, architecture design and implementation, JUnit and manual testing, libraries exchanged
Successes: An unstable and slow application rebuilt and made afloat

Applied Technologies: Akka, Play Framework, Java, Docker, PostgresSQL, JooQ, Spring Boot, SBT, ELK-Stack, Flyway, git, JUnit Tests, Angular, Prometheus, Grafana, OCPP 1.6, OCPP 2.0, Scrum, Microservice


05/2017 - 09/2017
Bachelor Thesis „Implementierung von Anti-Cheating Mechanismen in VoluntLib”
University Kassel (Public service)

The VoluntLib software developed for Volunteer Computing is a way of realizing sophisticated calculations such as cryptanalysis with low hardware and electricity costs. To avoid falsified partial results from participants in an unstructured and decentralized network, a control concept had to be developed and integrated.

Industry: Research
Team: 1 Person
Key Skills: scientific writing, development, evaluation Tasks: Development, scientific writing
Successes: Bachelor of Science degree

Applied Technologies: C-Sharp, .NET, VoluntLib, Microservice


10/2014 - 04/2016
Working Student
enercast GmbH (Energy, water and environment, 10-50 employees)

Analysis of historical performance data from photovoltaic and wind power plants for plausibility. Consideration of various influences such as snowfall, bats, shadows and maintenance. This made it possible to make more precise optimizations for the training of the specific park in the neural network and to improve the forecasts. The reports generated from the training also required a visual inspection to determine whether the quality meets the requirements and can be traceable depending on the database. In addition, development of support tools.

Industry: Renewable energy, Big Data
Team: 3-6 Persons
Key Skills: Excel, data analysis, report generation and monitoring of the neural network training for plausibility
Tasks: development, data analysis
Successes: development, data analysis, contribution to the company

Applied Technologies: Java, Spring, JUnit Tests, Kanban, Scrum, Grafana, Prometheus


11/2013 - 11/2014
Student Assistant
Knowledge processing department, University Kassel. (Public service)

Further development of the WideNoise+ app for Android devices, as well as re-implementations of existing features such as the location function. In addition, a recommendation feature was added to better describe the data collected by the user. The data is displayed on a global map.

Industry: research
Team: 1 Person
Key Skills: Android, Java, transfer performance, learning
Tasks: Development, integration of social media
Successes: Development completion, new features, solving challenges that existed before my time

Applied Technologies: Java, Android, Facebook SDK, Twitter SDK, JUnit Tests


11/2011 - 11/2012
Working Student in the Advanced Development Division
Solar Technology AG

Development and support of an in-house framework and development tools. Among other things, the seamless integration of C and C-Sharp applications for data exchange with the company’s encryption libraries.

Industry: Renewable energy, energy
Team: 1 Person
Key Skills: C, C#, apply knowledge to different fields
Tasks: Development of the framework, support for the developers in the team Successes: Solved challenges that the developer couldn’t solve

Applied Technologies: C-Sharp, C, .NET. Marshalling, Scrum


01/2004 - 01/2006
Administration, Development and Marketing
Online Shop

Responsible for the entire development and operation of the web shop and the Wordpress blog. In addition, bloggers for health topics on this platform and search engine optimization for a better ranking in popular search engines.

Industry: ecommerce
Team: 1 Person
Key Skills: SEO, UI/UX, PHP
Tasks: Betrieb, Integration with Wordpress, write Blog posts about nutrition, product care, cooperations, advertising
Successes: Integration with Wordpress, positive profit

Applied Technologies: PHP, xt:commerce, Wordpress, Google Keywords, SEO, HTML, CSS


Local Availability

Only available for remote work
worldwide 100% remote only
Profileimage by Roman Dinkel Architect, Tech Lead, Senior Software Engineer, Fullstack from Sofia Architect, Tech Lead, Senior Software Engineer, Fullstack
Register