Profileimage by Constantin Weisser Consultant und Software Engineer from SoPaulo

Constantin Weisser

available

Last update: 19.11.2022

Consultant und Software Engineer

Company: Weisser Software Engineering Ltda
Graduation: M.Sc Informatik
Hourly-/Daily rates: show
Languages: German (Native or Bilingual) | English (Full Professional) | Portuguese (Full Professional)

Attachments

2022-10_Resume.pdf

Skills

  • Methodische Problemlösung als Vorgehensweise: Ich helfe Teams, Probleme zu analysieren und verstehen um mit gezielten Schritten nachhaltige Lösungen zu schaffen
  • Automatisierung als Beschleuniger: Ich helfe bei der Auswahl kritischer Prozesse, die automatisiert den größten Impact auf die Produktivität haben. Aus einem reichen technischen Erfahrungsschatz helfe ich, bestmögliche Implementierungen zu bauen.
  • Infrastruktur Engineering: Das umfasst Entwurf und automatisches Provisionieren von Infrastruktur, aber auch das Engineering der Qualität des Codes und der Resilienz der Infrastruktur selbst.
  • Automatisierte Erhebung wichtiger Metriken und Unterstützung bei der Auswahl technischer Metriken. Das ist die Grundlage für Data Driven Decisions, die für Technik und Business unabdingbar sind.
  • Testing: Der Grundstein für erfolgreiche Automatisierung. Ich berate zu Arten von Tests und Umsetzung von Unit-, Integration- und Contract-Tests.


DevOps, Integration Testing, AWS, Azure, Terraform, Pulumi, Clojure, Java, Kotlin, Perl, SQL, Docker, Kubernetes, Splunk, fluentd, Git, Github, Bitbucket, Github Pipelines, Azure DevOps, backend, EDN, Plumatic Schema, Tekton, Datomic, HTTP, Kafka

Project history

11/2021 - Present
Extending a fully automated Contract Testing Platform for Safe Continuous Deployment (Senior Software Engineer, Project Lead, 10 months ongoing)
Project: Securing thousands of weekly deploys comes with its challenges. Engineers' peace of mind to deploy with such high rates depends heavily on the quality of the safety net, that automated tests and pipeline feedback span. We identified communication errors as one of the central sources of production incidents. Single-service integration tests cannot catch this type of error. E2E test suites, on the other hand, do not scale with this deployment rate. They are also time-consuming and tedious to maintain.
We decided to build a Contract Testing Platform that can cover virtually all communication errors in production. This is part of an ongoing effort to replace E2E tests with more scalable testing strategies. Today, the Contract Testing Platform validates thousands of service code alterations daily. Engineers rely on the feedback to see if their changes will break any communication patterns in production.

Contribution: I lead the engineering team in extending the Platform as new challenges arise, such as multi-country deployments or supporting novel tech stacks. I analyze the precise requirements together with stakeholders from other Business Units. I drive decision-making through whiteboarding and trade-off analysis. Since the Platform depends on infrastructure from other teams, such as CICD pipelines or the central service registry, I closely coordinate with other engineering teams. I ensure that the rollout happens without service interruption because the Platform has become a crucial piece of the company's value stream. Furthermore,  I implement automated metrics collection to study feature adoption and Platform performance over time.

Methods & Technologies: Contract Tests, Engineering Platform, Clojure, EDN, Plumatic Schema, Tekton, Datomic, HTTP, Kafka, Performance Engineering

09/2022 - 09/2022
Test and Deployment Automation
Project: For more than two decades, this client has been developing a large application landscape in old-school separated roles: developers, mostly manual operations, and a test team that validates – also by hand. However, complexity has taken over most of the developer's mental capacity. Communication has become a bottleneck and maneuverability is heavily impaired: classic firefighting.

Contribution: Within the scope of this consulting project, I supported my client to start modernizing build, deployment, and testing. The goal was to analyze and study some of the base technologies that would enable a new collaboration model in the future. During a workshop, we determined the best fit for a blueprint project. Further, we discussed important key metrics that can guide them out of complexity.

Methods & Technologies: Docker, Pipeline-Tools, Metrics Collection, Whiteboarding, IT Architecture

01/2021 - 06/2021
DevOps Transformation: from traditional deployments to high velocity (Consultant, 6 months)
Project: The client is a middle-sized enterprise offering an integrated software solution to business customers. The company has a large and stable customer base. They want to accelerate releases, from a couple of scheduled releases per year to shipping often. Starting with frequent automatic deployments and speeding up the whole value stream usually presents a couple of new challenges. There are technical difficulties like an aging tech stack that does not allow for the required flexibility. More importantly, cultural changes are necessary, because such a transformation can feel scary and uncertain. Moving away from well-rehearsed patterns takes courage and requires leaders to produce an environment of psychological safety and absolute tolerance for mistakes.

Contribution: In a team of consultants, I accompany both the technical evolution of our client's engineering team as well as the leaders and managers to build strong teams. I support technological choices concerning automation, pipeline, automated testing, and service orchestration on the target platform. I assist a pioneer team with their first implementation of a Kubernetes platform as an easy deployment target for product teams. I help managers to align their goals and build a useful roadmap to improve the value stream.

