Software Design and Microservices

This course is about to design a highly available, fault-tolerant, secure and scalable distributed system.
Rating: 3.7 out of 5 (68 ratings)
2,051 students
Software Design and Microservices
Rating: 3.7 out of 5 (68 ratings)
2,051 students
Software design
Microservice Architecture
Distributed Systems
Scaling microservices
Design database schema
Service communication
Design APIs
Concurrency pattern
Race condition and locking machenism
Fault tolerance


  • Basic object oriented programming
  • Knowledge of database
  • Basic knowledge of operating system
  • Computer science


In this course we will learn how to build a software which will be scalable, more secure and high available. We will discuss system design pattern by using an example of parking lot system which is asked in tier-A software companies. This course also includes OS concepts like concurrency, race condition and locking which will be used to design distributed system.

Who this course is for:

  • This course is designed for beginner, intermediate and software professional as well

Course content

3 sections • 19 lectures • 47m total length
  • Introduction


Senior Backend Engineer @ FinAccel Technology
Ashta Bhuja Tripathi
  • 3.7 Instructor Rating
  • 68 Reviews
  • 2,053 Students
  • 1 Course

• I am passionate about problem-solving, data structures and algorithms.

• Experienced in storage and finance domain.

• Experienced in microservices and distributed systems.

• Expertise in the application and server-side programming using C, C++, Python and Golang.

• 5 years of work experience in Software Development.

• Experienced in AWS services, Docker.

• Experienced in continuous integration tools.

• Experienced in scaled agile Product Development Life Cycle.

• Experienced in offline teaching to engineering students.