Global engineer. Based in Lagos. Building anywhere.

Cloud DevOps &
Automation Engineer

I build cloud infrastructure that scales without breaking, and automation systems that replace manual work permanently. Whatever your team is doing by hand today, I can build something that does it better. Terraform, Kubernetes, AWS, Jenkins, GitHub Actions, n8n, GoHighLevel, OpenAI.

View Cloud projects View Automation work
40+
Automation workflows
built and shipped
8+
Cloud and DevOps
projects documented
3
Companies
worked with

// what i do

Two disciplines.
One engineer.

I work at the intersection of cloud infrastructure and intelligent automation. I can build the infrastructure your team deploys on, set up the pipelines that ship your code, and automate the processes your team wastes hours doing manually.

โš™๏ธ
Cloud DevOps

I provision entire cloud environments from scratch using Terraform, design CI/CD pipelines that ship code without human intervention, containerise and orchestrate applications on Kubernetes, and set up monitoring so your team knows what broke before users do. I work across AWS including EC2, VPC, RDS, S3, Amplify, SSM, CodePipeline, CloudWatch and more. Every project comes with full documentation and a clean handoff so the next engineer on your team can pick up exactly where I leave off.

TerraformKubernetesDocker AWSJenkinsGitHub Actions AnsibleLinuxFail2banPython
๐Ÿ”
Automation Workflows

I map broken manual processes and rebuild them as intelligent, event-driven systems. Lead qualification, multi-week nurture sequences, full-cycle recruitment pipelines, client onboarding, proposal follow-ups. If your team is doing something repeatedly, I can automate it with idempotency checks, stop-on-reply logic, and thorough testing built in from day one. Every workflow I deliver includes logic maps and handoff notes so the knowledge stays in the system, not in my head.

n8nGoHighLevelApify OpenAIGHL WorkflowsCRM Automation Lead GenWebhook APIs

// tech stack

Tools I use,
not just list.

IaC
Terraform
Modules, state management, AWS provider, VPC provisioning, NLB, EC2, security groups, route tables
Containers
Kubernetes + Docker
Deployments, services, Dockerfile, Docker Compose, Alpine images, K8s manifests, load balancing
CI/CD
GitHub Actions
Workflow triggers, SSH deployment, PM2 restarts, secrets management, branch protection rules
CI/CD
Jenkins + AWS CodePipeline
Pipelines, SSH agents, CodeBuild, CodeDeploy, webhooks, automated rollback
Cloud
AWS
EC2, VPC, NLB, RDS, S3, Amplify, AppSync, DynamoDB, Cognito, SSM, IAM, CodePipeline, CodeBuild, CodeDeploy, CloudWatch
Provisioning
Ansible
Playbooks, user provisioning, NVM and Node.js setup, PM2, GitHub CLI auth, Ansible Vault
Automation
GoHighLevel + n8n
Workflows, AI action nodes, webhooks, CRM pipelines, multi-channel messaging, branching logic
Security
DB Security + Linux Hardening
MariaDB SSL, Let's Encrypt, Fail2ban, query monitoring, backup automation, UFW
AI + Scraping
OpenAI + Apify
GPT-4 integration, prompt engineering, LinkedIn scrapers, Instagram scrapers, n8n pipelines

// cloud and devops projects

Infrastructure I've
actually built.

Real projects documented in full, including every problem I hit and how I solved it. No happy-path-only write-ups.

Terraform, AWS, Node.js
Node.js App Deployment on AWS with Full Terraform Infrastructure

Provisioned a complete AWS environment from scratch using Terraform. VPC with a custom CIDR block, two subnets across availability zones for fault tolerance, Internet Gateway, Route Table, Security Groups (SSH, HTTP, port 3000), EC2 instance, and a Network Load Balancer distributing traffic to the Node.js app. Deployed the application on EC2 via SSH, Git, and PM2 for process management.

