There is a distinct leap in a developer's journey between getting a project to run on localhost and successfully serving it to the rest of the world. When it came time to host my projects—including this very portfolio at abdulmenem.com—I had a choice. I could take the easy route and use a managed hosting provider, or I could rent a Virtual Private Server (VPS) and build the infrastructure myself.

Naturally, I chose the latter. I wanted to understand the full lifecycle of deployment.

I provisioned a Contabo VPS, giving me a blank slate with a fresh Linux installation. Staring at that blinking cursor via an SSH terminal for the first time was both intimidating and exciting. As a mechatronics and computer science student, I am used to building systems from the ground up, so I treated the server like a new hardware project.

My first priority was security. Before I even thought about web servers, I locked down the perimeter. I disabled root password authentication, configured secure SSH keys, and set up a strict firewall to ensure only essential ports (like HTTP, HTTPS, and SSH) were open to the outside world. Learning to harden a server taught me that deployment isn't just about making a website visible; it's about making it resilient.

Next came the web architecture. I configured the environment to serve my portfolio and route traffic efficiently. Setting up the DNS records to point my domain to the server's IP address and securing the connection with an SSL certificate was a rewarding milestone.

The best part of this setup is the deployment workflow I’ve designed. Because I daily drive Fedora KDE, I integrated my VPS directly into my local environment. Using the Dolphin file manager, my server is natively mounted via SFTP. Pushing site updates, tweaking configurations, or deploying entirely new projects is as frictionless as moving files around on my local machine.

Managing my own server architecture has been a massive learning curve, but it has completely demystified the backend of the web for me. It’s one thing to write the code; it’s an entirely different, highly satisfying thing to build the house it lives in.