Alan McGinnis

Alan McGinnis

Problem Solver & Project Leader

Behind the Build: Employee Portal Makeover

An interview-style project spotlight diving into the transformation of an outdated employee portal into a modern web application for a mechanical contracting company.

Project Overview

Role

Full-Stack Developer & Project Lead

Timeline

6 weeks

Topics

Laravel 12 Vue.js 3 Inertia.js Tailwind CSS MySQL Redis Cursor AI

The Challenge: The client's employee portal had been running their mechanical contracting business for years, but it was becoming a liability. No user authentication meant everyone had the same access level, administrators had to edit the database directly to make changes, and the interface was hard to read and navigate on mobile devices.

The Solution: I built a modern Laravel and Vue.js frontend that could work with their existing database, preserving all their historical data while adding proper user roles, intuitive admin interfaces, and mobile-friendly design so field teams could use it comfortably on their phones.

Before: The Legacy System

  • ❌ No user authentication (everyone shared the same access)
  • ❌ Administrators manually edited database records
  • ❌ Poor mobile experience (hard to read and navigate)
  • ❌ No user feedback during operations
  • ❌ Security vulnerabilities throughout
  • ❌ Brittle homegrown architecture
Picture of Employee Portal before makeover

After: Modern Web Application

  • ✅ Role-based authentication with proper security
  • ✅ Intuitive admin interfaces for all data management
  • ✅ Mobile-friendly design that's easy to use on phones
  • ✅ Real-time feedback and validation
  • ✅ Automated CSV import with rollback capabilities
  • ✅ Modern Laravel/Vue.js architecture
Picture of Employee Portal after makeover

Developer Interview

How did this project land on your desk?

A friend kindly thought of me and connected me with this project, believing it would be a great fit for my skills and interests—and I'm really proud of the end result. The client had been using this system for years, but it was starting to hold back their business. I knew a traditional rebuild would price them out, but I thought I could deliver something solid using AI tools to speed up development without compromising on the important stuff like security and user experience.

What made the original system so problematic?

The biggest issue was that there was no user authentication at all. Everyone—field workers, managers, executives—logged in with the same access level. No user roles, no data protection, nothing. And when administrators needed to make changes, they had to write SQL queries directly in the database. The interface wasn't mobile-friendly either, so when crews were out in the field, it was really difficult to read and navigate on their phones.

Any unexpected challenges during the modernization?

The trickiest part was building a modern system that could work with their existing database while preserving all their business logic. I had to understand not just their data structure, but years of accumulated business rules and workflows embedded in the old system. The new Laravel backend needed to handle their legacy data properly while the Vue.js frontend made it actually usable. I spent a lot of time mapping out how everything currently worked and what data relationships existed before writing any code.

How did AI fit into your development workflow?

Cursor AI made a huge difference on this project. It helped with a lot of the repetitive work—boilerplate Laravel code, Vue components that followed similar patterns, and mapping out the database relationships. That freed me up to focus on the complex part: making sure the new system could properly handle their legacy data while adding modern functionality. What normally would have taken months got done in six weeks. I learned to use AI for the grunt work while keeping tight control over the data handling and anything security-related. You still need to know when to trust the AI and when to step in yourself.

Tell me about your partnership approach with the client.

I tried to be more of a technology partner than just a contractor. Whenever we had to make big decisions, I'd explain the options in business terms so they could understand the trade-offs. We had regular check-ins and I'd show them working prototypes so they could give feedback early instead of waiting until the end. The goal wasn't just to hand over code—I wanted them to actually understand and feel comfortable with their new system. I trained their team on the admin tools and wrote clear documentation for ongoing use.

If this project were a home renovation show, what would be the big "reveal" moment?

Definitely the CSV import system. They could now upload a spreadsheet to update their data instead of writing SQL queries, which streamlined their workflow significantly. Combined with the 24-hour backup and rollback feature, they finally had peace of mind about making changes to their own data.

Most satisfying improvement from a technical perspective?

Watching them take control of their own data management. The new interfaces made their existing data management skills more efficient—instead of managing SQL queries, they could focus on the actual business decisions. The role-based authentication meant the right people got the right access levels, and everything worked properly on mobile devices. The system stopped being a bottleneck and started actually supporting their business growth. Seeing them confidently manage their operations knowing they weren't limited by their technology anymore—that was really satisfying.

Client Feedback

"I have to tell you that you're excellent at what you do, and you're going to go far with this. When you start growing your business and need investors, look me up! It's clear that you put serious thought into everything you build and make it as simple as possible for the end user. Most sincere kudos!"

— Mechanical Contractor


This project was a great reminder of how the right technology choices can transform a business workflow. Taking a manual, error-prone process and turning it into something that works seamlessly on mobile devices made all the difference for this client's field operations.

Thanks for reading about this project! If you have similar challenges with business processes that could benefit from custom web applications, I'd love to hear about them.