Problem solved: The EC2 target group reported unhealthy after deploying behind an Application Load Balancer. The ALB could not forward raw TCP traffic on port 3000. Investigated both NLB and reverse proxy as solutions, switched to a Network Load Balancer which forwards TCP directly. Resolved without adding Nginx complexity.
TerraformAWS EC2AWS VPCNetwork Load BalancerSecurity GroupsPM2Node.jsSSH
AWS CodePipeline, Terraform, Docker
BucketBuddy: CI/CD Deployment Pipeline

Built a full CI/CD pipeline using AWS CodePipeline, CodeBuild, and CodeDeploy for automated deployments. Integrated GitHub via AWS CodeStar Connections. Deployed PostgreSQL in Docker on EC2 with automated S3 backups. Implemented CloudWatch monitoring and provisioned all infrastructure with Terraform. Executed a full database migration from local to cloud environment.

AWS CodePipelineCodeBuildCodeDeployTerraformDockerPostgreSQLS3CloudWatch
AWS Amplify, React, TypeScript
Bucket List Tracker App on AWS Amplify

Built and deployed a full-stack React and TypeScript app using AWS Amplify. GraphQL API via AppSync connected to DynamoDB, Cognito authentication, S3 storage, and a CI/CD pipeline triggered by GitHub pushes. Includes dark and light mode with localStorage persistence and full CRUD with TypeScript interfaces.

Key issue solved: Build failed because aws-exports.js was in .gitignore. Identified it as a required build artefact, committed it to version control, build succeeded immediately.
AWS AmplifyAppSyncDynamoDBCognitoReactTypeScriptGraphQL
Kubernetes, Docker, Alpine Linux
Scalable Web Application Deployment on Kubernetes

Deployed a containerised application using Kubernetes for scalability and self-healing. Built lightweight Docker images using Alpine Linux to minimise the resource footprint from 900MB to under 130MB. Managed deployments, scaling, and self-healing via Kubernetes manifests. Configured load-balanced traffic routing using Kubernetes Services.

KubernetesDockerAlpine LinuxK8s ManifestsServicesLoad Balancing
CI/CD, Jenkins, DigitalOcean
Jenkins CI/CD Pipeline on DigitalOcean

Set up Jenkins on a DigitalOcean droplet, configured SSH key-based authentication between the Jenkins server and a Node.js application server, and built a pipeline that deploys and restarts the app via PM2 on every push to master. Integrated GitHub webhooks for automatic triggering.

JenkinsDigitalOceanSSHPM2GitHub WebhooksUFW
GitHub Actions, Automated Deployment
GitHub Actions Deployment Workflow

Automated code deployment and PM2 application restarts on DigitalOcean droplets via GitHub Actions, triggered on every push or PR merge to master. SSH key configured via GitHub secrets. The pipeline checks out code, installs dependencies, and restarts the app in one run.

GitHub Actionsappleboy/ssh-actionPM2DigitalOceannpm
Ansible, Server Provisioning
Ansible Playbook for Automated Node.js Server Provisioning

Wrote an Ansible playbook that fully provisions a DigitalOcean Ubuntu droplet in one command. Creates a non-root user with sudo privileges, installs Node.js via NVM, installs PM2 globally, authenticates GitHub CLI, clones the application, configures 4G swap space, and starts the app.

AnsibleNVMPM2GitHub CLIAnsible VaultUbuntu
MariaDB, SSL, Python
MariaDB SSL Hardening with Python Backup and Security Monitoring

Set up SSL/TLS on a MariaDB instance using Let's Encrypt via Certbot. Built a Python backup script using Mariabackup with Slack webhook notifications on success or failure. Added failed login monitoring alerting when attempts exceed a threshold within a five-minute rolling window.

Personal highlight: One of the first projects that showed me how much a small, well-written script changes the daily experience of an ops team.
MariaDBLet's EncryptPythonMariabackupSlack APIpymysqlUFW

// automation portfolio

40+ workflows built.
Real problems solved.

Shipped across three companies in affiliate marketing, digital agency operations, and healthcare staffing. Every workflow includes full documentation and handoff notes so your team owns it completely after delivery.

40+
Total workflows
Platforms
GHLn8nApifyOpenAI
Lead Gen
Growth Assessment to Lead Qualification

