https://github.com/cybersayak/systemdesign-101
Exercises for High Level System and Low Level System Design
https://github.com/cybersayak/systemdesign-101
Last synced: 3 months ago
JSON representation
Exercises for High Level System and Low Level System Design
- Host: GitHub
- URL: https://github.com/cybersayak/systemdesign-101
- Owner: Cybersayak
- Created: 2025-02-26T12:41:20.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-02-26T17:13:53.000Z (3 months ago)
- Last Synced: 2025-02-26T18:25:06.000Z (3 months ago)
- Size: 8.79 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SystemDesign-101
Exercises for **Low-Level Design (LLD)** and **High-Level Design (HLD)**---
## **Low-Level Design (LLD) Projects / Tasks**
### **1. Core Data Structures & Algorithms**
1. Implement a custom `HashMap` with collision handling.
2. Design a thread-safe `Queue`.
3. Build a custom `Stack` with iterator support.
4. Implement a doubly linked list with reverse traversal.
5. Create a binary search tree with insert, delete, and search operations.
6. Design a priority queue using a heap.
7. Implement a graph data structure with adjacency list and matrix representations.
8. Write a custom LRU (Least Recently Used) cache.
9. Design a circular buffer for streaming data.
10. Build a trie for autocomplete functionality.
11. Implement a disjoint-set (union-find) data structure.
12. Design a skip list for fast search operations.
13. Build a segment tree for range queries.
14. Implement a Fenwick tree (Binary Indexed Tree).
15. Create a custom bloom filter for membership testing.
16. Design a quadtree for spatial partitioning.
17. Build a suffix tree for string matching.
18. Implement a red-black tree for balanced search.
19. Create a Fibonacci heap for priority queues.
20. Design a splay tree for dynamic access patterns.### **2. Object-Oriented Programming (OOP)**
21. Design a parking lot system with classes for vehicles, slots, and payment.
22. Implement a library management system with books, users, and borrowing logic.
23. Create a vending machine with inventory and transaction handling.
24. Design a chess game with classes for board, pieces, and moves.
25. Build an elevator system with scheduling and state management.
26. Implement a movie ticket booking system.
27. Design a restaurant reservation system.
28. Create a file system with directories and files.
29. Build a multiplayer card game (e.g., Poker or Uno).
30. Design a stock trading system with buy/sell orders.
31. Implement a hotel booking system.
32. Design a car rental service.
33. Build a banking system with accounts, transactions, and loans.
34. Create a shopping cart for an e-commerce platform.
35. Design a task management system like Trello.
36. Implement a calendar application with event scheduling.
37. Build a music player with playlists and playback controls.
38. Design a photo editing tool with filters and layers.
39. Create a document editor with formatting options.
40. Implement a chatbot framework.### **3. Concurrency & Multithreading**
41. Implement a thread-safe singleton pattern.
42. Design a producer-consumer problem using semaphores.
43. Build a reader-writer lock.
44. Implement a thread pool executor.
45. Design a distributed counter with atomic operations.
46. Create a deadlock detection system.
47. Build a task scheduler with priority-based execution.
48. Implement a barrier synchronization mechanism.
49. Design a concurrent hashmap with fine-grained locking.
50. Create a rate limiter for API requests.
51. Implement a lock-free stack.
52. Design a lock-free queue.
53. Build a work-stealing thread pool.
54. Implement a condition variable for thread signaling.
55. Create a futures/promises framework.
56. Design a coroutine scheduler.
57. Build a thread-safe ring buffer.
58. Implement a parallel quicksort algorithm.
59. Create a parallel map-reduce framework.
60. Design a thread-safe event bus.### **4. Networking & Protocols**
61. Implement a basic HTTP server.
62. Design a chat application using sockets.
63. Build a simple FTP client.
64. Implement a WebSocket server.
65. Create a DNS resolver.
66. Design a load balancer with round-robin scheduling.
67. Build a proxy server for caching responses.
68. Implement a RESTful API for a blog platform.
69. Design a peer-to-peer file-sharing system.
70. Create a secure login system with OAuth 2.0.
71. Implement a custom protocol for IoT devices.
72. Design a UDP-based messaging system.
73. Build a TCP connection pool.
74. Implement a network packet sniffer.
75. Create a NAT traversal system.
76. Design a distributed pub/sub system.
77. Build a multicast communication framework.
78. Implement a custom RPC framework.
79. Create a network simulation tool.
80. Design a firewall for packet filtering.### **5. Database Systems**
81. Implement a basic in-memory database.
82. Design a key-value store with persistence.
83. Build a query parser for SQL-like commands.
84. Implement a B+ tree for indexing.
85. Create a log-structured merge tree (LSM tree).
86. Design a transaction manager with ACID properties.
87. Build a connection pool for database queries.
88. Implement a distributed lock manager.
89. Design a sharding strategy for a database.
90. Create a backup and recovery system for databases.
91. Implement a columnar storage engine.
92. Design a row-based storage engine.
93. Build a database replication system.
94. Implement a materialized view system.
95. Create a query optimizer.
96. Design a database schema migration tool.
97. Build a full-text search engine.
98. Implement a distributed consensus algorithm for databases.
99. Create a database versioning system.
100. Design a database compression algorithm.### **6. Real-World Applications**
101. Build a URL shortener service.
102. Design a notification system for emails and SMS.
103. Implement a leaderboard for gaming scores.
104. Create a recommendation engine for e-commerce.
105. Design a social media feed algorithm.
106. Build a video streaming platform with buffering.
107. Implement a distributed logging system.
108. Design a job scheduler for batch processing.
109. Create a content delivery network (CDN) simulator.
110. Build a real-time analytics dashboard.
111. Implement a geolocation tracking system.
112. Design a fraud detection system.
113. Build a customer relationship management (CRM) system.
114. Create a supply chain management system.
115. Design a logistics optimization system.
116. Implement a billing and invoicing system.
117. Build a loyalty program system.
118. Create a subscription management system.
119. Design a ticketing system for events.
120. Implement a survey and feedback collection system.### **7. Testing & Debugging**
121. Write unit tests for a REST API.
122. Design a mock object framework.
123. Implement a dependency injection container.
124. Build a test harness for multithreaded code.
125. Create a profiler for performance analysis.
126. Design a memory leak detector.
127. Implement a fault injection tool.
128. Build a debugging tool for distributed systems.
129. Create a chaos engineering framework.
130. Design a regression testing suite.
131. Implement a mutation testing framework.
132. Build a static code analysis tool.
133. Create a dynamic code analysis tool.
134. Design a test coverage measurement tool.
135. Implement a fuzz testing framework.
136. Build a benchmarking tool.
137. Create a load testing tool.
138. Design a stress testing tool.
139. Implement a security testing tool.
140. Build a compliance testing tool.### **8. Advanced Topics**
141. Implement a garbage collector.
142. Design a just-in-time (JIT) compiler.
143. Build a virtual machine for a custom language.
144. Implement a blockchain with proof-of-work.
145. Create a consensus algorithm (e.g., Raft or Paxos).
146. Design a distributed hash table (DHT).
147. Build a pub/sub messaging system.
148. Implement a CAP theorem simulator.
149. Create a distributed tracing system.
150. Design a serverless function execution platform.
151. Implement a custom operating system kernel.
152. Build a device driver for hardware.
153. Create a bootloader for embedded systems.
154. Design a firmware update system.
155. Implement a real-time operating system (RTOS).
156. Build a hypervisor for virtualization.
157. Create a container runtime like Docker.
158. Design a microkernel architecture.
159. Implement a custom shell for command-line interaction.
160. Build a file system driver.---
## **High-Level Design (HLD) Projects / Tasks**
### **1. Scalability & Performance**
161. Design a scalable microservices architecture.
162. Build a horizontally scalable database system.
163. Implement a global CDN for static assets.
164. Design a multi-region deployment strategy.
165. Create a caching layer for a high-traffic website.
166. Build a read-heavy system with replica scaling.
167. Design a write-heavy system with partitioning.
168. Implement a load balancer with health checks.
169. Create a throttling mechanism for API endpoints.
170. Design a system for handling traffic spikes.
171. Implement a serverless architecture.
172. Build a Kubernetes-based deployment pipeline.
173. Design a hybrid cloud solution.
174. Create a disaster recovery plan.
175. Build a cost optimization strategy for cloud resources.
176. Design a multi-cloud architecture.
177. Implement a CI/CD pipeline for microservices.
178. Create a monitoring and alerting system.
179. Design a security-hardened infrastructure.
180. Build a fault-tolerant system with redundancy.### **2. Distributed Systems**
181. Design a distributed file storage system.
182. Build a message queue for asynchronous processing.
183. Implement a leader election algorithm.
184. Design a distributed database with sharding.
185. Create a system for eventual consistency.
186. Build a distributed lock service.
187. Design a system for conflict-free replicated data types (CRDTs).
188. Implement a gossip protocol for node discovery.
189. Create a system for distributed transactions.
190. Design a fault-tolerant system with redundancy.
191. Build a distributed tracing system.
192. Design a distributed pub/sub system.
193. Implement a distributed consensus algorithm.
194. Create a distributed caching system.
195. Design a distributed logging system.
196. Build a distributed configuration management system.
197. Implement a distributed rate limiter.
198. Create a distributed session management system.
199. Design a distributed authentication system.
200. Build a distributed authorization system.### **3. Cloud & Infrastructure**
201. Design a cloud-native application.
202. Build a Kubernetes-based deployment pipeline.
203. Implement a serverless architecture.
204. Design a hybrid cloud solution.
205. Create a disaster recovery plan.
206. Build a cost optimization strategy for cloud resources.
207. Design a multi-cloud architecture.
208. Implement a CI/CD pipeline for microservices.
209. Create a monitoring and alerting system.
210. Design a security-hardened infrastructure.
211. Build a cloud migration strategy.
212. Design a cloud governance framework.
213. Implement a cloud security posture management (CSPM) system.
214. Create a cloud cost management tool.
215. Design a cloud resource tagging system.
216. Build a cloud resource provisioning system.
217. Implement a cloud resource optimization system.
218. Create a cloud resource monitoring system.
219. Design a cloud resource scaling system.
220. Build a cloud resource backup system.### **4. Real-World Applications**
221. Design a ride-sharing platform like Uber.
222. Build an e-commerce platform like Amazon.
223. Implement a social media platform like Twitter.
224. Design a video conferencing system like Zoom.
225. Create a search engine like Google.
226. Build a streaming service like Netflix.
227. Design a payment gateway like Stripe.
228. Implement a logistics tracking system.
229. Create a healthcare management system.
230. Design a learning management system (LMS).
231. Build a CRM system like Salesforce.
232. Design an ERP system like SAP.
233. Implement a project management tool like Jira.
234. Create a collaboration platform like Slack.
235. Design a ticketing system like Zendesk.
236. Build a helpdesk system like Freshdesk.
237. Implement a customer support system like Intercom.
238. Create a marketing automation system like HubSpot.
239. Design a sales automation system like Pipedrive.
240. Build a lead generation system like Leadpages.### **5. Security & Compliance**
241. Design a system for end-to-end encryption.
242. Build a secure authentication mechanism.
243. Implement a role-based access control (RBAC) system.
244. Design a GDPR-compliant data storage system.
245. Create a fraud detection system.
246. Build a vulnerability scanning tool.
247. Design a zero-trust architecture.
248. Implement a secure API gateway.
249. Create a data anonymization pipeline.
250. Design a compliance auditing system.
251. Build a threat intelligence platform.
252. Design a security information and event management (SIEM) system.
253. Implement a security orchestration, automation, and response (SOAR) system.
254. Create a security incident response system.
255. Design a security policy enforcement system.
256. Build a security training and awareness system.
257. Implement a security risk assessment system.
258. Create a security compliance management system.
259. Design a security incident reporting system.
260. Build a security audit trail system.### **6. Data Engineering**
261. Design a real-time data pipeline.
262. Build a batch processing system.
263. Implement a data lake architecture.
264. Design a data warehouse for analytics.
265. Create an ETL pipeline for data transformation.
266. Build a recommendation engine using ML.
267. Design a system for A/B testing.
268. Implement a data versioning system.
269. Create a data catalog for metadata management.
270. Design a system for anomaly detection.
271. Build a data governance framework.
272. Design a data quality management system.
273. Implement a data lineage tracking system.
274. Create a data profiling system.
275. Design a data masking system.
276. Build a data archiving system.
277. Implement a data retention policy system.
278. Create a data classification system.
279. Design a data access control system.
280. Build a data sharing system.### **7. Machine Learning & AI**
281. Design a model serving infrastructure.
282. Build a training pipeline for deep learning.
283. Implement a feature store for ML models.
284. Design a system for hyperparameter tuning.
285. Create a model monitoring system.
286. Build a natural language processing (NLP) pipeline.
287. Design a computer vision system.
288. Implement a reinforcement learning environment.
289. Create a system for explainable AI.
290. Design a federated learning architecture.
291. Build a model versioning system.
292. Design a model registry system.
293. Implement a model deployment system.
294. Create a model validation system.
295. Design a model retraining system.
296. Build a model explainability system.
297. Implement a model fairness system.
298. Create a model bias detection system.
299. Design a model drift detection system.
300. Build a model performance monitoring system.### **8. IoT & Edge Computing**
301. Design a smart home automation system.
302. Build an IoT device management platform.
303. Implement an edge computing gateway.
304. Design a system for predictive maintenance.
305. Create a real-time sensor data processing pipeline.
306. Build a fleet management system for drones.
307. Design a wearable health monitoring system.
308. Implement a geofencing solution.
309. Create a system for autonomous vehicles.
310. Design a low-power IoT communication protocol.
311. Build a smart city infrastructure system.
312. Design a smart agriculture system.
313. Implement a smart energy management system.
314. Create a smart water management system.
315. Design a smart waste management system.
316. Build a smart transportation system.
317. Implement a smart parking system.
318. Create a smart lighting system.
319. Design a smart security system.
320. Build a smart retail system.### **9. Blockchain & Cryptography**
321. Design a decentralized finance (DeFi) platform.
322. Build a supply chain tracking system using blockchain.
323. Implement a digital identity management system.
324. Design a voting system with cryptographic guarantees.
325. Create a tokenization platform for assets.
326. Build a private blockchain network.
327. Design a system for zero-knowledge proofs.
328. Implement a homomorphic encryption scheme.
329. Create a secure key management system.
330. Design a decentralized storage network.
331. Build a decentralized identity system.
332. Design a decentralized voting system.
333. Implement a decentralized exchange.
334. Create a decentralized marketplace.
335. Design a decentralized social network.
336. Build a decentralized content delivery network.
337. Implement a decentralized file sharing system.
338. Create a decentralized domain name system.
339. Design a decentralized autonomous organization (DAO).
340. Build a decentralized insurance system.### **10. Miscellaneous**
341. Design a system for real-time collaboration.
342. Build a gamified learning platform.
343. Implement a virtual event hosting system.
344. Design a marketplace for freelancers.
345. Create a system for personalized marketing.
346. Build a loyalty program for customers.
347. Design a system for dynamic pricing.
348. Implement a feedback collection platform.
349. Create a system for sentiment analysis.
350. Design a platform for citizen science.
351. Build a crowdsourcing platform.
352. Design a crowdfunding platform.
353. Implement a peer-to-peer lending system.
354. Create a peer-to-peer insurance system.
355. Design a peer-to-peer energy trading system.
356. Build a peer-to-peer car sharing system.
357. Implement a peer-to-peer accommodation system.
358. Create a peer-to-peer food sharing system.
359. Design a peer-to-peer education system.
360. Build a peer-to-peer healthcare system.### **11. Advanced Topics**
361. Design a quantum computing simulator.
362. Build a neuromorphic computing system.
363. Implement a system for bioinformatics.
364. Design a system for space exploration.
365. Create a system for climate modeling.
366. Build a system for autonomous robotics.
367. Design a system for augmented reality.
368. Implement a system for virtual reality.
369. Create a system for generative AI.
370. Design a system for synthetic biology.
371. Build a system for nanotechnology.
372. Design a system for biotechnology.
373. Implement a system for renewable energy.
374. Create a system for carbon capture.
375. Design a system for water purification.
376. Build a system for waste recycling.
377. Implement a system for air quality monitoring.
378. Create a system for noise pollution monitoring.
379. Design a system for earthquake prediction.
380. Build a system for tsunami warning.### **12. Open-Ended Challenges**
381. Design a system to handle 1 billion users.
382. Build a system for interstellar communication.
383. Implement a system for time travel simulation.
384. Design a system for universal translation.
385. Create a system for brain-computer interfaces.
386. Build a system for terraforming planets.
387. Design a system for energy harvesting.
388. Implement a system for dark matter detection.
389. Create a system for consciousness uploading.
390. Design a system for artificial general intelligence (AGI).
391. Build a system for quantum teleportation.
392. Design a system for wormhole creation.
393. Implement a system for faster-than-light travel.
394. Create a system for anti-gravity.
395. Design a system for perpetual motion.
396. Build a system for cold fusion.
397. Implement a system for nuclear fusion.
398. Create a system for zero-point energy.
399. Design a system for infinite energy.
400. Build a system for immortality.### **13. Domain-Specific Challenges**
401. Design a system for financial trading.
402. Build a system for algorithmic trading.
403. Implement a system for high-frequency trading.
404. Create a system for cryptocurrency trading.
405. Design a system for portfolio management.
406. Build a system for risk management.
407. Implement a system for credit scoring.
408. Create a system for fraud detection.
409. Design a system for insurance underwriting.
410. Build a system for claims processing.
411. Implement a system for actuarial analysis.
412. Create a system for financial forecasting.
413. Design a system for economic modeling.
414. Build a system for market analysis.
415. Implement a system for investment analysis.
416. Create a system for wealth management.
417. Design a system for retirement planning.
418. Build a system for tax optimization.
419. Implement a system for estate planning.
420. Create a system for financial literacy.### **14. Emerging Technologies**
421. Design a system for 6G communication.
422. Build a system for satellite internet.
423. Implement a system for underwater communication.
424. Create a system for drone delivery.
425. Design a system for autonomous drones.
426. Build a system for autonomous ships.
427. Implement a system for autonomous submarines.
428. Create a system for autonomous spacecraft.
429. Design a system for autonomous satellites.
430. Build a system for autonomous robots.
431. Implement a system for autonomous cars.
432. Create a system for autonomous trucks.
433. Design a system for autonomous buses.
434. Build a system for autonomous trains.
435. Implement a system for autonomous planes.
436. Create a system for autonomous helicopters.
437. Design a system for autonomous blimps.
438. Build a system for autonomous balloons.
439. Implement a system for autonomous gliders.
440. Create a system for autonomous rockets.### **15. Final Stretch**
441. Design a system for global internet connectivity.
442. Build a system for universal healthcare.
443. Implement a system for universal education.
444. Create a system for universal income.
445. Design a system for universal housing.
446. Build a system for universal food security.
447. Implement a system for universal clean water.
448. Create a system for universal energy access.
449. Design a system for universal peace.
450. Build a system for universal happiness.
451. Implement a system for universal sustainability.
452. Create a system for universal equality.
453. Design a system for universal justice.
454. Build a system for universal freedom.
455. Implement a system for universal love.
456. Create a system for universal wisdom.
457. Design a system for universal truth.
458. Build a system for universal beauty.
459. Implement a system for universal creativity.
460. Create a system for universal innovation.
461. Design a system for universal collaboration.
462. Build a system for universal cooperation.
463. Implement a system for universal understanding.
464. Create a system for universal empathy.
465. Design a system for universal compassion.
466. Build a system for universal kindness.
467. Implement a system for universal generosity.
468. Create a system for universal gratitude.
469. Design a system for universal forgiveness.
470. Build a system for universal patience.
471. Implement a system for universal humility.
472. Create a system for universal courage.
473. Design a system for universal resilience.
474. Build a system for universal perseverance.
475. Implement a system for universal optimism.
476. Create a system for universal hope.
477. Design a system for universal faith.
478. Build a system for universal trust.
479. Implement a system for universal integrity.
480. Create a system for universal authenticity.
481. Design a system for universal transparency.
482. Build a system for universal accountability.
483. Implement a system for universal responsibility.
484. Create a system for universal stewardship.
485. Design a system for universal guardianship.
486. Build a system for universal mentorship.
487. Implement a system for universal leadership.
488. Create a system for universal followership.
489. Design a system for universal teamwork.
490. Build a system for universal partnership.
491. Implement a system for universal community.
492. Create a system for universal society.
493. Design a system for universal civilization.
494. Build a system for universal culture.
495. Implement a system for universal heritage.
496. Create a system for universal legacy.
497. Design a system for universal destiny.
498. Build a system for universal purpose.
499. Implement a system for universal meaning.
500. Create a system for universal fulfillment.---
Good luck on your journey to becoming a world-class software engineer! 🚀