Skip to content
View henryd24's full-sized avatar

Block or report henryd24

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
henryd24/README.md

I bridge the gap between development and operations by building robust automation and cloud-native platforms. Expert in infrastructure orchestration and creating custom developer tooling for high-scale environments.

divider

🌱 Currently

  • 🔭 Building Kubernetes operators and IDP components in Go
  • ⚙️ Shipping Azure DevOps extensions in TypeScript
  • 💬 Ask me about: Terraform, Kubernetes, GitOps, Azure DevOps, multi-cloud

🛠 Tech Stack

Cloud & Orchestration

cloud and orchestration
Helm Argo CD Pulumi Crossplane Terragrunt

Programming & Automation

languages and CI/CD
  • IaC: Terraform, Terragrunt, Pulumi, Crossplane
  • CI/CD & GitOps: Azure DevOps, GitHub Actions, Jenkins, Argo (CD, Rollouts, Workflows)
  • Containers: Kubernetes, OpenShift, Docker, Helm

🏅 Certifications

GitHub Administration AWS Solutions Architect Associate Azure Fundamentals

📂 Featured Projects

kubernetes-operator-tag-images azure_devops_cli

azdevops-extension-exec-pipeline azdevops-sonarcloud-create-project

🛠 Azure DevOps Extensions Ecosystem

Custom extensions used by multiple organizations to streamline DevOps processes:

Extension What it does
SonarCloud Automator Zero-touch project provisioning: checks if the project exists in SonarCloud and creates it if not.
SonarQube Automator Same flow for self-hosted SonarQube.
Pipeline Execution Manager Runs pipelines, waits for them and verifies success, failure or cancellation for complex dependencies.
azure_devops_cli Unofficial Azure DevOps CLI written in Go.

⚓ Cloud-Native Development

kubernetes-operator-tag-images is a Go operator that watches Argo Rollouts and, once a deployment is healthy, retags the image in Amazon ECR with per-environment tags and an active tag for easy promotion and traceability.

flowchart LR
    A[Argo Rollout] -->|healthy deployment| B[K8s Operator<br/>Go]
    B -->|retag image| C[(Amazon ECR)]
    C --> D[env tag: dev / stg / prod]
    C --> E[active tag]
    E -.->|promotion| A
Loading

🧠 Core Philosophy

"Don't just manage infrastructure; build the tools that manage it for you." I focus on Software Defined Everything, treating infrastructure, pipelines, and security as code to ensure consistency and speed.

🚀 Impact & Visibility

GitHub stats Top languages

GitHub streak

Contribution snake

divider

📫 Connect with me

LinkedIn

Profile Views

footer

Pinned Loading

  1. kubernetes-operator-tag-images kubernetes-operator-tag-images Public

    Operador de Kubernetes que observa Argo Rollouts y, al detectar despliegues saludables, retaguea imágenes en Amazon ECR automáticamente con tags por entorno y un tag activo para facilitar promocion…

    Go

  2. azdevops-sonarcloud-create-project azdevops-sonarcloud-create-project Public

    Azure devops extension, which allows to verify if a project exists in sonarcloud and if it does not exist, to create it.

    TypeScript 1

  3. azdevops-extension-exec-pipeline azdevops-extension-exec-pipeline Public

    Azure devops extension, which allows you to run pipelines, wait for them to finish and check if they finished successfully, failed or were cancelled.

    TypeScript 1

  4. azure_devops_cli azure_devops_cli Public

    Herramienta de línea de comandos (CLI) no oficial para interactuar con Azure DevOps.

    Go

  5. azdevops-sonarqube-create-project azdevops-sonarqube-create-project Public

    Azure devops extension, which allows to verify if a project exists in sonarqube and if it does not exist, to create it.

    TypeScript 1

  6. esp32_mq2sensor_mqtt esp32_mq2sensor_mqtt Public

    Read data from MQ2 sensor and send to a MQTT server

    Python 1 1