Reads form responses covering revenue, budget, urgency and decision-maker status, then auto-routes every lead into Hot, Warm, or P3. Each bucket gets its own pipeline stage, tag, and nurture sequence. Eliminated all manual lead sorting.

GHLWebhooksBranching logic
Lead Gen
7-Day SMS and Email Lead Sequence

Sends up to 3 SMS messages and 1 email per day for 7 days. A stop-on-reply check fires after every single message so the sequence halts the moment a lead responds. Prevents over-messaging and keeps conversations human.

GHLSMSEmailStop-on-reply
Nurture
24-Week Affiliate Coaching Journey

A full 6-month automated coaching sequence for new affiliate partners covering personalised onboarding, weekly email content, and milestone tracking. Delivered without any manual steps over the entire period.

GHLEmailSMSMilestones
Onboarding
Client Onboarding and 90-Day Lifecycle

Form submission triggers the welcome sequence, internal alerts, milestone scheduling, and a 90-day review setup. Zero manual operations steps from intake through to the three-month check-in.

GHLEmailSurveysInternal alerts
Lead Gen
LinkedIn and Instagram Lead Gen with Apify and n8n

Automated prospecting pipeline using Apify actors to pull targeted profiles from LinkedIn and Instagram, fed into n8n for enrichment and CRM sync. Reduced manual prospecting time to near zero.

Apifyn8nLinkedInCRM sync
Sales
Proposal Follow-Up Sequence

A timed follow-up sequence that fires after a proposal is sent. Stop-on-reply at every step means the sequence halts immediately when a lead responds. Replaced a fully manual, easily forgotten follow-up process.

GHLEmailSMSPipeline stages
Sales
Partner Commission Workflow

Automated commission calculation and notification for affiliate partners. Tracks events, calculates payouts, and notifies the right people, replacing a fully manual process that previously took hours each week.

GHLPipeline stagesEmail
Recruitment
Full-Cycle Recruitment Pipeline

End-to-end recruitment automation for a healthcare staffing client covering application intake, auto-screening, rejection routing, interview scheduling, and status updates across every stage of the funnel.

GHLEmailSMSPipeline stages
Operations
Form Tag Trigger Chain

Six single-purpose workflows, one per form, each catching a submission and applying the correct tag. These are upstream dependencies for the entire automation stack and must stay published at all times or downstream workflows stall silently.

GHLTagsUpstream deps

// technical writing

I document what
I actually build.

Every article includes what broke, how I fixed it, and why. Not just the happy path.

Cloud, AWS
Deploying a Node.js App on AWS with Terraform: VPC, EC2 and NLB

Full Terraform walkthrough provisioning a production AWS environment. Includes the NLB vs ALB debugging story and resolution.

Terraform, AWS, Node.js
Cloud, Amplify
Building a Full-Stack App on AWS Amplify

React and TypeScript with AppSync, DynamoDB, Cognito auth, and GitHub CI/CD. Every issue documented including the aws-exports.js build failure.

AWS Amplify, React, TypeScript, GraphQL
CI/CD, Jenkins
Streamlined Jenkins Deployment for DigitalOcean

Step-by-step Jenkins setup on DigitalOcean with SSH key authentication and an automated Node.js deployment pipeline.

Jenkins, DigitalOcean, PM2
GitHub Actions
GitHub Actions Workflow for a Node.js Application

Automated deployment and PM2 restarts on every master branch push. Full workflow file walkthrough included.

GitHub Actions, SSH, PM2, DigitalOcean
Database, Python
MariaDB Backup Script with Python and Slack Notifications โ˜…

A Python script using Mariabackup to automate database backups with real-time Slack alerts on success or failure. One of my favourite builds.

Python, Mariabackup, Slack API
Security, MariaDB
SSL Encryption on MariaDB with Security Monitoring

SSL/TLS setup using Let's Encrypt, remote access configuration, and Python monitoring scripts for failed login alerting.

MariaDB, Let's Encrypt, pymysql, UFW
Security, Linux
Fail2ban SSHD Configuration for Brute Force Protection

