Design a Plagiarism checker.

Medium
Company: Premium
GoogleAmazon

Let's refine our plagiarism checker. The original problem allowed us to compare documents and identify similar sections. Now, we want to make the system more robust and extensible, allowing for different comparison algorithms (e.g., comparing based on n-grams, comparing based on semantic similarity using word embeddings). We also need to ensure that the system can handle multiple concurrent requests efficiently and safely. Finally, we want to be able to easily add new document types (e.g., PDFs, web pages) without modifying existing code.

Think of it as building a solid foundation for a service that helps students and academics maintain integrity. We need to handle diverse documents, different detection strategies, and concurrent usage, all while keeping the code clean and maintainable.

Requirements

Interview Simulation

Experience a realistic interview conversation. The interviewer will ask clarifying questions,and you'll reveal your understanding of the requirements.

Interviewer

Let's start by understanding the scope. What are the core functionalities this system needs to provide?

💡 Interview Tip

Identify the Actors (Who uses the system?) and their Use Cases (What are they trying to achieve?). Start with the 'Happy Path' scenarios.

Press ⌘ + Enter to submit

Premium Content

View detailed solutions.

UNLOCK PREMIUM