DevOps & Deployment Automation

Ship faster.
Break nothing.
Scale with confidence.

I help early stage startups automate how their software gets tested and deployed — so your team ships new features faster without breaking things for real users.

7+
Production-ready systems built
0
Manual deploys needed
100%
Automated rollback coverage

End-to-end deployment automation

Systems designed with operational reliability in mind.

DEPLOYMENT SYSTEM

CI/CD Pipeline Setup

Automated testing and deployment on every code push. No more manual deployments. No more "works on my machine."

CONTAINER RUNTIME SYSTEM

Docker & Containerization

Your app runs identically in development, staging, and production. Consistent environments, consistent results.

SERVICE ORCHESTRATION SYSTEM

Multi-Service Systems

Connect your app, database, and services into a reliable system with Docker Compose. Proper networking and config management.

ENVIRONMENT MANAGEMENT SYSTEM

Staging & Production Environments

Test before it reaches users. Separate environments with approval gates so bad code never reaches production automatically.

Infrastructure designed for safe, scalable deployments

Project 07
Docker GitHub Actions Python Flask EC2

Real Client Simulation — DevOps on a Stranger's Codebase

Problem: Real client work means inheriting code you did not write — no documentation, missing dependencies, zero DevOps setup. You read it, understand it, and build the deployment layer around it.

  • Took a real open source Flask warehouse management app and added the complete DevOps layer — Dockerfile, Docker Compose, four job GitHub Actions pipeline, staging and production environments with approval gate
  • Discovered and fixed three undocumented gaps in the original codebase — missing dependency, incomplete database schema, and unmerged migration scripts
  • Solved data persistence with Docker bind mount volumes so user data survives every container restart and deployment
View on GitHub →
Project 06
Staging Production Approval Gates GitHub Environments

Staging & Production Environment Separation

Problem: Deploying directly to production on every push means users are exposed to every bug. There is no safe place to test before it's live.

  • Two isolated EC2 environments — staging deploys automatically on every push, production requires manual approval
  • Single Docker image built once and deployed identically to both environments — no drift between staging and prod
  • Per-environment secrets via GitHub Environments — staging and production have completely isolated credentials
View on GitHub →
Project 05
Docker Compose PostgreSQL Flask API EC2

Multi-Container System with Database

Problem: Real apps need databases. Running an app and a database together in production requires careful networking, configuration, and startup ordering.

  • Flask API and PostgreSQL running as separate containers connected via Docker Compose networking
  • Containers discover each other by service name — no hardcoded IPs, no fragile config
  • All secrets injected at runtime via environment variables, never stored in code or images
View on GitHub →
Project 04
Docker GitHub Actions Python Flask EC2

Docker-Based CI/CD Pipeline

Problem: Deploying raw code to a server means the server must be configured for every app. One wrong dependency breaks everything.

  • Containerized a Python Flask app with Docker — server only needs Docker installed, nothing else
  • Three-job pipeline: tests run inside the container, image pushed to Docker Hub tagged with Git commit SHA, EC2 pulls and runs the image
  • Automatic rollback to previous image by SHA if health check fails after deploy
View on GitHub →

Built from first principles

Radiance IT Solution focuses on deployment automation and operational reliability — building infrastructure systems that help teams ship software confidently through automated pipelines, containerized environments, and structured deployment workflows.

Every system is approached with a focus on understanding why each component exists, not just making it function. The result is cleaner infrastructure, faster debugging, and more reliable delivery systems designed to handle operational failure gracefully.

The goal is simple: make software delivery reliable, repeatable, and scalable for teams that have more important things to focus on than deployment complexity.

W.K.V.P Randunu
DevOps Engineer
Tools & Technologies
Docker Docker Compose GitHub Actions AWS EC2 Python PostgreSQL Linux Bash Git Gunicorn Nginx

Let's talk about your system

Ready to automate your deployments?

If your team is deploying manually, has no testing pipeline, or wants to stop worrying about broken deploys — let's have a conversation.

wkvp.randunu@gmail.com