Configured Fail2ban on Ubuntu and verified with a live Kali Linux brute-force simulation to confirm banning works correctly.

Fail2ban, Ubuntu, SSH, Kali Linux
Cloud, AWS SSM
Windows Server Administration via AWS Systems Manager Fleet Manager

Full Windows Server administration without RDP: static IP, hostname, user groups, shared folders, and automated patch scheduling.

AWS SSM, PowerShell, Windows Server 2019
Cloud, E-commerce
PrestaShop on AWS EC2 with Amazon RDS

Full PrestaShop deployment on EC2 with RDS backend. PHP 7.4 compatibility and MySQL 8 syntax errors documented with resolutions.

AWS EC2, RDS, PHP 7.4, Apache

// work history

Where I've shipped things.

2025 โ€” Present
Upskayl
Remote
Automation Workflow Specialist
  • Designed and deployed 20+ GHL workflows covering lead qualification, nurture chains, client onboarding, 90-day lifecycle management, and partner commission automation.
  • Implemented a 24-week automated affiliate coaching journey delivering personalised milestone content without manual intervention over the full 6-month period.
  • Built a full-cycle recruitment automation pipeline for a healthcare staffing client covering intake through offer stage.
  • Established idempotency patterns, stop-on-reply logic, and end-to-end testing standards that became the default for all workflow builds on the team.
  • Documented every workflow with full logic maps, trigger explanations, and handoff notes so the team could maintain, audit, or extend any automation independently.
โ†ณ GoZtartUp ยท Affiliated client under Upskayl
  • Built 20+ automation workflows for GoZtartUp's internal digital agency operations including lead generation sequences, proposal follow-ups, appointment reminders, survey flows, and email warmup management.
  • Integrated OpenAI into GHL for AI-assisted email drafting. Identified tone inconsistency risks during testing and scrapped auto-send. Applied those lessons to all subsequent AI workflow designs.
  • Created 6 tag-trigger utility workflows forming the upstream dependency chain for the entire automation stack. Documented their role so any team member could maintain them independently.
  • Produced full process documentation and handoff materials for every workflow built, ensuring the team could operate and extend automations without knowledge gaps after handover.
GoHighLeveln8nApifyOpenAI
Aug 2024 โ€” Oct 2024
Go-mailer
Remote, Internship
DevOps Engineer Intern
  • Implemented SSL encryption for secure database communications across production environments.
  • Automated MongoDB backups via Python scripts, improving data resilience and providing a reliable recovery fallback for the team.
  • Configured MariaDB backup alerts with Slack and email notifications for real-time monitoring of backup success and failure.
  • Designed and developed secure cloud system architectures aligned with established security standards.
  • Applied Ansible configurations for environment maintenance and integration troubleshooting.
  • Packaged and supported deployment releases using GitHub Actions CI/CD pipelines.
  • Documented all processes in full to maintain a robust information-sharing system and enable a clean handoff for whoever joins the team next.
PythonAnsibleGitHub ActionsMariaDBMongoDBSlack API

// education

Academic background.

๐ŸŽ“
AltSchool Africa
Diploma in Cloud Engineering
June 2023
๐Ÿ“˜
Continuous learning
AWS, Terraform, Kubernetes, Automation Engineering, GitOps, Observability
Ongoing. Documented in the projects and writing above.

// open to work

What I'm looking for.

A global engineer. Ready to work anywhere.

I am a Cloud DevOps and Automation Engineer based in Lagos who builds for teams anywhere in the world. I work comfortably across time zones, communicate clearly in writing and on calls, and deliver production-grade work remotely. If your team needs someone who can set up infrastructure, ship CI/CD pipelines, or automate the processes slowing you down, I am ready.

Cloud DevOps Engineer Automation Workflow Specialist Remote Hybrid Contract or full-time EU, UK, US, Canada or anywhere
Get in touch

// contact

Let's build
something together.

Whether you are hiring for a DevOps role, need an Automation specialist, or want to discuss a contract engagement, I am open to the conversation. I respond to every serious message within 24 hours.

April 2026. Available for serious offers only.