Contents:
- What happens before the broadcast
- Call for papers: how to register for the conference and submit an application
- How the publication of a paper is organized
- Broadcast: what's under the hood
- How to combine everything in one video
- How the video gets into the OB van
- How we manage the broadcast
- How authorization works and what is SSO

Learn: How to make money on presentations
Find out more
Head of Development at JUG Ru Group with extensive experience in industry. Previously, he held positions at Alfa-Bank and the telecommunications company LaNetroZed. He specializes in full-stack development using .NET and JavaScript. He maintains the Flurl project and actively applies test-driven development (TDD) and behavior-driven development (BDD) principles. He has deep knowledge of software development and is committed to implementing best practices within the team.
JUG Ru Group has been holding conferences for nine years, combining offline and online formats. Initially, the events were held exclusively offline, but due to the pandemic, an online format was introduced. Today, JUG Ru Group successfully combines both approaches, providing programmers with a unique platform for presentations and experience exchange. Conference organizers not only create a space for communication but also actively participate in development, writing code and sharing their knowledge with participants.
At the DotNext conference, Nikolai Molchanov, Head of Development, shared details about the internal organization of processes within his team. He covered key aspects of the work, including the methodologies used to achieve high results and the tools that facilitate effective software development. Nikolay also emphasized the importance of teamwork and continuous learning to maintain competitiveness in the rapidly evolving IT industry.
- What stages does a report go through, from application to broadcast on the portal?
- Which parts of the system are responsible for what?
- What technologies are they based on?
- How does it all work together?

Head of Development at JUG Ru Group with extensive experience in the IT field. Previously, he held key positions at Alfa-Bank and the telecommunications company LaNetroZed. He is a full-stack developer specializing in .NET and JavaScript. He leads the Flurl project as a maintainer and actively applies the principles of testing-driven development (TDD) and behavior-driven development (BDD). These approaches enable the creation of high-quality and reliable code, which is the key to successful software development.
What happens before the broadcast
Three years ago, when I joined the company, I was under the impression that organizing conferences was a simple task. It was enough to open Microsoft Excel, enter the information about the talks, and host the event. However, over time, I realized that this process is much more complex and multifaceted. Organizing a successful conference requires careful planning, coordination of various aspects, and consideration of participant needs. It's important not only to gather information about the presentations but also to consider logistics, select a suitable location, provide technical support, and create a comfortable environment for speakers and participants. Experience shows that attention to detail and the ability to anticipate potential difficulties play a key role in the successful conduct of conferences.

Creating a conference is a complex and A conference is a multifaceted process. Below is a simplified diagram illustrating the key stages. First, you need to define the purpose and theme of the conference, as well as the target audience. Then, you need to select the date and location, which significantly impacts the success of the event. A crucial step is developing the program: you need to invite speakers, develop a schedule, and factor in time for discussions and breaks. Next, you need to focus on promoting the conference. Effective communication channels will help attract participants and ensure high attendance. You also need to organize registration, provide participants with everything they need, and think through the logistics. On the day of the event, clear management and technical support are essential to ensure everything runs smoothly. Finally, after the conference, it is worth collecting feedback and analyzing the results, which will help make future events even more successful.

In this text, we will discuss the key Elements that come together to create a high-quality broadcast or live presentation. These blocks play a vital role in shaping the structure of a presentation, ensuring its coherence and clarity. The correct combination of all components allows for effective communication to the audience, increased engagement, and a more memorable presentation. We will consider how each of these elements influences the perception of the material and how important their harmony is for the success of the event.
The whole process is as follows:
- the speaker submits an application;
- it is entered into a special SRM-system (Speaker Relationship Management);
- it is evaluated by the conference program committee;
- the speaker trains;
- the presentation description is posted on the conference website;
- the presentations form the conference program;
- the speaker delivers the presentation.
Let's consider each stage in detail.
Call for papers: how to register for the conference and submit an application
Previously, each conference website had a separate section for CFP (call for papers, application process). We are currently working to unify our interfaces to provide a consistent and convenient experience for all users. The application process has become simpler and more understandable.