Methods & Technologies: Pipeline tooling, Kubernetes, Build and Deployment Automation, Automated Metrics Collection, Psychological Safety Culture

06/2019 - 06/2021
Ganzheitliche Software-Delivery-Lösung für eine cloud-native Anwendungslandschaft
Projekt: Um neue Geschäftsmodelle zu erschließen, entwickelt der Kunde mehrere Greenfield-Projekte. Diese ergänzen die analogen Bestandsprodukte durch zusätzliche, digitale Dienste, darunter eine Plattform zur Koordination von Großbaustellen.
Ziel des Projektes ist der Entwurf und die Umsetzung eines ganzheitlichen Software Delivery-Konzeptes. Dazu werden regelmäßig die aktuellen fachlichen und technischen Anforderungen gemeinsam mit Product Ownern und Entwicklungsteams ermittelt und eine passende Umsetzung ausgearbeitet. Der Automatisierungsgrad wird schrittweise an die Bedürfnisse des jeweiligen Teams angepasst, mit dem Ziel neue Features immer schneller auszuliefern.
Die cloud-nativen Microservices werden durch eine Pipeline kontrolliert auf Azure in Produktion gebracht. Die benötigte Cloud-Infrastruktur wird mit Terraform in Code beschrieben, getestet und automatisiert ausgerollt. Git gewährleistet die Nachvollziehbarkeit.

Rollen und Aufgaben: Meine Rolle ist eine Kombination aus Software Engineer und Berater. Unterstützung des Kunden bei der Cloud-Migration auf Azure und dem Wandel zu modernen Ansätzen wie Continuous Integration und Continuous Delivery (CI/CD). Beratung bzgl. der Wahl technischer Werkzeuge. Berücksichtigung  wirtschaftlicher Anforderungen (Time-to-Market). Förderung des Wissensaustauschs zwischen verschiedenen Teams. Bereitstellung einheitlicher Lösungen für gemeinsame Probleme.

Methoden und Technologien: Azure, Azure DevOps, Terraform, Pulumi, Kubernetes (Azure AKS), Helm, Docker, Gradle, Git

11/2016 - 11/2018
Entwicklung einer Cloud-basierten Anwendung für das Baustellenmanagement
Projekt: Das Projekt hat zum Ziel, die Kommunikation zwischen Bauleitern, Vorarbeitern und Bauunternehmen auf Baustellen während der Bauausführung zu vereinfachen. Dazu wird eine Cloud-basierte Anwendung entwickelt, die sowohl eine Weboberfläche als auch native Mobile Apps für Android umfasst. Die verschiedenen Clients kommunizieren mit der REST API eines Microservice-Backends bestehend aus Spring Boot Anwendungen. Die Produktionsumgebung ist Azure.
Zur Authentifizierung und Autorisierung werden OAuth 2.0 und OpenID Connect Tokens verwendet. Diese werden von einem  Identity Server ausgestellt und von den Clients genutzt.
Das Projekt verwendet Scrum als Vorgehensmodell. Über eine automatisierte Build-und Deployment-Pipeline (Jenkins, Rundeck, beides mit „Pipeline-as-Code“ Ansatz) werden verschiedene Stages kontinuierlich ausgerollt.
Die Projektsprache ist Englisch und das Team ist verteilt auf zwei Standorte in Portugal und Deutschland. Das Projektteam besteht aus ca. 20 Personen.

Rollen und Aufgaben: Backend Developer mit Spring Boot: Beinhaltet Entwerfen, Erweitern und das versionisierte Pflegen der REST-API und Integration mit den Frontends. Entscheidungen über die Architektur der Microservice-Anwendung sowie Anbindung von Datenbanken und Event Sourcing mit Apache Kafka und der Confluent Plattform. Darüber hinaus Erweitern der umfangreichen Testlandschaft mit Unit Tests, Integrationstests, Dokumentationstests (Spring Rest Docs), API-Tests und Lasttests mit Gatling.
Operationales: Unterstützen des DevOps-Teams bei der Wartung von CI/CD-Systemen und des Buildprozesses mit Jenkins, Programmieren der Infrastruktur mit Puppet nach „Infrastructure as Code“-Ansatz.

Methoden und Technologien: Spring Boot, Java, JPA, Hibernate, Spring Data, Apache Kafka, Confluent Platform, Spring Kafka, Spring MVC, AspectJ, Pivotal Cloud Foundry, IntelliJ Idea, Git, Docker Compose, Puppet, Ansible, Vagrant, Terraform, Confluence/Jira, Jenkins, Gradle, Gatling, Azure Resource Manager, Artifactory, Microservices, Scrum, Oracle DB, MySQL, MS SQL Server, REST / HATEOAS, Spring Security

Time and spatial flexibility

Nur 100% remote möglich. Ich biete Beratung als Nebentätigkeit an, bin aber zeitlich flexibel.

Other

Ich bin deutscher Staatsbürger ansässig und tätig im sonnigen Brasilien

Contact form

Contact details

Profileimage by Constantin Weisser Consultant und Software Engineer from SoPaulo Consultant und Software Engineer
Register