Inspiration

Inspiration Commercial paving businesses in Quebec rely heavily on local search visibility. This project required a performant web application that:

Ranks competitively for "asphalte Laval" and related service keywords Handles high traffic from mobile users (62% of paving inquiries) Processes lead forms with <1s response times

What it does

Technical Implementation Stack:

Backend: Node.js + Express.js (RESTful API architecture)

Web Server: Nginx reverse proxy (HTTP/2 enabled)

Infrastructure: Ubuntu 22.04 LTS (AWS EC2)

Templating: EJS with server-side rendering for SEO

CI/CD: GitHub Actions → Automated deployments

How I built it

Key Technical Features: ✔ 98/100 Google PageSpeed (Desktop) via:

Nginx compression + Brotli

Edge caching strategies

Lazy-loaded image galleries ✔ Zero-downtime deployments (Blue-Green strategy) ✔ Fail2Ban integration for brute-force protection

Challenges I ran into

Challenges & Solutions

  1. Dynamic Pricing Calculator Security

Problem: Form injection attempts

Solution: Rate limiting + Recaptcha v3

  1. Service Area Page Performance

Problem: 300ms TTFB on location pages

Accomplishments that I'm proud of

Fix: Implemented Redis caching for postal code queries

Technical Accomplishments Reduced bounce rate by 41% through:

Per-route code splitting

Critical CSS inlining

Achieved #1-3 rankings for 17 commercial paving keywords

100% uptime post-launch (6 months monitoring)

Future Roadmap Migrate to serverless functions for contact forms

Implement OpenStreetMap + MapLibre GL JS (replace Google Maps)

Experiment with WebPagetest private instances

Share this project:

Updates