We support the SSO (Single Sign-On) authorization system, which allows you to automatically fill in Some fields are for the speaker. This simplifies the registration process and saves time, providing a more convenient and efficient experience on our platform.
After submitting an application, it is entered into the SRM application management system. In this system, speakers have access to a personal account where they can view all their current and past applications. The interface looks like this:

In February, we began the import substitution process, which led to the need to migrate from CMS Contentful to our internal system. As part of this transition, we successfully migrated content related to 145 conferences, 3,605 activities, and 2,207 attendees. This step allowed us to optimize content management and improve user engagement, which is crucial in today's environment.
The speaker's personal account is a user-friendly ERP system that allows users to manage their biographies, edit talk descriptions, upload presentations, and update photos. The conference program committee, as well as coordinators and editors, have the ability to make changes to this information, ensuring the website remains current and accurate. This approach facilitates more effective interaction between speakers and event organizers and improves the conference attendee experience.
In today's online-offline environment, it is critical to consider the presentation format. This could be an in-person event, an online broadcast, or a recording from our studio. Travel and location selection for the on-air team also play a significant role. These aspects impact the quality and perception of the content, which, in turn, affects the success of the event. The correct choice of format and venue allows you to effectively interact with the audience and create the maximum effect from the presented material.

When the speaker updates his biography, Changes are made exclusively on the websites of the current season's conferences. The most current version of the biography remains on websites dedicated to past seasons, and can be edited separately. This preserves the history and context of the speaker's presentations and ensures that the information is relevant to participants at current events.
How the paper publication process works
After the speaker has entered the information, the editor verifies the application and speaker data and then publishes the papers on the website. This process ensures the accuracy and relevance of the content, which is key to user experience. Publishing reports on the website provides access to valuable knowledge and information, which contributes to the development of the professional community.

The image above shows the recordings With the status "Awaiting Review" or "Published." Once editing is complete, the report is published on the website, allowing users to receive up-to-date information. Statuses help track the progress of materials, ensuring transparency and ease of content management.
The publication scheme is a structured process that ensures the effective dissemination of information. It includes several key stages, from content preparation to its distribution through various channels. It is important to consider the target audience and optimize the content for search engines. This increases the visibility of publications and attracts more visitors. Proper presentation and structuring of information facilitates better perception and assimilation of the material by readers. Each stage of publication plays a role in achieving the ultimate goal – delivering information to interested users. An effective publishing scheme is an important tool for improving the quality of content and its successful promotion on the Internet.

The speaker creates his biography in the SRM system or Uses an existing one if you have previously presented at our events. The team reviews and edits the submitted text. Using the Core API façade service, which integrates all our services and backends into a single structure, content is published as separate blocks. This process ensures convenient and efficient work with information and helps keep speaker data up-to-date.
We present our conference websites, each of which contains complete information about the corresponding conference. We also have a single website, live.jugru.org, where all online event broadcasts are hosted. Here you will find up-to-date information on the schedule, speakers, and participation opportunities.
Previously, these websites operated independently of each other, creating numerous management challenges. They were developed at different times by different people and used different technologies. Making changes to common blocks, as well as adding a unified logo to all resources, became a real challenge. This created difficulties in maintaining and updating content, which negatively impacted the user experience and overall brand image. Optimizing such processes requires a systematic approach and the implementation of modern solutions for unifying and managing content across all platforms.
We have developed a unique engine for conference websites that allows you to create and manage events more efficiently. This tool offers a wide range of features, including integration with payment systems, participant registration, and automated email marketing. Our solution significantly simplifies the conference organization process and improves engagement with participants. Thanks to the intuitive interface and flexible settings, each user can easily adapt the site to their needs, which makes our engine an ideal choice for event organizers.

