Back to homepage
B2B E-learning Platform

Bitesize Learning

Bitesize is a commercial e-learning platform built for organizations that needed to deliver and manage structured training at scale. It supported a mix of language learning and corporate training use cases, with clients ranging from smaller organizations to major names such as UEFA.

My work covered both backend and frontend development across the platform, including course delivery, user and content management, progress tracking, reporting, and client specific functionality.

A large part of the job was adapting the system around real customer requirements, maintaining an established production product, and delivering features that had to work reliably for different types of organizations and training programs.

RoleFull-Stack Engineer
StatusClient Work
TypeE-learning / B2B SaaS
E-learning Platform Moodle Custom Moodle Development Enterprise User Management Learning Workflows REST API Integrations Full-Stack Development
Most of the platform is private B2B software, so screenshots are not shown here. The public course storefront is available through the live site link above.
Problem

Bitesize needed a learning platform that could serve multiple business clients from one system, while still giving each client their own users, courses, permissions, reporting, and branded experience.

Standard LMS functionality was not enough. Different clients had different training requirements, user structures, reporting needs, and access rules, so the platform had to support a lot of variation without turning every new client into a separate system.

The important part was making all of that manageable at scale: companies needed to know who had completed what, administrators needed clear control over users and content, and the platform had to stay reliable as more clients, courses, and custom requirements were added.

What I Built
  • Primary development across the platform: Built roughly 80% of the Bitesize learning platform, working across the Moodle backend, frontend, administration, client specific functionality, and ongoing product development.
  • Custom Moodle development: Extended Moodle well beyond its standard functionality with custom features, business logic, and platform behavior built around Bitesize's B2B model.
  • Multi client user management: Built functionality for managing organizations, users, roles, permissions, course access, and different client structures within the same platform.
  • Learning and completion workflows: Built and extended course delivery, enrolment, progress tracking, completion records, reporting, and the workflows administrators used to manage training.
  • Client specific features: Turned individual customer requirements into reusable platform functionality where possible, while still supporting cases where a client needed something genuinely specific to their organization.
  • Reporting and administration: Built tools for managing users, courses, client accounts, completion data, and the operational information needed by Bitesize and its customers.
  • White label and client configuration: Supported different client branding, configurations, access rules, and onboarding requirements without needing a separate platform for every customer.
  • Ongoing production development: Maintained and expanded a live B2B system, fixing bugs, handling edge cases, and adding new functionality as the product and its customer base evolved.
Hard Parts

Extending Moodle without fighting it. Moodle gave us a lot out of the box, but Bitesize needed functionality far beyond a standard LMS setup. A big part of the work was understanding where Moodle could be extended cleanly and where custom development was needed, without making future upgrades or maintenance unnecessarily painful.

Supporting very different clients in one platform. Different companies wanted different user structures, permissions, reporting, branding, course access, and workflows. The challenge was supporting those differences without turning the platform into a collection of one off client hacks.

Keeping learning and reporting data correct. Completion status, enrolments, permissions, reporting, and access rules all depend on each other. Bugs in those areas could mean the wrong person seeing content, missing completion records, or incorrect reports being sent to a client, so changes had to be handled carefully.

Building for real organizations, not demo traffic. The platform was used by large clients, including UEFA related users, so features had to work with real numbers of users, courses, reports, and client specific data. Problems that would barely show up in development could become obvious very quickly in production.

Tech Stack
PHP Moodle JavaScript SQL / MySQL REST APIs Linux HTML / CSS
Business Value
  • Allowed Bitesize to serve large business clients from one platform: The same system could support different organizations, user structures, course access rules, reporting needs, and branding without requiring a separate product for each client.
  • Supported major client relationships: The platform was used for enterprise training, including UEFA related usage, so new requirements and client specific features could be delivered without disrupting the wider product.
  • Made client onboarding and customization easier: New organizations could be configured around their own users, permissions, courses, branding, and reporting needs while still remaining part of the same core platform.
  • Kept training data dependable: Reliable enrolment, completion, access, and reporting data meant clients could actually use the system to manage and track training rather than treating it as just a content delivery site.
  • Created a platform that could grow with the business: Instead of building one off solutions for every contract, much of the custom work became reusable platform functionality that could support future clients as well.

Let's build something useful.

I'm open to remote contract, part-time or full-time opportunities where the priority is simple: understand the system, find the bottleneck, and start shipping.

Download CV Send message