In Spring 2024, as part of my BIT studies at Haaga-Helia, I led the end-to-end development of Joo-marketti — a responsive e-commerce platform. This was my first time owning a full project from requirements to deployment, and it taught me more than any individual lecture could.
What we built
Joo-marketti was a product marketplace — users could browse a catalogue of 50+ items, view product details, and complete purchases. The stack was PHP for server-side logic, HTML5 and CSS3 for the front end, MySQL for the database, and WordPress as the content management system.
As project lead, I was responsible for the overall architecture, the backend PHP logic, database design, and the deployment pipeline. I also coordinated the team and made sure we hit our milestones.
The backend: PHP and MySQL
The core of the site was a PHP application that handled product queries, user sessions, and the checkout flow. I optimised the database queries early on — with 50+ products and multiple filter options, a slow query would make the whole catalogue feel sluggish. Indexing the right columns and avoiding N+1 query patterns made a noticeable difference.
WordPress handled the content management side — adding products, updating descriptions, managing images. This let non-technical team members update the catalogue without touching code.
DNS and SSL deployment
Getting the site live was its own challenge. I set up the DNS records — an A record pointing the domain to our server, and a CNAME for the www subdomain. Then I deployed an SSL certificate to enable HTTPS.
This was my first hands-on experience with DNS management, and it demystified a lot. Understanding how A records, CNAME records, and TTLs work made later infrastructure work — including AWS Route 53 configuration — much easier to reason about.
The database migration
Migrating the production database from the development environment to the live server without losing data was the most stressful part of the project. I ended up writing a migration script that exported, transformed, and re-imported the data with validation checks at each step. We achieved 100% data integrity — no records lost or corrupted.
What I took away
Leading a real project — with deadlines, a team, and actual users — is completely different from coursework exercises. You have to make decisions quickly, communicate clearly, and own the outcome. The technical skills matter, but so does project management, documentation, and staying calm when things break at inconvenient times.
Joo-marketti gave me confidence that I can take a project from nothing to a live, working product. That confidence is something no exam can give you.