Transitioning a Content Streaming Platform from Monolithic to Microservices
Date / Time: Saturday 23 November / 15:35 - 16:35 EET @ Workshop room (-1st floor - Room 1)
Kindly Offered from Deloitte
Workshop Description:
This workshop is designed to guide software developers, architects, and engineers through the practical steps of transitioning a monolithic content streaming backend system to a microservices architecture using .NET Core. Participants will gain hands-on experience in refactoring a monolithic backend to separate microservices, implementing critical features such as user management, content library, recommendations, billing/subscriptions, and user ratings and favorites. The workshop emphasizes best practices in microservices design, database separation, API integration, and testing.
By the end of this workshop, participants will be able to:
- Identify key monolithic-to-microservices transition challenges and their solutions.
- Design and implement microservices for user management, content library, recommendations, billing, and user ratings/favorites.
- Integrate microservices with a frontend via REST APIs.
What will you Learn:
- Practical techniques to refactor and transition a monolithic backend system to a microservices architecture.
- Key microservices design patterns and principles, including database decoupling, API communication, and independent deployment.
- How to build and integrate backend microservices for user authentication, content management, user recommendations, billing, and user ratings/favorites.
Level: Intermediate
TAGs: #microservices #dotnetcore #architecture #backenddevelopment #api #testing #contentstreaming #visualstudio #sqlserver
Target audience:
Software Developers, Software Architects, Engineers, and DevOps Professionals who want to gain hands-on experience with microservices architecture and backend development using .NET Core.
Prerequisites on HW and Audience:
Hardware: Participants must bring their own laptops.
Software:
.NET IDE (preferred Visual Studio 2022 or later, VS Code) with ASP.NET and web development workloads installed.
.NET 8.0 SDK installed.
SQL Server Management Studio (SSMS) and SQL Server installed.
Postman or a similar API testing tool installed.
Node.js latest version
Npm or other package manager
Experience:
Familiarity with C# and .NET Core.
Basic understanding of REST APIs and HTTP.
Knowledge of backend development practices and basic patterns.
Deliverables:
- Microservices-based backend code developed during the workshop.
- UI react web app code implemented prior to the workshop.
- Documentation of microservices API contracts and interactions.
- Presentation slides used during the workshop.
Schedule:
Introduction (10 Minutes)
- Overview of the workshop and its objectives.
- Importance of transitioning monolithic systems to microservices.
- Explanation of the content streaming use case and microservices scope.
Installing Prerequisites (10 Minutes)
- Visual Studio Installation:
- Step-by-step instructions to ensure Visual Studio is properly installed with ASP.NET and web development workloads.
- SQL Server and SSMS Installation:
- Ensuring SQL Server and SQL Server Management Studio (SSMS) are installed and properly configured.
Monolithic to Microservices Architecture Transition (15 Minutes)
- Presentation on monolithic challenges and microservices advantages.
- Overview of the target microservices: User Management, Content Library, Recommendations, Billing/Subscriptions, and User Ratings/Favorites.
Refactoring the User Management Service (25 Minutes)
- Hands-on implementation: Creating a User Management microservice with user registration, login, and profile management using .NET Core and JWT.
- Discussion on database separation for user data and API authentication strategies using SQL Server.
Developing the Content Library and Recommendations Services (20 Minutes)
- Hands-on implementation: Creating microservices for managing content metadata and user-specific recommendations.
- Explanation of API design and interaction between services.
- Demonstration of fetching and displaying content recommendations based on user preferences.
Implementing the Billing/Subscriptions and User Ratings/Favorites Services (20 Minutes)
- Hands-on implementation: Building microservices for handling user subscriptions and managing user ratings, favorites, and watchlists.
- Discussion on data communication between microservices and API security considerations.
Conclusion (15 Minutes)
- Recap of key learnings and implementation steps.
- Calls to action: Applying microservices transition techniques to participants’ own projects.