https://beaglehq.netlify.app/posts/system-design/solid-principles/
SOLID Principles