AI & Platform Engineering consultant

Hi, I'm Al-waleed Shihadeh

Platform engineering leader with 15+ years building and running cloud-native production systems. I help organizations improve availability, security and reliability, control cloud cost, and adopt AI through secure infrastructure, gateways and integrations.

50Articles on Medium
8Topics covered
10Open source projects
15+Years in engineering
Writing

Blog posts

Articles on Medium, grouped by topic. Search or filter to find something.

Software Engineering

5 Risks That Should Be Avoided in Software Projects

Read on Medium β†’
Software Engineering

Automating Release cycle activities

Read on Medium β†’
Software Engineering

Automate Unit Tests Coverage Reports and Dependency Updates for Your Repositories.

Read on Medium β†’
Software Engineering

Tips for Implementing a Software Release Process

Read on Medium β†’
Software Engineering

Avoid Production Incidents by Considering Production Conditions During Development

Read on Medium β†’
Software Engineering

Improve Code Quality and Git History with Automation tools

Read on Medium β†’
Software Engineering

How to Add Badges to a GitHub Repository

Read on Medium β†’
Software Engineering

How to Use Environment Variables with RSpec Unit Tests

Read on Medium β†’
Software Engineering

Build a Health Check Rack Middleware

Read on Medium β†’
Kubernetes

How to Migrate From Docker Compose to Kubernetes

Read on Medium β†’
Kubernetes

Resource Limits on Kubernetes

Read on Medium β†’
Kubernetes

Helm Chart Wait for All Dependencies Before Starting Kubernetes Pods

Read on Medium β†’
Docker Swarm

Six Tips For Running Swarm Cluster in Production

Read on Medium β†’
Docker Swarm

Portainer Review

Read on Medium β†’
Docker Swarm

How to Limit Resources for Docker Swarm Services

Read on Medium β†’
Docker Swarm

Zero Downtime Deployments With Docker Swarm

Read on Medium β†’
Docker Swarm

How to Deploy Portus and Docker Registry in Swarm

Read on Medium β†’
Docker Swarm

Orchestrating a Rails Docker Deployment in Swarm

Read on Medium β†’
Traefik

Traefik 2 High Available Mode

Read on Medium β†’
Traefik

Prevent DDoS Attacks with Traefik 2

Read on Medium β†’
Traefik

Integrate Traefik 2.1 Reverse Proxy with Docker Swarm Services

Read on Medium β†’
Traefik

Monitoring Traefik With Grafana

Read on Medium β†’
Traefik

Traefik 2 and Open Tracing

Read on Medium β†’
Application Logs & Centralized logging

Parse Ruby on Rails logs with FluentD

Read on Medium β†’
Application Logs & Centralized logging

Centralize Your Docker Logging With FluentD

Read on Medium β†’
Application Logs & Centralized logging

How to Correlate Rails Requests to Database Logs

Read on Medium β†’
Application Logs & Centralized logging

Centralize Your Docker Logging With Syslog

Read on Medium β†’
Application Logs & Centralized logging

Collect and Store Rails Console Logs

Read on Medium β†’
Application Logs & Centralized logging

Ruby on Rails Single Line Logging

Read on Medium β†’
Application Logs & Centralized logging

Seven Tips For Using Fluentd For Logs Collection

Read on Medium β†’
Monitoring

Monitor Delayed Jobs with Prometheus and Grafana 2

Read on Medium β†’
Monitoring

Monitor Delayed Jobs with Prometheus and Grafana 1

Read on Medium β†’
Containers and Orchestrators

Five Use Cases For Docker Entry Points

Read on Medium β†’
Containers and Orchestrators

Cache and Serve Rails Static Assets With Nginx Reverse Proxy

Read on Medium β†’
Containers and Orchestrators

Three Methods to Share Rails Assets With Nginx

Read on Medium β†’
Containers and Orchestrators

How to Detect Vulnerabilities in Docker Images

Read on Medium β†’
Containers and Orchestrators

Dockerizing Rails Applications Part 3: CI/CD Integration

Read on Medium β†’
Containers and Orchestrators

Dockerizing Rails Applications Part 2: Automation

Read on Medium β†’
Containers and Orchestrators

Dockerizing Rails Applications Part 1: Writing the Dockerfile

Read on Medium β†’
Containers and Orchestrators

Automate Docker Registry Cleanup

Read on Medium β†’
Containers and Orchestrators

How to Build Docker Base Images for Rails

Read on Medium β†’
DevOps Tools & Tricks

Build GitHub Actions Using Docker Containers

Read on Medium β†’
DevOps Tools & Tricks

Build a Blog With GitHub and MkDocs

Read on Medium β†’
DevOps Tools & Tricks

5 Tips for Hosting Your Own Jenkins Instance

Read on Medium β†’
DevOps Tools & Tricks

How to Minimize the Costs of Running AWS EC2 Instances Using Terraform

Read on Medium β†’
DevOps Tools & Tricks

Build an OpenLDAP Docker Image That’s Populated With Users

Read on Medium β†’
DevOps Tools & Tricks

Create SonarQube Jenkins webhook

Read on Medium β†’
DevOps Tools & Tricks

How to Add Github Webhooks to a Jenkins Pipeline

Read on Medium β†’
DevOps Tools & Tricks

Improve Your Productivity Using Git and Bash Aliases

Read on Medium β†’
DevOps Tools & Tricks

Host a Secure Private Gem Server With LDAP Authentication and Authorization

Read on Medium β†’

No articles match your search.

Looking for the documentation?

Installation guides, configuration examples and usage notes for every gem and the GitHub Action.

Open the docs