JM Orbegoso

Hi there 👋 I'm

JM Orbegoso _

DevOps | Back-End Software Developer | Automation Enthusiast

take a look at my profile

About Me

Proactive DevOps with 2+ years of experience working on cloud and on-premises environments.

As a DevOps, I am focused on automating the build and deployment processes to ensure faster and more reliable releases. I also automate infrastructure provisioning and management using Terraform to ensure consistent and repeatable deployments of cloud resources across different environments according to changing needs.

I have a strong background in automation, from using Ansible to install my workstation’s Linux system to using Python scripts to bootstrap the configuration of self-hosted solutions like Prometheus to monitor my home server.

My goals are to keep learning and growing, embrace new challenges in my role, provide innovative solutions to improve workflows, and collaborate with my team to create reliable and scalable systems.

When not working, I support open-source projects or share my knowledge through my blog at blog.jmorbegoso.dev.

Experience

DevOps & Software Architect

DevOps & Software Architect

Unified Software

Mar 2022 - Present

Tech Blog Writer

Tech Blog Writer

blog.jmorbegoso.dev

Sep 2021 - Present

Open-Source Enthusiast

Open-Source Enthusiast

github.com/JMOrbegoso

May 2016 - Present

Roles and Responsibilities

feature image

DevOps

  • Added Docker support for both Back-End and Front-End web projects.
  • Optimized Dockerfiles for performance and security.
  • Created Docker Compose files.
  • Created Azure Pipelines to automate the process of building Docker images, package Helm charts, and IIS deployment packages.
  • Configured multistage Azure Pipelines.
  • Utilized Azure Pipelines tasks to execute Bash or PowerShell scripts that read variable values from project files, such as properties.json or appsettings.json in C# projects, for use within the pipeline.
  • Configured multi-job Azure Pipelines to work on tasks that are not dependent on each other in parallel.
  • Utilized GitHub Actions on open-source projects like checksum-utils.
  • Utilized Azure DevOps to configure the Continuous Delivery, enabling automated deployment of applications across various environments (Kubernetes, Azure App Service, IIS).
  • Configured self-hosted Azure DevOps agents and deployment groups.
  • Migrated Jenkins Continuous Delivery Pipelines to Azure DevOps.

Skills:

Azure DevOps badge Azure Pipelines badge Docker badge GitHub Actions badge
feature image

Infrastructure

  • Created Helm charts for both Back-End and Front-End web projects.
  • Managed and maintained Kubernetes clusters using kubectl.
  • Optimized Kubernetes pod resource requests and limits to avoid poor performance or Out of Memory errors.
  • Automated horizontal pods scaling based on the resources used by them.
  • Deployed self-managed solutions like RabbitMQ, MongoDB, IPFS, Prometheus, Graphana in Kubernetes clusters.
  • Configured health probes on Kubernetes workloads.
  • Troubleshoot pod errors checking logs, events, port-forwarding, debug.
  • Created and mounted secrets and configmaps in Kubernetes workloads.
  • Configured private and public Nginx Ingress controllers.
  • Managed Kubernetes volumes and persistent volume claims.
  • Configured Kubernetes cronjobs that perform cluster management actions.
  • Configured CoreDNS in Azure Kubernetes Service.
  • Utilized Terraform to deploy Microsoft Azure resources like Azure Kubernetes clusters, Azure Front Door, Azure Web Application Firewall, and Azure Functions.

Skills:

Helm badge Kubernetes badge Microsoft Azure badge Nginx badge Prometheus badge
feature image

Back-End Code Development

  • Created and maintained Node.js Back-End projects using Express and NestJS frameworks.
  • Created and maintained C# Back-End projects using .NET.
  • Created and maintained open-source Go Back-End projects using Gin framework.
  • Detected memory leaks in C# projects.
  • Implemented RabbitMQ messaging in C# Projects.
  • Implemented Webhooks.
  • Utilized technologies like GraphQL, Entity Framework, IdentityServer4.

Skills:

C# badge Express.js badge Gin badge Go badge JavaScript badge NestJS badge Node.js badge RabbitMQ badge TypeScript badge
feature image

Software Architecture

  • Implemented GraphQL Schema Stitching in C# projects.
  • Implemented the transactional Outbox Pattern.
  • Implemented the Repository Pattern and Unit of Work.
  • Utilized Microservices Architecture.
  • Implemented the Aggregator Pattern.
  • Currently implementing the SAGA Pattern with orchestration for distributed transactions.

Skills:

Microservices Pattern badge Outbox badge Repository Pattern badge SAGA Pattern badge
feature image

Open-Source

I contribute to the community by writing open-source projects, self-hosted solutions, and automation scripts. Always looking for innovative open-source projects to collaborate on.

Skills:

Ansible badge Bash badge PowerShell badge Linux badge
GitHub

Open-Source Projects

  • 97 ⭐ in GitHub


    Dotfiles [Windows 11]

    Dotfiles [Windows 11]

    Dotfiles [Windows 11] is an automation Script to set up a development environment in a Windows 11 computer, it is repeatable and reboot resilient.

    Skills:

    Bash badge PowerShell badge
  • 15 ⭐ in GitHub


    PSWindowsDotfiles

    PSWindowsDotfiles

    PSWindowsDotfiles is a PowerShell script to create and run dotfiles projects for Windows 10/11.

    Skills:

    PowerShell badge
  • 10 ⭐ in GitHub


    Wish List API

    Wish List API

    Wish List API is an API built in TypeScript following the principles of Domain-Driven Design and Clean Architecture where you can publish your wishes, keep them on track, until you fulfill them.

    Skills:

    TypeScript badge Docker badge
  • 6 ⭐ in GitHub


    PSWebSearch

    PSWebSearch

    PSWebSearch is a PowerShell script that allows users to search for content on Bing, Google, YouTube, or GitHub from the PowerShell console launching the web browser using only the keyboard.

    Skills:

    PowerShell badge
  • 3 ⭐ in GitHub


    ansible-workstation

    ansible-workstation

    Ansible-workstation is an ansible script to set up a fully featured Workstation linux machine.

    Skills:

    Ansible badge Bash badge PowerShell badge Linux badge
  • 2 ⭐ in GitHub


    Doujinshi Showcase

    Doujinshi Showcase

    Doujinshi Showcase is a simple doujinshi reading server, where you can set up your doujinshi library and view it from any browser.

    Skills:

    Go badge Gin badge TypeScript badge Docker badge
  • 2 ⭐ in GitHub


    Checksum-Utils

    Checksum-Utils

    Checksum-Utils is a CLI tool to manage the checksum of your files, focused on NAS systems.

    Skills:

    Go badge