About the client
A company that runs large business events, including multi-day conferences spread across several venues.
EM2 is an enterprise platform for running large, complex events. One event can last several days, use several venues and include thousands of attendees and sessions.
Organizers and admins use it to plan events, register people, arrange sessions and pair attendees for meetings. OSKI works across the platform's services, integrations and cloud setup.
What had to be solved
Scale and scheduling were the hard parts.
- Turn attendee preferences into workable schedules across many sessions and venues.
- Match attendees by questionnaire answers without manual sorting.
- Connect to outside systems, including Zoom and the Crimson and Positive ecosystems.
- Stay secure and responsive under peak event load.
How the team built it
The back end is a set of .NET microservices. They communicate through REST calls and Azure Service Bus messages, while Azure Functions run event-driven background jobs. The core uses Clean Architecture, CQRS through MediatR and EF Core. Organizers work in a React 18 and TypeScript app built with Ant Design.
EM2-Crunch takes raw attendee preferences and produces optimized schedules. A second service, EM2-QuestionnaireService, reads questionnaire answers and pairs attendees during scheduled background runs.
EM2-ZoomService manages webinars and meetings across several Zoom accounts and collects analytics. Inbound and outbound services connect Crimson, with a stub service for integration tests. An inbound link to Positive uses Azure AD auth and supports multiple entities.
Azure AD B2C with JWT tokens, managed identities and Key Vault protect access. Terraform and Azure DevOps pipelines deploy isolated Dev, Staging and Prod environments, and Application Insights tracks per-service health checks.
Recent releases added Excel import of conference timings that creates seminar sessions with a line-by-line validation report, bulk inserts with automatic prefixes and attendee status history. A documentation and business-logic audit ran before release.
What changed
EM2 gives organizers one system for the full event lifecycle.
- Core features run across eight microservices with clear domain boundaries.
- Background services generate schedules and attendee matches.
- Zoom, Crimson and Positive connect through dedicated integration services.
- Azure Functions and asynchronous Service Bus messaging let the platform scale out for peak load.
Inside the product