This is a universal engine for our websites, a monorepo built on Next.js with Node.js caching. All conference websites are hosted in 42 containers, allowing for efficient simultaneous operation. This approach ensures high performance and reliability, which is important for users and event organizers.
The website assembly scheme for the JUG Ru Group conference includes key elements that ensure functionality and user experience. First and foremost, it is necessary to define a logical and intuitive page structure. Key website sections may include conference information, event schedule, speaker list, and registration.
It's important to pay attention to the website design, which should reflect the conference theme and be responsive for various devices. Using current technologies, such as HTML5 and CSS3, will ensure a modern look and improve the user experience.
Furthermore, it's important to optimize the content for search engines. To do this, use conference-related keywords in titles, meta tags, and body text. This will help attract the target audience and increase the website's visibility in search engines.
It's also necessary to set up a content management system to ensure easy updating of information and the addition of new materials. Integration with social networks and the ability to share content will help increase audience reach and make the site more interactive.
Therefore, the correct layout of the website for the JUG Ru Group conference plays an important role in the success of the event, ensuring information content, accessibility, and attractiveness for participants.

The Core API acts as a façade system that simplifies interaction with various components. Using specialized build tasks, code from the Git repository is integrated with the cache, allowing for the creation of a specific application instance. After a successful build, this instance is published in three different environments, ensuring stable operation. Changes to the codebase are automatically reflected on all sites, ensuring their relevance and consistency.
All sites have a similar appearance due to the use of standard authorization methods and similar blocks. With marketing materials prepared in advance, we can create a website for a new conference in as little as half a day. This allows for quick event launches and effective online promotion, while maintaining high quality.
We adhere to core principles that define our work and approach to service quality. These principles help us provide a high level of service and customer satisfaction. We value honesty, transparency, and professionalism in every interaction. Our team is committed to continuous development and improvement to offer the most effective solutions. We also emphasize a personalized approach to each client, taking into account their needs and preferences. These principles form the foundation of our business and contribute to our success in a competitive environment.
- Consistent terminology;
- A unified experience for conference participants and the team;
- SSO across all sites;
- Similar visualization of identical blocks;
- Participants access the broadcast in two steps.
The interfaces of our sites have a similar design, which ensures a consistent user experience. Both light and dark themes are available on all platforms, and a standard set of blocks is used. The presentation cards are designed in the same style both on the conference website and on the Live platform, making it easy to navigate and find the information you need.


In order for the cards to be displayed on websites, you need to create a schedule. This process is usually carried out using an editor that allows you to conveniently organize and edit data. Using the editor correctly helps you effectively plan content and manage its publication, which helps improve your website's visibility in search engines. It is important to consider keywords and phrases that can attract the target audience, and also to monitor the relevance of the information.

The tool allows you to create a program Conferences using a simple drag-and-drop interface. It is designed for use by coordinators and program committees. This interface provides a wealth of metadata, making it easy to edit entities, set tags, and define the difficulty level and language of the activity. You can also specify speakers and the event hall. This makes the planning process more convenient and efficient, providing organizers with all the necessary tools to create a high-quality program.
Broadcast: What's Under the Hood
The conference program has been published, and it's time to host the event. We'll connect speakers who will present via Speaker Room—our own connection tool. This WebRTC-based solution previously used Voximplant technology and now operates on the VK Zvonkov platform. Speaker Room allows you to share your presentation screen and connect to remote speakers' screens, making the presentation process more interactive and convenient.
We offer studios in St. Petersburg where participants can come and go live in person. This is a great opportunity to create high-quality content in a professional atmosphere.

How to combine everything in one video
Mobile OB vans are mobile units that edit video footage and send it to the transcoder. Video playback is performed through our proprietary player, developed using HLS.js technology. This solution ensures reliable and high-quality display of video content.

The diagram at the top shows the Speaker Room, designed to connect remote speakers. The lower level houses the studios where participants gather. Video, transmitted via WebRTC or as a raw video signal, is sent to the OB van, where editing and processing takes place. The OB vans are spacious rooms equipped with multiple computers with high-performance graphics cards that handle video rendering and editing.
How a video gets into the PTSD

