System Design Concepts

  • Course provided by Udemy
  • Study type: Online
  • Starts: Anytime
  • Price: See latest price on Udemy
Udemy

Course Description

(Coupon code: F8C5644BC8EADEE3B29C)

This course will explain you concepts related to System Design. This will help budding computer science graduates and software developers to become good architects. This will also help you to prepare for technical System Design interviews. This course can also be used as a goto course for refreshing your system design concepts.

Introduction to Course

As a computer engineer, be it student, developer or an architect, you are actively involved in designing systems. These systems can vary from small micro-services to large distributed systems. While designing such systems, it is very necessary that you are clear on the basics of system design. System design involves a large variety of concepts. It consists of various terminologies and jargons that you might encounter while reading articles, blogs, going through courses or videos. In order to design a good system, or in order to understand someone else's design, you should be well aware about what does a particular design choice actually entail. In this course, I will cover a wide variety of System Design concepts, and try to explain them with the help of examples, so that you can easily understand these concepts.

Please feel free to drop in comments if you want me to cover any System Design concept not yet covered in the course.

Who this course is for:

  • Software Developers who want to learn about System Design Concepts
  • Computer Science graduates who are new to the System Design world
  • Developers who are looking for cracking the System Design Interview
  • Developers who are learning to design pieces of architecture in their day-to-day world
  • Developers who want to revisit and hone their knowledge on System Design Concepts

Instructor

Architect
  • 4.4 Instructor Rating
  • 44 Reviews
  • 138 Students
  • 6 Courses

I am software architect by profession. I have worked primarily in building e-commerce technologies and also designed systems in Big Data Analytics domain. I am an active technical interviewer, and have taken 500+ coding and software design interviews. I love to share technical knowledge and help budding engineers with their career growth.

