For nearly six years, I was one of 12 on Vancouver Film School’s marketing team, serving 15+ departments, and I owned the CMS and front end of its main Drupal website. I built accessible landing and program pages from approved designs or from my own reusable components, structured CMS content for SEO, built HTML emails, and documented workflows for non-technical teammates.
The site dated from the early 2000s, and older pages did not reflect the current branding. It loaded slowly, with oversized images and videos that had no alt text or descriptive file names. WordPress ran inside Drupal, and the CMS carried years of legacy fields.

Crowded navigation: over the years, the navigation bar had filled with items that crowded out the links visitors needed most.

Static Faculty Page: The faculty page was a single static page listing every faculty member. It was heavy to load and heavy to edit, and it was not linked to the programs.
I built new CMS templates for each content category as it was needed: the VFS Podcast, VFS Online Industry Talks, paid-ads landing pages, and a new blog page. When the school moved online in 2020, I rebuilt the navigation bar layout around online classes and content, and I changed it again as the school’s needs shifted.

New and improved navigation bar: slimmer, with secondary elements removed to give more room to the links that matter most such as online programs and events.

Dynamic Faculty Page: faculty directory categorized by role hierarchy using Drupal Views module. I replaced a single overview page listing every faculty member with a faculty page linked to each program, built with the Drupal Views module and organized by role hierarchy.

VFS Podcast: new feature launched in 2020, CMS template for the VFS Podcast. Episode details pull in automatically from Spotify, so new episodes appear without manual entry.
CMS Structure: Alongside maintaining brand standards, I reorganized the Drupal CMS around how it was used day to day, as its main editor. I streamlined content types, simplified field groups, and relabeled backend fields, so updates and new pages took less time to build and publish.Alongside maintaining brand standards, I reorganized the CMS structure to make it more intuitive and efficient for content editors and marketing teams. This involved streamlining content types, simplifying field groups, and improving backend labeling to reduce friction in day-to-day updates.
Landing pages: I built landing pages in Drupal from reusable components, working from approved designs or, where none existed, from the brand guidelines and the components I had set up. Working with the design and marketing strategy teams, I structured each page around its campaign goal. Reusable components cut landing-page build time by roughly two thirds (estimate), and kept every page on brand.

The BLOG: relaunched on a new CMS template, built with Drupal Views to show featured posts, image, and an excerpt of each article.




Landing Page (Event Campaign): Built the landing page from reusable components and followed up with email campaigns. Registrations met the 30% target.




Application Portal: We redesigned the old registration page to match the brand, tested the flow with cross-functional teams, and fixed the issues from what they found.
Across 45 monthly Search Console reports (2020 to mid-2024), the site’s organic Google impressions never fell below 500K a month rose about 47%, from roughly 658K to 968K a month, comparing the first and last 12 months of data. Clicks eased about 10%. I maintained the site’s CMS structure, metadata, and templates throughout, though search performance also reflects the wider marketing team’s work.
Reusable landing page components cut page build time by roughly two thirds (my estimate). When I left at the end of August 2024, I handed the site off with documentation covering how each template behaves and what to watch for.