Postgrad Solutions

Giving postgraduate students a more flexible and reliable search facility, so they can easily find course information, especially at busy application times.
  • Django
  • Elasticsearch
  • DjangoCMS

The feedback

Wildfish has been brilliant to work with over the last 3 years since we appointed them. We get the benefits from working with a smaller company that really cares about service for individual customers but also receive extremely high quality work from very experienced professionals. Our needs are listened to carefully and we have great solutions suggested taking into consideration both our budgets and priorities. They have been flexible, creative, reliable, trustworthy and also a pleasure to work with which makes it all the better.

Katherine Mann
Postgrad Solutions

The challenge

  • Rebuild an existing platform with additional functionality, and an extended search facility that supports multiple data sources
  • Make sure it can cope with prolonged large spikes in traffic during application periods
  • Add a comprehensive system to measure visitors’ engagement
  • Attention to SEO is key
  • 1000s of pages of content from two websites need to be migrated across

The solution

A content management system and course database with an optimised search interface, which can return results quickly while under high volumes of traffic.

The old site's simple search interface was powered by a tremendous amount of business logic, which had been honed over the years so visitors can see the results they expect. This meant that while we rebuilt the platform to handle large amounts of data and traffic, it was important to accurately replicate this business logic. Despite this complexity we managed to optimise our code to the point where the system was able to return results quickly, even when under high load.
We selected Google Ad Manager as the main platform to manage adverts on the site, as it’s the industry standard with built-in support for common third party advertiser tags. We created a tool to import the current advertising from the old site to the new system. Since Google Ad Manager didn’t provide all the functionality we needed for tracking engagement, we added a bespoke tracking system to measure activity on content pages. The client’s mailing list for candidates has some unique requirements and constraints, so we built a custom tool to manage and send these emails, using AWS SES to ensure delivery. This is integrated with the internal tracking tool to measure the performance of the mailing list content.
We chose Elasticsearch to perform the search itself, as it’s able to handle large amounts of traffic and data, while Django CMS is the platform for managing content on the site. It’s one of the most popular CMS packages for Django, so we were confident it could provide long-term support for the lifespan of the new site.
The course database needs to deal with multiple data sources, each one arriving in a different file format and structure, with varying levels of consistency. We brought them together by building a series of importers and administration tools to manipulate the data into a common format, standardising any differences. To avoid the cost of doing it manually, we built an import tool to automatically migrate the several thousand pages of content from the old sites. These were still live and being continually updated, so by designing the importer to be idempotent, we could safely rerun it repeatedly, always giving us the latest data.
We took over the maintenance of the client's existing sites whilst we built their replacement. The new system was deployed separately on AWS, allowing for testing and staff training. Once the project functionality had been signed off, we re-ran our importers one last time to make sure the new site was up to date with the latest content and advertising. The site was then seamlessly switched over, with no downtime for end users.

The results

Postgraduate students can find the information they need quicker and easier than ever before. There’s greater insight into user engagement with improved accuracy, which is appreciated by advertisers. The optimised search performs well during high levels of traffic, which has improved user engagement, and has helped to drive advertiser interest year on year.

We continue to support and extend this site with additional functionality. Recently, we restructured search results to reflect changes in the data sources, and implemented various features across the site to make it even easier for students to find the information they want.

DjangoCMS
elasticsearch
Django

We've solved challenges for all these businesses

  • Arup inspire
  • BMA
  • Google
  • Tide
  • Lloyd's
  • BBC

Contact us

Send us your business challenge, and we'll get right back to you.

Let's go