Expected Outcomes

  1. Learn concepts related to System Design Understand in detail how the Concepts are put into practical use Learn in a focussed manner what the system design jargons actually mean Course content 7 sections • 27 lectures • 1h 29m total length Expand all sections Introduction 3 lectures • 3min Introduction Preview 01:25 Course Objectives 01:06 About the Author 00:34 Scalability 6 lectures • 16min Latency 02:42 Throughput 00:43 Vertical Scaling 01:13 Horizontal Scaling 01:12 Load Balancers 05:28 Stateful and Stateless Applications 04:41 Databases 4 lectures • 19min Relational and Non-relational Databases 04:15 ACID and BASE Properties 07:25 Partitioning and Sharding 03:59 In-memory Databases 03:47 CAP Theorem 3 lectures • 9min Consistency, Availability and Partition Tolerance 01:18 CAP Theorem 04:13 CAP Theorem in Practice 03:32 Caching 3 lectures • 10min What is Caching? 05:14 Caching vs In-memory Databases 01:25 Cache Writing Policies 02:54 APIs 5 lectures • 26min SOAP vs REST vs GraphQL 05:09 Types of HTTP requests 08:58 Common HTTP Responses 06:10 Synchronous and Asynchronous calls 02:15 Blocking and Non-blocking calls 03:35 Messaging 3 lectures • 6min HTTP vs TCP vs UDP!? 01:52 Websockets 01:15 Message Broadcasting 03:13 Requirements Basic knowledge of software development Description (Coupon code: F8C5644BC8EADEE3B29C) This course will explain you concepts related to System Design. This will help budding computer science graduates and software developers to become good architects. This will also help you to prepare for technical System Design interviews. This course can also be used as a goto course for refreshing your system design concepts. Introduction to Course As a computer engineer, be it student, developer or an architect, you are actively involved in designing systems. These systems can vary from small micro-services to large distributed systems. While designing such systems, it is very necessary that you are clear on the basics of system design. System design involves a large variety of concepts. It consists of various terminologies and jargons that you might encounter while reading articles, blogs, going through courses or videos. In order to design a good system, or in order to understand someone else's design, you should be well aware about what does a particular design choice actually entail. In this course, I will cover a wide variety of System Design concepts, and try to explain them with the help of examples, so that you can easily understand these concepts. Please feel free to drop in comments if you want me to cover any System Design concept not yet covered in the course. Who this course is for: Software Developers who want to learn about System Design Concepts Computer Science graduates who are new to the System Design world Developers who are looking for cracking the System Design Interview Developers who are learning to design pieces of architecture in their day-to-day world Developers who want to revisit and hone their knowledge on System Design Concepts Show more Show less Instructor Shruti Mantri Architect 4.4 Instructor Rating 44 Reviews 138 Students 6 Courses I am software architect by profession. I have worked primarily in building e-commerce technologies and also designed systems in Big Data Analytics domain. I am an active technical interviewer, and have taken 500+ coding and software design interviews. I love to share technical knowledge and help budding engineers with their career growth. Show more Show less Udemy Business Teach on Udemy Get the app About us Contact us Careers Blog Help and Support Affiliate Impressum Kontakt Terms Privacy policy Cookie settings Sitemap © 2021 Udemy, Inc. window.handleCSSToggleButtonClick = function (event) { var target = event.currentTarget; var cssToggleId = target && target.dataset && target.dataset.cssToggleId; var input = cssToggleId && document.getElementById(cssToggleId); if (input) { if (input.dataset.type === 'checkbox') { input.dataset.checked = input.dataset.checked ? '' : 'checked'; } else { input.dataset.checked = input.dataset.allowToggle && input.dataset.checked ? '' : 'checked'; var radios = document.querySelectorAll('[name="' + input.dataset.name + '"]'); for (var i = 0; i (function(){window['__CF$cv$params']={r:'6779d8324c5f5427',m:'46fceddfe98aead7911794d10482f478b715130e-1627766152-1800-ATA3ag8lb724EcvDqtu0fgN3Qt9LMAOxzf/20pd/eQ9MwC5JVRgD3GkD3htGboVs291lCotUNlB196lupyu2Pl+i53VBRYNkWzDHEKC3RxBJrdPF8s3YLBvKiawKeamMehsujhGdvcK6WjiyzqefHTY=',s:[0x2e596f6642,0x0f8e8c8739],}})();
  2. Understand in detail how the Concepts are put into practical use Learn in a focussed manner what the system design jargons actually mean Course content 7 sections • 27 lectures • 1h 29m total length Expand all sections Introduction 3 lectures • 3min Introduction Preview 01:25 Course Objectives 01:06 About the Author 00:34 Scalability 6 lectures • 16min Latency 02:42 Throughput 00:43 Vertical Scaling 01:13 Horizontal Scaling 01:12 Load Balancers 05:28 Stateful and Stateless Applications 04:41 Databases 4 lectures • 19min Relational and Non-relational Databases 04:15 ACID and BASE Properties 07:25 Partitioning and Sharding 03:59 In-memory Databases 03:47 CAP Theorem 3 lectures • 9min Consistency, Availability and Partition Tolerance 01:18 CAP Theorem 04:13 CAP Theorem in Practice 03:32 Caching 3 lectures • 10min What is Caching? 05:14 Caching vs In-memory Databases 01:25 Cache Writing Policies 02:54 APIs 5 lectures • 26min SOAP vs REST vs GraphQL 05:09 Types of HTTP requests 08:58 Common HTTP Responses 06:10 Synchronous and Asynchronous calls 02:15 Blocking and Non-blocking calls 03:35 Messaging 3 lectures • 6min HTTP vs TCP vs UDP!? 01:52 Websockets 01:15 Message Broadcasting 03:13 Requirements Basic knowledge of software development Description (Coupon code: F8C5644BC8EADEE3B29C) This course will explain you concepts related to System Design. This will help budding computer science graduates and software developers to become good architects. This will also help you to prepare for technical System Design interviews. This course can also be used as a goto course for refreshing your system design concepts. Introduction to Course As a computer engineer, be it student, developer or an architect, you are actively involved in designing systems. These systems can vary from small micro-services to large distributed systems. While designing such systems, it is very necessary that you are clear on the basics of system design. System design involves a large variety of concepts. It consists of various terminologies and jargons that you might encounter while reading articles, blogs, going through courses or videos. In order to design a good system, or in order to understand someone else's design, you should be well aware about what does a particular design choice actually entail. In this course, I will cover a wide variety of System Design concepts, and try to explain them with the help of examples, so that you can easily understand these concepts. Please feel free to drop in comments if you want me to cover any System Design concept not yet covered in the course. Who this course is for: Software Developers who want to learn about System Design Concepts Computer Science graduates who are new to the System Design world Developers who are looking for cracking the System Design Interview Developers who are learning to design pieces of architecture in their day-to-day world Developers who want to revisit and hone their knowledge on System Design Concepts Show more Show less Instructor Shruti Mantri Architect 4.4 Instructor Rating 44 Reviews 138 Students 6 Courses I am software architect by profession. I have worked primarily in building e-commerce technologies and also designed systems in Big Data Analytics domain. I am an active technical interviewer, and have taken 500+ coding and software design interviews. I love to share technical knowledge and help budding engineers with their career growth. Show more Show less Udemy Business Teach on Udemy Get the app About us Contact us Careers Blog Help and Support Affiliate Impressum Kontakt Terms Privacy policy Cookie settings Sitemap © 2021 Udemy, Inc. window.handleCSSToggleButtonClick = function (event) { var target = event.currentTarget; var cssToggleId = target && target.dataset && target.dataset.cssToggleId; var input = cssToggleId && document.getElementById(cssToggleId); if (input) { if (input.dataset.type === 'checkbox') { input.dataset.checked = input.dataset.checked ? '' : 'checked'; } else { input.dataset.checked = input.dataset.allowToggle && input.dataset.checked ? '' : 'checked'; var radios = document.querySelectorAll('[name="' + input.dataset.name + '"]'); for (var i = 0; i (function(){window['__CF$cv$params']={r:'6779d8324c5f5427',m:'46fceddfe98aead7911794d10482f478b715130e-1627766152-1800-ATA3ag8lb724EcvDqtu0fgN3Qt9LMAOxzf/20pd/eQ9MwC5JVRgD3GkD3htGboVs291lCotUNlB196lupyu2Pl+i53VBRYNkWzDHEKC3RxBJrdPF8s3YLBvKiawKeamMehsujhGdvcK6WjiyzqefHTY=',s:[0x2e596f6642,0x0f8e8c8739],}})();
  3. Learn in a focussed manner what the system design jargons actually mean Course content 7 sections • 27 lectures • 1h 29m total length Expand all sections Introduction 3 lectures • 3min Introduction Preview 01:25 Course Objectives 01:06 About the Author 00:34 Scalability 6 lectures • 16min Latency 02:42 Throughput 00:43 Vertical Scaling 01:13 Horizontal Scaling 01:12 Load Balancers 05:28 Stateful and Stateless Applications 04:41 Databases 4 lectures • 19min Relational and Non-relational Databases 04:15 ACID and BASE Properties 07:25 Partitioning and Sharding 03:59 In-memory Databases 03:47 CAP Theorem 3 lectures • 9min Consistency, Availability and Partition Tolerance 01:18 CAP Theorem 04:13 CAP Theorem in Practice 03:32 Caching 3 lectures • 10min What is Caching? 05:14 Caching vs In-memory Databases 01:25 Cache Writing Policies 02:54 APIs 5 lectures • 26min SOAP vs REST vs GraphQL 05:09 Types of HTTP requests 08:58 Common HTTP Responses 06:10 Synchronous and Asynchronous calls 02:15 Blocking and Non-blocking calls 03:35 Messaging 3 lectures • 6min HTTP vs TCP vs UDP!? 01:52 Websockets 01:15 Message Broadcasting 03:13 Requirements Basic knowledge of software development Description (Coupon code: F8C5644BC8EADEE3B29C) This course will explain you concepts related to System Design. This will help budding computer science graduates and software developers to become good architects. This will also help you to prepare for technical System Design interviews. This course can also be used as a goto course for refreshing your system design concepts. Introduction to Course As a computer engineer, be it student, developer or an architect, you are actively involved in designing systems. These systems can vary from small micro-services to large distributed systems. While designing such systems, it is very necessary that you are clear on the basics of system design. System design involves a large variety of concepts. It consists of various terminologies and jargons that you might encounter while reading articles, blogs, going through courses or videos. In order to design a good system, or in order to understand someone else's design, you should be well aware about what does a particular design choice actually entail. In this course, I will cover a wide variety of System Design concepts, and try to explain them with the help of examples, so that you can easily understand these concepts. Please feel free to drop in comments if you want me to cover any System Design concept not yet covered in the course. Who this course is for: Software Developers who want to learn about System Design Concepts Computer Science graduates who are new to the System Design world Developers who are looking for cracking the System Design Interview Developers who are learning to design pieces of architecture in their day-to-day world Developers who want to revisit and hone their knowledge on System Design Concepts Show more Show less Instructor Shruti Mantri Architect 4.4 Instructor Rating 44 Reviews 138 Students 6 Courses I am software architect by profession. I have worked primarily in building e-commerce technologies and also designed systems in Big Data Analytics domain. I am an active technical interviewer, and have taken 500+ coding and software design interviews. I love to share technical knowledge and help budding engineers with their career growth. Show more Show less Udemy Business Teach on Udemy Get the app About us Contact us Careers Blog Help and Support Affiliate Impressum Kontakt Terms Privacy policy Cookie settings Sitemap © 2021 Udemy, Inc. window.handleCSSToggleButtonClick = function (event) { var target = event.currentTarget; var cssToggleId = target && target.dataset && target.dataset.cssToggleId; var input = cssToggleId && document.getElementById(cssToggleId); if (input) { if (input.dataset.type === 'checkbox') { input.dataset.checked = input.dataset.checked ? '' : 'checked'; } else { input.dataset.checked = input.dataset.allowToggle && input.dataset.checked ? '' : 'checked'; var radios = document.querySelectorAll('[name="' + input.dataset.name + '"]'); for (var i = 0; i (function(){window['__CF$cv$params']={r:'6779d8324c5f5427',m:'46fceddfe98aead7911794d10482f478b715130e-1627766152-1800-ATA3ag8lb724EcvDqtu0fgN3Qt9LMAOxzf/20pd/eQ9MwC5JVRgD3GkD3htGboVs291lCotUNlB196lupyu2Pl+i53VBRYNkWzDHEKC3RxBJrdPF8s3YLBvKiawKeamMehsujhGdvcK6WjiyzqefHTY=',s:[0x2e596f6642,0x0f8e8c8739],}})();