Kjell Hysjulien

AWS Certified • Cloud Engineering Technology Graduate

About Me

I’m a Cloud Engineering Technology graduate with hands-on experience in AWS, Terraform, and GitHub Actions. I’ve built and deployed infrastructure from scratch—including hosting this portfolio site with CI/CD automation and DNS configuration through Route 53.

My goal is to step into an IT support or help desk role where I can gain real-world experience with systems and users, while continuing to build toward a long-term path in cloud and DevOps. I bring strong attention to detail, a working knowledge of infrastructure and automation tools, and a growing track record of self-driven technical projects.

During my time at Dunwoody, I was honored with the Academic Excellence Award for the Computer Technology department, and was featured for taking a hands-on, problem-solving approach to my capstone and personal projects.

Read the Dunwoody Feature

Projects

AWS-Hosted Portfolio Site

I built and deployed this portfolio site to gain hands-on experience with real AWS infrastructure and modern DevOps practices. The site is hosted on S3, served securely through CloudFront, and mapped to my custom domain using Route 53. I manage the entire setup with Terraform, and the deployment process is fully automated using GitHub Actions with OIDC authentication.

This project gave me practical experience with DNS configuration, TLS certificates, CI/CD pipelines, and infrastructure as code—all managed from my local machine. It also taught me how to secure deployments using temporary credentials and keep infrastructure reproducible from scratch.

  • Infrastructure as Code: Used Terraform to define and deploy S3, CloudFront, Route 53, and ACM resources
  • CI/CD Automation: Configured GitHub Actions to sync changes to S3 and invalidate CloudFront cache on every push
  • OIDC Authentication: Set up GitHub’s OpenID Connect provider to assume an IAM role without storing AWS credentials
  • Custom Domain & TLS: Managed DNS records and provisioned a certificate through ACM for HTTPS access

View the code + full setup guide

Pi-hole on Raspberry Pi with Docker

I deployed a DNS filtering and ad-blocking system using Pi-hole in Docker on a Raspberry Pi 3 running Raspberry Pi OS Lite. This project gave me hands-on experience with containerization, Linux networking, persistent storage, and home network integration.

I started by flashing Raspberry Pi OS Lite with custom SSH, locale, and hostname settings, then installed Docker and Docker Compose. I created a containerized Pi-hole setup using network_mode: host for full DNS compatibility, mounted persistent config volumes, and locked down the system for privacy and stability. Finally, I configured my ASUS router to route all DNS traffic through the Pi-hole instance and tested full functionality across devices.

  • Raspberry Pi Prep: Flashed 32-bit Pi OS Lite with custom SSH access, static hostname, and key-based auth
  • Dockerized Setup: Ran Pi-hole in Docker Compose using host networking and mounted persistent volumes
  • Network Integration: Configured ASUS router to use the Pi-hole as primary DNS for WAN and DHCP
  • Privacy & Access Control: Disabled upstream fallback, limited logging, secured web UI, and verified admin-only access

View the code + full setup guide

Kubernetes Cluster with Multipass & Flannel (macOS)

I built a working Kubernetes cluster from scratch using Multipass, Kubeadm, and Flannel CNI on my macOS system. The goal was to get real experience standing up a multi-node cluster, configuring container runtimes, managing networking, and learning cluster lifecycle tasks from end to end.

The setup included one control plane node and one worker node, each running in its own Ubuntu 24.04 VM. I used Kubeadm for initialization, installed Containerd as the runtime, and configured system settings manually to support pod networking. I also deployed a test workload, backed up cluster resources and etcd state, and scripted a full teardown process using Multipass.

  • Multi-Node Cluster: Launched and configured isolated VMs with Multipass to simulate real node behavior
  • Kubeadm Setup: Initialized the cluster manually with pod CIDR, Flannel CNI, and secure node join process
  • Container Runtime: Installed and configured Containerd with systemd cgroups for production parity
  • Backup & Teardown: Created full YAML snapshots, etcd backups, and automated cluster cleanup

View the code + full setup guide

Skills

  • Infrastructure as Code: Writing and managing IaC with Terraform
  • CI/CD Pipelines: Automating deployment workflows with GitHub Actions
  • Cloud Architecture: Building and securing static websites on AWS
  • Containerization & Orchestration: Deploying Docker containers and Kubernetes clusters
  • Networking & Security: DNS, TLS, IAM roles, SSH, subnetting, firewalls
  • System Administration: Linux CLI, Windows Server basics, user access management
  • Troubleshooting: Diagnosing network issues, service logs, and deployment failures

Tools & Platforms

  • Cloud: AWS (S3, CloudFront, Route 53, IAM, ACM), Azure (basic), GCP (basic)
  • IaC: Terraform, Terraformer
  • CI/CD: GitHub Actions (OIDC, deployment workflows)
  • Containers: Docker, Docker Compose, Kubernetes (kubeadm, containerd, Flannel)
  • Scripting: Bash, PowerShell, Python (basic)
  • Operating Systems: Ubuntu/Linux, Windows Server
  • Version Control: Git, GitHub

Education

A.A.S. in Cloud Engineering Technology
Hennepin Technical College — 2023

Completed coursework in AWS, Terraform, Linux, networking, scripting, CI/CD pipelines, and infrastructure automation.

Get in Touch