ExtraTech Logo
TracksProjectsStudentsRecommendationsContact Us

© 2025 ExtraTech Bootcamps. All rights reserved.

← Back to Projects

This project is a sub-project of BSDFlow

Kaltura

Workflow

Mentored by: Kaltura

Workflow - A multi-tenant, dynamic management system for entities, events, workflows, and real-time operations.

React
NestJS
.NET Core
Kafka
PostgreSQL
Redis
WebSocket
SignalR
Microservices
LLM Integration

Description

Workflow sub-project of BSDFlow. A full-scale microservices-based management platform supporting dynamic entities, groups, processes, and events. Includes multi-tenant table architecture, generic Kafka handlers with correlation-based async RPC, Redis caching for performance, real-time updates via WebSocket & SignalR, integration with LLMs, Excel watchers, advanced validation using Strategy Pattern, RBAC permissions, GIS mapping, smart search with PostgreSQL FTS+GIN+Trigrams, and a complete load-testing engine. Enables organizations to define custom workflows, attach documents, track participants, and manage system-wide behaviors across distributed services.

Team Members

Cohort: Backend Bootcamp 2025 (Backend)

Tzippy K. - Task Preview
Tzippy K.

Responsibilities:

  • Built a modular Action-Delivery service that serves as a unified layer for all communication channels, enabling seamless integration and sending through Email, SMS, Webhook, and supporting easy future channel expansion.

  • Developed the Scheduling and Orchestration service, which constructs ActionRuns based on timing or triggers by combining data from processes, events, participants, and custom schedules into a unified execution model.

Dive in 🚀
Elisheva S. - Task Preview
Elisheva S.

Responsibilities:

  • Developed a generic Conditions Engine in NestJS, enabling dynamic workflows with real-time event processing and configurable business logic.

  • Implemented frontend components in React for building conditional logic and presenting results in a user-friendly interface.

  • Implemented automation flows based on Kafka event streams, ensuring reliable processing and extensibility across multiple organizational processes.

  • Designed and developed core backend modules using PostgreSQL with JSONB structures, supporting flexible storage of workflow rules and conditions.

Dive in 🚀
Shifra M. - Task Preview
Shifra M.

Responsibilities:

  • Designed and delivered the full Action-Creation Pipeline, a distributed, event-driven workflow enabling creation, validation, persistence, and preparation of Actions using NestJS, Kafka, .NET workers, and PostgreSQL.

  • Developed the Validation Worker, ensuring real-time atomic uniqueness checks, schema validation, and configuration integrity. Replaced DB-based validation with a distributed Redis lock using SETNX to eliminate race-conditions and reduce database load.

  • Designed the system’s relational data model (ERD), covering actioncatalog, processactions, actioncondition, actionschedules, and action_run, with proper foreign keys, indexing, and structures optimized for workflow expansion.

  • Developed React UI components and multi-step wizards for creating and managing workflow actions, including catalog selection, condition configuration, and scheduling flows.

Dive in 🚀
E
No preview image
Ester B.

Responsibilities:

  • Implemented a development-optimized Docker architecture using Hot Reload, volume-mounted source code, and strict Dev/Prod configuration separation via compose overrides, ensuring fast iteration cycles without compromising production integrity.

  • Constructed a full multi-service Docker Compose environment integrating Kafka, Zookeeper, PostgreSQL, multiple microservices, and Kafdrop, providing deterministic local orchestration and consistent development environments for the entire team.

  • Adopted Contract-Driven Development using a centralized OpenAPI specification and automated code generation, establishing a unified API contract and consistent cross-service communication across all microservices.

  • Designed a scalable Generic Kafka Consumer using a TopicHandlerMap abstraction with DI-driven handler discovery, enabling plug-and-play message processors and eliminating duplicated topic-specific consumer code.

  • Engineered a resource-safe Worker Service by applying a Scoped DbContext Factory Pattern within a long-running HostedService, ensuring proper lifetime management, clean disposal, and stable PostgreSQL connectivity under load.

  • Migrated raw SQL logic to TypeORM entities and repositories, improving maintainability, enforcing schema consistency, and mitigating SQL injection risks through parameterized and type-safe data-access patterns.

  • Orchestrated a complete end-to-end workflow—from UI and Gateway to NestJS, Kafka pipelines, the .NET worker, and read/write PostgreSQL stores—achieving consistent cross-service data propagation and reliable system state synchronization.

  • Implemented a centralized Global Exception Filter in NestJS with structured error responses, enhancing observability, resilience, and debuggability across distributed HTTP and event-driven interfaces.

  • Automated regression detection using Git Bisect paired with a custom test script, enabling rapid pinpointing of faulty commits and dramatically accelerating troubleshooting across complex merge histories.

  • Developed a professional automated testing suite using xUnit, Moq, and SQLite In-Memory to validate domain logic, data-access constraints, and edge cases with high-fidelity verification of repository behavior.

...and more contributions not listed here

Dive in 🚀