Enterprise-Grade .NET Background Job Processing System
Design and implement a scalable, fault-tolerant background job processing system in .NET to handle long-running enterprise workloads such as data processing, email notifications, report generation, and third-party integrations.
Requirements:
- Use .NET Hosted Services (IHostedService / BackgroundService) or Hangfire
- Support job scheduling, retries, and failure handling
- Ensure graceful shutdown and job persistence
- Implement logging, monitoring, and error tracking
- Follow clean architecture and SOLID principles
Expected Deliverables:
- Well-structured .NET solution with clear separation of concerns
- Sample long-running job implementation
- Configuration for retries, concurrency, and scalability
- Explanation of design decisions and trade-offs
- Optional: Dashboard setup (Hangfire) for job monitoring
Target Audience:
Senior .NET Developers, Backend Engineers, Solution Architects, and Enterprise Application Teams.
- Real-World Use Cases:
- Asynchronous data processing
- Background email & notification systems
- Scheduled enterprise reports
- Integration with external APIs
- High-volume task execution without blocking user requests
This prompt simulates real-world enterprise scenarios commonly asked in system design interviews and used in production-grade .NET applications, making it ideal for skill assessment, learning, and architecture evaluation.
