Events & communities / Real-time product engineering

RoundHere

Building the live interaction layer for events, experts, and communities.

Hands-on feature delivery · Existing live productEmbark · September 2024–present · Senior Full-Stack Engineer · Contract

Explore my contribution
Live video, conversations and replay Conceptual illustration of a live video session, chat messages and a recording replay. LIVECommunity session Live studio Live chat Replay Live video → conversations → replay
Concept illustration · Live session → replay
Role
Senior Full-Stack Engineer · Contract
Team
Embark · September 2024–present
Scope
Live studio, conversations, recordings and release integration
Stack
Laravel · Vue 3 · Inertia · Tailwind CSS · Laravel Echo / Socket.IO · Vonage Video · FFmpeg · Redis / Horizon · Stripe Connect

The product

RoundHere brings events, experts, channels, and recorded sessions into a shared discovery experience. Its public platform helps people find relevant programs, explore communities, connect with expertise, and return to content after a live event. It also gives organizations a place to bring their programs and community activity together.

A visitor can browse an event, discover the organization or channel behind it, and explore related experts or recordings. For an organizer, the experience extends beyond the event listing into hosting and participation. For an expert, the product offers a way to make expertise discoverable and available through sessions. These connected journeys make RoundHere more than a calendar: discovery leads into interaction, and live participation can become content people revisit.

  1. Discover

    Events and experts

  2. Join

    Enter the live session

  3. Interact

    Video and conversations

  4. Replay

    Return to the content

The challenge

Live experiences have a different engineering rhythm from ordinary page-based applications. A video session, a chat conversation, and a recording workflow all change while people are using them. The interface needs to reflect those changes, the backend must coordinate the corresponding application behavior, and the experience has to continue across the transition from a scheduled event to a live session and then to a replay.

My work focused on those connected features. It required moving between frontend components, application logic, real-time events, and third-party media integrations, rather than treating each screen as an isolated deliverable.

My contribution

As a Senior Full-Stack Engineer working through Embark, I made hands-on contributions across the Laravel backend and Vue-based interface. My core areas included real-time communication, the live video studio, chat, and event recording. I also integrated teammates’ work and regularly promoted application changes through the delivery process during the main period of my contribution.

In the live studio, I worked on the Vonage video integration and the controls that make a session usable: participant interactions, hand-raising, captions, and device controls. This connected the media provider’s capabilities with the application’s own event experience and interface.

For chat, I contributed conversation and thread functionality, reactions, pinned messages, attachments, search, and administrative tools. These features supported the ongoing interaction around a community, including the smaller exchanges that happen outside the main live session.

Technical decisions

The real-time work used Laravel broadcasting and a socket-based layer to carry application updates into the frontend. I worked across both sides of that connection so that user actions and visible application state could participate in a coherent flow.

For recordings, I implemented work spanning scheduled tasks, queued processing, automatic event recording, and thumbnail generation. That connected the live-session lifecycle with the recorded-content experience. I also contributed to paid-session workflows and release integration, bringing together feature work that crossed multiple layers of the application.

Outcome

The work added and extended application functionality across live video, conversations, and recorded events. My contribution covered the path from participant-facing controls to the supporting backend behavior, with release integration alongside that feature work. It demonstrates hands-on ownership within an existing product, particularly where real-time interaction depends on coordinated frontend and backend development.

This case shows how I work across interfaces and services to deliver complete product behavior, while collaborating with other engineers on an application that continued to evolve beyond my individual contributions.

Relevant stack

Laravel, Vue 3, Inertia, Tailwind CSS, Laravel Echo / Socket.IO, Vonage Video, FFmpeg, Redis / Horizon, and Stripe Connect.