The studio provides The ability to receive images from the broadcast or from the broadcast producer. The OB van system connects to the Speaker Room via specialized receive-only clients that do not display video, but only retrieve it. The video is then sent to the OB van, where web page templates can be switched and edited. Audio adjustments, mixing, and correction are also possible. This approach allows for effective content quality management and tailoring to specific project requirements.
After video processing in the OB van, its compression and preparation for production are complete, after which the file is transmitted via the SRT protocol to the Amazon MediaConnect service. This ensures efficient and reliable delivery of content for further work.

On the Amazon platform, the video undergoes a transcoding process to 4K resolution. The content is then packaged in an HLS container and sent to S3 cloud storage, from where it is then distributed globally via CloudFront. This ensures fast video access for users, regardless of their location. Thanks to the streaming service and the Live feature, the client player receives dynamically generated playlists, allowing it to efficiently download the necessary video chunks.
When attempting to download a video, HTTP cookies are activated. These cookies store a signed object that contains information about the user's access rights. The signature allows CloudFront to verify rights and authorize access to specific content. This ensures security and intellectual property protection, ensuring that only authorized users can access the video. Using HTTP cookies in this process is an important step in content protection and access rights management.
If a user changes a conference or ticket rights are changed, it will be sent to CloudFront with an updated cookie value. This is important to ensure the correct functioning of the system and ensure access to the required resources. Cookie update allows the user to receive up-to-date information and functions related to his new status on the platform.

The player interacts with The backend is a Java service running on the Hazelcast platform. Every five seconds, the player transmits data about which user is currently viewing a particular video fragment. This information is necessary for collecting statistics, analytics, and generating real-time viewership graphs. This allows the backend to update the number of users attending talks, analyze user statistics, rate talks, and monitor discussions.
Previously, we held one long stream, divided into several parts, such as "Talk 1," "Talk 2," and so on, with a strict schedule. Since this summer, all talks have become more flexible—there is no longer a strict time limit for when a talk must end to make room for the next one. This innovation also affects discussions, which can now last four hours or more.
How We Manage the Broadcast
The on-air team uses a specialized tool with controls to manage the talk, including the ability to pause and stop it. Data from the online backend is sent to an analytical warehouse, where information from various systems is combined. By processing the data, a variety of views are created that help form a statistical picture and analyze the obtained results. This provides a deeper understanding of the processes and allows for informed decision-making based on the collected analytics.
Graphs show the number of visits to each conference, as well as the ratings that viewers gave to the talks. We can analyze which talks have been favorited. In addition, we have the ability to send feedback to the speakers. This will make our future conferences and presentations more engaging and relevant to our audiences.
How Authorization Works and What is SSO
Authorization at JUG Ru Group is based on the single sign-on principle. This allows users to log into one of our platforms and automatically gain access to all other systems without requiring re-authorization. This approach significantly simplifies the login process and improves the user experience, ensuring security and convenience when working with various services of our company.

There are two types of personal The first is for obtaining a ticket and authorizing on the server, while the second is used to store short codes for accessing video. Although we have not yet implemented them in a production environment, in the future we plan to use these dashboards to simplify user access and provide authorization via a single link. This will significantly improve the user experience and simplify the login process.
At the center of the system is a frontend-backend service that enables integration of OIDC (OpenID Connect) authorization and a personal dashboard with various platforms, including conference websites, Speaker Room, SRM, internal tools, and Live. Users can authorize via Google, Yandex, or Apple services, which allows them to avoid entering an email address if this authorization method is inconvenient for them.
We were faced with a choice: create our own tool or use existing services such as Okta or OAuth. Ultimately, we decided to develop our own solution, and this turned out to be the right move, as both of these services ceased operations in Russia in April 2022. Creating our own tool allowed us not only to avoid dependence on external factors, but also to adapt the functionality to our specific requirements and needs.
How to make money on presentations
Create impressive projects in PowerPoint and Google Slides! Present your ideas clearly and convincingly to colleagues, clients, and investors. And make money doing it. This is a skill that is in demand on the market.
Find out more
