#AsliEngineering

The System Design Masterclass


A masterclass that helps you become great at designing scalable, fault-tolerant, and highly available systems.


Admissions for the December 2022 Cohort are now open.


December 2022 Cohort

8 weeks course 3 seats remaining

Starts 3rd December, 2022

9:00 to 11:30 am IST on Saturdays and Sundays


During the live sessions, you will learn the intuition behind building scalable systems from Arpit. You will also be interacting with the entire cohort and learning from their experiences.


Enroll Now

₹34,999 $549

inclusive of all the taxes


YOU'LL GET


40+ hours of Live Classes on Weekends IST

Three 1:1 Mentorship Sessions

Lifetime access to the cohort recordings

Lifetime access to new system discussions

Lifetime access to the Network and Community

Open forums and interaction with the cohort

Doubt resolution during and post live sessions


Enroll Now

Note: there is no discount on the course pricing; I feel discounts are unfair to the folks who paid the full; the price of the course is subject to a yearly hike.


If you have questions or need any clarifications before enrolling, please reach out to me at arpit.masterclass@gmail.com.

Learn at your own pace

40+ hours

16 session recordings

~28 questions covered


You will get access to the recordings of the completed sessions from the June 2022 cohort; so that you binge watch quickly and prepare yourself for the task at hand.


Buy Now

₹32,999 $525

inclusive of all the taxes


YOU'LL GET


All the recordings from June 2022 cohort

Three 30-mins 1:1s (within 60 days from purchase)

Lifetime access to the cohort recordings

Lifetime access to new system discussions

Lifetime access to the Network and Community


Purchase Recordings

Note: there is no discount on the course pricing; I feel discounts are unfair to the folks who paid the full; the price of the course is subject to a yearly hike.


If you have questions or need any clarifications before enrolling, please reach out to me at arpit.masterclass@gmail.com.

The Program

This is a flagship, intermediate-level cohort-based course aimed at providing an exclusive and crisp learning experience. The program will cover most of the topics under System Design and Software Architecture including but not limited to - Architecting Social Networks, Building Storage Engines and, Designing High Throughput Systems.

The program will have a blend of Live Classes happening on Weekends, 1:1 Mentorship sessions, and self-assignments. The program is designed to be intense and crisp to accelerate learning. In the course, we will

  • have in-depth discussions about trade-offs and tech stack
  • discuss the evolution of architecture as the traffic surges
  • be covering key design decisions for efficient implementation
  • be doing a lot of brainstorming just like how it happens in your org
  • be designing cost-efficient architectures, mimicking the real-world design

Program pre-requisites

The course operates at an intermediate-level and you would get 100x value out of it if

  • You have at least 6 months of work experience
  • You are interested in learning how real systems are built
  • Have watched at least a few System Design videos on YouTube
  • You have a basic knowledge of cloud offerings like S3 and SQS
  • Have couple of months of time over weekends that you can dedicate towards upskilling

I have created this playlist of videos that would give you a good headstart for this course. Feel free to go down the rabbit hole and explore in detail the tech mentioned in the playlist.

Why a cohort based course?



cohort

/ˈkəʊhɔːt/

noun

A cohort is a small group of students who work through a curriculum together to achieve the same learning objective.



Small and Focussed Group

Each cohort will have close to ~70 people ensuring you have a richer learning experience.

Thrive Together

Unlike MOOCs where the information flow is unidirectional, the cohort here will thrive on interactions and collaborations.

Discuss and Learn

Learning happens when we discuss, and hence everyone is encouraged to speak, put forth opinions, and discuss.

Why should you join?

The primary objective of this program is to make you comfortable at building systems that are scalable, fault-tolerant, and reliable. But here is what you could reap out of it.



Design systems like a pro

The course will make you comfortable at designing any system, no matter how stringent the requirements are.

Know the unknowns

Learn some of the most interesting concepts, super-clever algorithms, and sophisticated architectures. You are bound to have mind-blown moments.

1:1 Mentorship

When in a dilemma about an architectural decision, engineering challenges, career advice, or general mentorship, get your doubts cleared during your 1:1s with Arpit.

Crack the interview

Be it FAANG or your dream startup, you would be at ease while designing systems in the interview round.

Upskill and level-up

Learn the designing paradigms and upskill yourself to accelerate your career growth and stand out.

Network and Community

Perhaps the most interesting takeaway will be your new network, friends, and a lot of memories.

The world is learning

People from all over the world have mastered System Design through this course.


System Desgin Masterclass Demographic
1000+
ENGINEERS


13
COHORTS


11
COUNTRIES


Who took this course?

Folks belonging to some of the best companies and high thriving startups have taken this course, the list includes the likes of


Program outline

You can find detailed problem statements in this Github repository.



Foundation

Week 1

The first week is about learning the macro and micro components of System Design.


Topics and agenda
  • How to approach System Design
  • Designing Online/Offline indicator
  • Designing a Blogging Platform
  • Scaling and Caching strategy for Blog
  • Delegation and Async Processing
  • Supporting million concurrent users
  • Designing communication paradigm
Checkout detailed problem statements

Databases

Week 2

This week, we learn everything about databases, from SQL to NoSQL to Embedded, learn how to scale them.


Topics and agenda
  • SQL Transactions
  • Database Indexes and Locking
  • Designing Airline Check-in System
  • Designing SQL backed KV Store
  • Scaling relational databases
  • NoSQL databases: when, where and why?
  • Designing: Slack's Realtime Communication New
Checkout detailed problem statements

Going Distributed

Week 3

The third week will be about understanding Distributed Systems and the challenges that come while building them.


Topics and agenda
  • Key to a good distributed system
  • Designing Load Balancers
  • Remote and distributed locks
  • Designing ID Generators
  • Open QnA and Doubt Resolution
Checkout detailed problem statements

Building Social Networks

Week 4

This is when we start modeling and building real-world systems, and we start with Social Networks.


Topics and agenda
  • Day 0 Tech Stack
  • Designing Image uploader service
  • Designing HashTag extractor service
  • Designing Message Indicators, and 4 more
Checkout detailed problem statements

Building Storages

Week 5

This week will be about building ephemeral, persistent, reliable and durable storage engines.


Topics and agenda
  • Designing Distributed Caches
  • Designing Multi-Tiered Storage New
  • Designing a Word Dictionary
  • Designing Log-Structured KV Store
Checkout detailed problem statements

Building High Throughput Systems

Week 6

This week, we level-up and build systems that are heavily concurrent and required to deliver very high throughput.


Topics and agenda
  • Designing S3
  • Designing Cost Efficient Orders Service New
  • Designing LSM Trees
  • Designing Video Processing Pipeline
Checkout detailed problem statements

IR Systems and Adhoc Designs

Week 7

This week is about understanding Information Retrieval Systems and discuss some interesting adhoc systems.


Topics and agenda
  • Designing Search Engines
  • Designing Recent Searches System
  • Distributed Task Scheduler
  • Designing Message Brokers like SQS
  • Designing Flash Sale
  • Designing Cricbuzz's Text Commentary
Checkout detailed problem statements

Building Algorithmic Systems

Week 8

The final week will be about exploring systems that are driven by a super-clever algorithm.


Topics and agenda
  • Algorithm behind File Sync
  • Understanding and Scaling GeoSpatial Search New
  • Designing User Affinity Service
Checkout detailed problem statements
This is how we designed notifications for Instagram 👇

A video snippet straight out of one of the live session



Arpit Bhayani

Hi, I'm Arpit Bhayani 👋


I am a CS engineer passionate about building systems that scale and currently working with Google as a Staff Software Engineer with the Dataproc team and making Apache Spark faster. Throughout my career, I have worked across a variety of domains and have built systems, services, and platforms that scale to billions; and have worked at companies like Unacademy, Amazon, Practo, and D. E. Shaw.

Post my masters in CSE from IIIT Hyderabad I joined D. E. Shaw for a short stint of 2 months, before moving to Practo and working there as a Platform Engineer, building and owning close to 8 different microservices. Post Practo I worked at Amazon on their primary mission-critical E-Commerce Database and built Data Pipelines that cold tiered the stale data.

After quitting Amazon in 2018, I joined Unacademy as their first Technical Architect and there I designed, built, managed, and scaled services like Search, Notification, Logging, Deployment Engine, and many more. I then transitioned into the leadership role and operated as a Director of Engineering and led the Site Reliability and Data Engineering verticals.

I run a YouTube channel named Asli Engineering where I post videos about Real-world System Design, Language Internals, Distributed Algorithms, and much more. The channel right now as a subscriber base of 20k.

On the side, I am building my own database named DiceDB that aims to be an in-memory KV store optimized for CPU intensive workload. I am also building a programming language named Revine that would aid kids to develop logic and programming intuitions by building micro-games and animations.

What worked the best?

From the reviews and feedbacks I gathered, here are a few key things that worked for folks who took this course.


structured and well organised

quality and non-repetitive content

minute-details covered

open ended discussion

learning community

much more than blogs we find

lego blocks

notes

working through problems as a group

What people say about this course?

Some testimonials from the people who recently took this course.


Ashish Vijaywargiya October 2022

Arpit’s System Design Masterclass is the best one in the class. I come from a Monolith architecture background and learned many things in this class on the Micro-services ecosystem side. I have observed the following cool things here:

  1. Our session always started at 8:50 AM, that was a 10 minutes early from the scheduled time. Arpit discusses the feedback, questions, suggestions that were given by anyone from the previous class.

  2. When you are in a session you get a feeling that you are working in team, in a same project. That thing makes you very comfortable and help you to uplift fast.

  3. There is a QnA session that starts at 11:30 and lasts as long as you have anything to discuss.

  4. Arpit always has a logical answer to a questions that you ask him.

  5. Arpit mostly focuses on the Best Practices of doing something.

  6. He always recommend you to build a “Hello World” of anything which you are learning.

  7. He is always available for you whether it’s in class, an email, Discord or LinkedIn conversations.

  8. Arpit’s energy level is very high. I always get a feeling that he is working 24x7 to uplift his knowledge and then spread it among others. He always keep smiling and encourage us to go extra miles to achieve something amazing in the technology world.

  9. He reads many technical papers from Google Scholar and try to implement shared recommendations. He talks about all those experience in his class as well.

  10. No doubt, He is an “Asli Engineer” who has worked on a very large scale projects, got a practical exposure of everything.

He helps you in the most important aspect, that is “How to think about any problem and then how to take steps for the right solution.”

At the end, I will say(Just in case if you are still confused from his course) “Dikhawe pe mat jao, apni akkal lagao(An old tagline from Sprite ad)”. Just explore following things and you will get the answer:

  • Arpit’s LinkedIn profile
  • His Youtube channel
  • His website

That’s all from my side. All the very best, Arpit. Whatever you are doing, we are proud of you. And we are very happy from joining your masterclass. Thank you.

Bande mein hai dum!! 🙏🙂

Sammyak Sangai May 2022

#Asli Engineering!! Definitely lived up to the hashtag!! When I came across this course, I really liked the syllabus and the way it focused on real life systems. Most of the material related to system design I found online was quite theoretical and left me wondering whether I would ever need it. However this course was different. It wasn’t a one way traffic. To me, it was almost like a fast-forward version of how that particular system must have been designed when it came into existence and what must have been the thought process of the engineers who built it. It was more of a discussion with Arpit doing the handholding if someone misses something and sharing terrific insights about real life systems. Not just the design discussions, but regular question-answering sessions also provided different perspectives about why that particular system should be designed in that fashion and also how things actually work in different companies. There were so many new platforms and systems that I hadn’t even heard of before I took this course.

Arpit has structured this course in a very optimal way, so that you always have something to take away from a session. Every week’s sessions left me wondering. How does this guy manage all this ?? and that too with such passion and energy!!

I highly recommend taking this course, especially for those who are at the start of their careers like me as you would also get to learn a lot from the senior folks as well who take this course. Also the learning curve would be extremely high.

PS: This course was the most productive thing I did in the last 7-8 weeks. My main take away from the course was most the systems that are extremely successful are quite simple and intuitive. It’s just that we as engineers should know how to approach a problem and ask the right questions. Arpit’s course focuses on that a lot!!

Jyoti Dhiman June 2022

Being in the industry for six years, I had mostly worked in the data domain and had only surface knowledge of the system design components - especially from the application side. Though I am a reader and have read many blogs on system design, application designing and internals but never grasped the concepts so clearly until I joined this masterclass!

I was so grateful to be part of Arpit’s cohort and learned from him in many ways than one, his attention to details while designing systems, focusing on real systems and examples, scalability and also making sure all questions are answered before closing for the day.

Summarizing, I would say, it is a MUST DO COURSE FOR EVERY ENGINEER!!

Thanks Arpit for sharing your knowledge and inspiring so many people :)

Vishesh Pahuja May 2022

I got to know about Arpit and his course in late 2021 though one of my friend who already took his course but I signed up for May 2022 cohort, now after completing this course I wish I could have signed up early but its “Better late than never”.

To support my above statement, my opinion about this course:

  1. It boosts your curiosity, which is very much needed if you are working in IT. For me it has not just added to my curiosity but multiplied.

  2. You become very much aware and see things very differently which you have already read from your school, college time and using it daily. (*Mindset shift)

  3. The course structure is very well designed from Fundamentals to designing highly scalable systems.

  4. The brainstorming session throughout the course which is very much needed.

I would highly recommend this course to all the engineers out there if you really wanna ignite the #AsliEngineer in you. (Discord community, Cracking interviews, …, etc all are the bonus). Worth investing.

Thanks a ton Arpit for putting your great efforts to this course. :)

Rohan Verma May 2022

The lectures by Arpit, are explained thoroughly and reinforced through practical usecases. It’s best suited for developers that already know SQL and have some industry experience - Junior/Mid-level Backend engineers looking to move to Senior levels or experienced engineers looking to refresh knowledge. The lectures helped me to understand the DB internals. In-depth discussion of LSM-trees and how one can use the adhoc components built on LSM-trees & other databases is just mind blowing. Lectures are a guide on “How to optimize the application as well as DB performance in conjunction”. Emphasis on core concepts by Arpit will make entire system design like a game of ‘LEGO Building block’.

This course will make you love engineering again if you’re put-off by boring 9 to 5 job. I would describe the whole vibe of the course as a discussion with experienced engineer rather than a traditional structured academic course. The course is worth every penny you will ever invested.

Asutosh April 2022

“Your enthusiasm is contagious” - a fellow student said to Arpit on our last day of the cohort, and I couldn’t agree more.

  • It goes beyond what’s just needed for interviews and tries to address difficult design choice questions

  • The classes are well organised: They aren’t just a unidirectional flow of information. The students get to participate in brainstorming the problem statement, building them from scratch, and Arpit ensures to nudge us just enough to keep us on track, and more often than not, the students themselves only are able to come up with quite similar approach as Arpit later discusses. This is a really good quality of a teacher: not giving away the answer, but at the same time, making the students capable enough to arrive at the answers by themselves.

  • No class ends with a student having some doubt: At the end of each class, there is an open discussion, where all doubts related to the topics discussed are clarified, and then only the class is concluded.

  • What makes Arpit stand out from other instructors out there is that most of the content discussed in the classes, Arpit had first hand experience building similar systems in production. So, he is teaching from his practical experience.

  • Recently, he announced system design video library: All the best discussions for each problem statement would be updated here and all the new problem statements covered in the future batches will also be made available to all the students who had enrolled in any cohort. Life-long learning, what else can one ask for

  • One major learning was: We always think too ahead and complicate things. Repeatedly throughout the course, just how starting simple and iterating over it with common sense leads to good robust designs instills a lot of confidence in students, making them realise designing system is no rocket science, its just taking one step at a time, and being aware of the already available solutions out there and building on top of them.

  • And finally, like I mentioned in the beginning, apart from just the content of the course, there’s a lot more to it: I’ll highly recommend another fellow engineer just to be part of the discussions: the enthusiasm with which Arpit discusses in all the classes is something to witness. It takes you back to the point of thinking why all of us got started with software engineering in the first place: to get the sheer joy of building things. Down the line, its very normal to lose motivation or not feel as enthusiastic as we were when we were fresh out of college. Its really one of an experience to witness Arpit’s enthusiasm in all these classes, how he has sustained it for so long over these years, and if you look closer, it’ll tell you the BTS of making of a great engineer, what sets a great engineer apart from others: because of their ability to find pleasure and being hungry for more always.

Pratik Pandey April 2022

Arpit’s cohort is the answer for everyone who want to genuinely learn(or grow their knowledge of) how to design highly scalable & resilient systems, not just how to crack system design interviews.

Arpits’s approach of problem solving, starting from the ground up, asking “WHY” for every design choice, big or small. Arpit makes you think of that one remote performance improvement scenario and it’s this attention to detail, that makes Arpit’s cohort truly unique and informative.

Couple the above with the cohort’s diverse thought processes and experiences, and you get yourself a fabulous learning environment. I cannot remember one session post which I didn’t have any new takeaways/learnings.

The cohort has been the best part about my weekends, and I definitely recommend it to everyone!

What you get - Amazing Mentor, Great discussions/Brainstorming sessions & #AsliEngineering concepts!

Mohammed Kashif Jan 2022

I will start from the beginning. I have been following Arpit on LinkedIn, reading his blogs and YouTube videos, etc., since quite some time. What really struck out to me was the fact in every video he was covering topics that were not usually covered by people who were targetting for interviews. Just take a look at his CPython tutorials on YouTube and you will undestand what I mean. You could see genuine interest for engineering and breaking things apart to understand how they work only to put it back together and build it again from the scratch. This is what really caught my interest. You don’t see that interest usually in other engineering or CS related blogs. This course was no different.

Right from the beginning he made it pretty clear this is not some course you would use for your interview prep but rather expand upon your software engineering understanding. Even before day 1, he shared topics and reading material saying that you should come prepared after reading these topics in order to understand whats going to be discussed in the classes. The best part that I liked about his classes were, that he approached every system design problem with a Day 0 approach and then build upon the scaling part. I mean, it was not like “Hey, this is the most optimal solution with some jargon thrown around”, but rather, “This is our problem, lets build the most basic solution possible, and then try to scale it up and understand concepts while we do that.”. His energy is downright contagious when he is explaining difficult topics. I have seen him answer the most basic questions and go to extreme lengths to explain rather difficult topics in a very basic manner. My favourite lecture by far was Distributed ID Generators. Such a simple concept, such a simple design and he just nails every concept in the head. You would genuinely be amazed at his ability to spark that curiosity inside of you to search for the solution yourself.

Additionally, he takes effort to make the class as engaging as possible. It’s not like, he will go on blabbering for 2-3 hours continuously and take questions or queries in the end. No, he makes sure that people are engaged, he keeps asking questions about the solution, poking holes and making us question the design ourselves. You must have heard about some Physics/Chemistry/Maths teachers who make the class so interesting and genuinely develop curiosity for those subjects in the students mind. Arpit, does exactly that for system design. He genuinely has a passion for teaching.

I really enjoyed my time in this course. There are lot of things that I have to learn from my end to fully grasp the concepts and implement the concepts that I learned, and thanks to Arpit, I know where to look for them now :D

To summarize, 12/10 would highly recommend this course :D.

Kiran Raj S R Jan 2022

TLDR - Arpit’s enthusiasm!

However, if you want my detailed testimonial it is below.

Top to bottom approach based learning - Instead of learning what cache is, what load balancer is. He picks a problem, designs a solution that is acceptable for Day 0, then introduces failures using scale/reliability/… and introduces these components to solve the failures.

Arpit neither spoon feeds you nor gives you just an overview of things. He explains concepts that are theoretical (for example: log based file system) and pushes you to experiment few things to learn yourself (for example: reservation systems using different kinds of locks). Arpit wants you to feel the same magic he felt when implementing these systems.

Every problem feels like a typical interview question and answer, but he has some gotchas or wow moments which make you realize this is so cool (from his past experience). And best part is he tries to push everyone in this direction and make them answer instead of giving the answer away.

Arpit also explains the philosophical side of engineering, why you shouldn’t over engineer things on Day 0, how technology inspires from real-world (he explained how flash sale happens offline and how it mimics the similar behavior) and makes it fun throughout.

Though Arpit does 90% of the things, you still need to do 10% which will help you in long run, 1. Read the pre-reads that he shares every week. 2. Ask questions - Arpit loves answering them even if it is dumb. Also, one question doesn’t have one correct answer. Express your thoughts about the problem/solution, Arpit will listen, learn and improvise it for next cohort. He added at least 2 new cool stuff based on learning from the past cohorts. 3. Take note of keywords or new concepts and explore them later. 40 hours is never enough for Arpit to teach you everything. 4. Try to implement whatever is possible. 5. Schedule 1:1 with him anytime to discuss more.

Dhritiman August 2022

Loved this course. Arpit brings his vast experience in designing systems to cover some of the most important system design problems. What I found unique about this course was instead of this being a monologue, Arpit encourages brainstorming as part of the course o guide the thought process of how to go about designing these systems. He also placed emphasis on designing simple systems that work as compared to overly complicated systems. The course is well structured in the sense that, Aprit uses concepts discussed in a previous class in topics for a future class, thereby letting people relate the concepts.

Overall the course is very well designed and well delivered and I would highly recommend anyone interested in learning systems design to take this course.

Sarthak August 2022

I joined the cohort to expand and validate my knowledge on system design. Initially I started participating in the cohort and got diverse perspective about the same problem from others. But later I just started listening the cohort, it immensely helped me unlearn, learn and re-learn the topics in depth.

Arpit is highly enthusiastic when it comes to delivering a topic and the best part is you get to hear different ways to approach the same problem. The best part about Arpit was he never jumped into a solution, which helped us push towards thinking different directions, now when I look at any topic or read any blog I have different ways I can approach about not just limited to one system or component. The presentation that Arpit made during the cohort were very well researched and above the bar.

Before attending this cohort I used to think system design is pretty much just putting boxes with appropriate non-function requirements but after attending the cohort I can see/approach systems in a different perspective. I think this was one of the best investment I have made so far.

Highly recommend this cohort!! – Sarthak

Mahaditya Kaushik August 2022

I loved this course. Before starting I was just a beginner at system design but now I feel like I can design any system.

This course is very engaging. There is a lot of active learning. I would think of a solution and discuss it, to soon realise why it is bad (or good). Over the course of this masterclass I have been able to develop an intuitive understanding of not only how to design scalable systems but also why some systems don’t scale, when the system is getting complicated and how to simplify it. Overall the course builds up really well from the simple concepts to more complex ones.

Something really good about this course is that Arpit keeps systems grounded in reality and focuses on implementation as well. So I never felt as if we were building hypothetical systems. In fact I could see myself implementing them.

This course has increased my interest in computer science many-folds. It has made me a better engineer.

Satvik June 2022

While the content is top-notch, something which many of my fellow participants talked about, I shall discuss some other invaluable takeaways from Arpit and the System Design masterclass:

  1. Communication - It’s a bidirectional communication. It’s not Arpit simply giving a out a lecture, it is us the participants chiming with our approaches with Arpit orchestrating the discussion, probing us and questioning us on even the smallest of our design decisions. After this he collates all the points to converge on the approach. After a few sessions, I was accustomed to asking myself - “why I am choosing this database or this communication mechanism over the other, and, can this be done better or more cost-efficiently”?

  2. Intuition - Probably the MOST IMPORANT TAKEAWAY from the masterclass - We do not merely learn how to construct popular systems and use-cases like scaling Instagram notifications, designing Dropbox multi-client sync or designing S3. We learn the way we should approach each use-case considering the storage, network and cost, to name a few. In other words, his teaching helps us build the intuition to tackle the diversity of use cases in system design.

  3. Lego style architecture - Arpit rarely builds a entire system in one go. Rather he dissects them in components and teaches them one at a time, constructing it from the ground up. I was surprised to find that how the components we built in previous weeks could be conveniently plugged in and used as black boxes into complex systems we designed in the later weeks.

  4. Structure - Each session has a discipline - problem statements, followed by discussion and them formal coverage by Arpit. No nuisance or surprise which helps us focus solely on the content and make the best out of the discussion. To add to this Arpil laid out the requirements clearly which made the focus razor sharp E.g. If we are designing Dropbox, today we shall focus on resumable sync, not the entire Dropbox. The communication between client and server could use the Kafka pipeline we built in a previous week.

  5. Pragmatism: Real systems are simple, scalable and cost-efficient - one of the most important takeaways from the masterclass. Theoritically, we can assign huge number of redis clusters or Dynamo DB nodes, but coming to real life scenarios - we could be left bankrupt real soon as these resources don’t come cheap. Arpit helps us ponder over these important nuances and guides us how to build optimizations over these.

  6. Start small, add complexity with time and metrics - Another key takeway. Start with the day 1 architecture and add shards/nodes/clusters/load balancers and what not - depending on how the scale grows - is something I learnt from the sessions.

  7. Break it down to the root - Each system we covered, we designed it from the ground up - taking into mind the storage, communication and cost - to name a few. Nothing was taken from granted - I was very amused when we actually discussed how to build a load balancer or design S3 - things i never cared to ponder on.

  8. Diversity of Participants - The June cohort had participants having experience ranging from 2 years to 11 years (approximately), each bringing forth their knowledge and expertise into the discussions.

  9. Continuous feedback - Arpit made available a Google form which could be filled anonymously after sessions, if one had concerns about anything regarding the delivery or content of the session. Arpit read it out and made sure to address this concerns in the upcoming sessions.

  10. Professional growth - Something that took me off guard. Many-a-times, Arpit gave up tips on what design decisions would not optimize and add value to the system we were creating, but could also help differentiate us from our fellow engineers and assist us in climbing the corporate ladder.

Finally, Arpit’s love and passion for architecturing systems and appreciating engineering excellence is contagious, to say the least.

Sign up to experience #AsliEngineering at it’s truest sense!

Sagar Kanojia June 2022

Taking Arpit’s masterclass is one the best investment I have done in my learning. In every session you will learn something new. The course is exactly as it is described. #AsliEngineering

Everybody says dig deeper, Finally someone who carved out a clear path on how to dig deeper.

  • How to keep things simple and elegant.

  • How to think like a principal engineer.

  • When not to over engineer.

  • Reading research paper.

  • Also how to relate system design with real life process and take inspiration from that and much more.

I feel more confident and empowered. It had made me more clear about which path I need to follow in my career and how to excel in it.

Also, I got lucky to be a part of the first meet-up and meet my amazing peers across all cohorts. Now I feel more obliged to work harder to be an Asli Engineer and live upto the name of this course.

Thank you so much Sensei for making me love Engineering more.

Vinay Kumar Agarwal June 2022

Beautifully designed and thought out course for mid-senior level engineers looking to get closer to high level systems and understanding the nuances involved.

Apart from getting the thorough understanding of high level system components like load balancers, API Gateway, etc, this course will help you to learn the way of solving system design problems in general. This is the best part about this cohort based course. Focus on designing traditional as well as non-traditional systems is something that makes this course one of the best choice out there.

Pre-reads, papers, videos and all the other content that is provided throughout the course helps in building and solidifying the understanding of the course content. Kudos to Arpit for putting his heart and soul into not just this course but engineering in general.

Loved all of it!

Chain Singh June 2022

I have gone through various youtube videos and books, but everywhere they will just say use Redis, use MongoDB, use this tech stack etc, but the motive behind using that tech was not mentioned any where. Even if it is mentioned, there was no detailed explanation from basic concept. Also everywhere I saw they designed architecture which is not at day 0. When we get requirement initially in real world, first we think day 0 then we scale and optimize. I learnt a lot from Arpit.

  1. How to start system design problem not even in interview but in real world when we get from product

  2. How to think day 0 architecture and optimize incrementally

  3. How to choose best fit tech from lot of available options

  4. How to choose cost effective tech

  5. Trade off of choosing the tech

Since he built the system, so he has practical knowledge not just randomly throwing some idea. This course helps us to be better software engineer, and software architect etc.

Raghav Nandakumar August 2022

I discovered Arpit’s YouTube channel and masterclass earlier this year when his “Designing Notifications for Instagram” video popped up on my feed. My interest was piqued by the manner in which Arpit deconstructed the problem and discussed the design with the audience, and I thus decided to sign up for the August cohort.

The sheer breadth + depth of topics covered by each week’s discussions and thoughtfully constructed pre-reads blew me away! Indeed, Arpit’s passion for system design and learning in general was infectious. He spent hours clarifying our technical queries about every system we discussed during the course, and in the process, we also learned a lot about the mental models that come into play when designing for scale.

Overall, it doesn’t matter if you’re specifically preparing for interviews or just curious about system design. This course (as well as the wider #AsliEngineering community) will be invaluable to anyone who wants to become a world-class software engineer. Thanks for the masterclass Arpit!

Manoranjith November 2021

One of the best learning experiences I ever had.

In the the 8 weeks, Arpit takes the cohort through a series of discussions starting from fundamental ideas around system design and explains how to apply them in a various contexts.

Each week was only better than the previous. The discussions usually started with a clear description of the problem to be solved, followed by an open ended discussion and then an extensive discussion of the optimal solution. The best thing about this approach is that, it helped me understand the thinking that could have possibly gone behind designing a particular system, rather than just understanding how it was designed.

Another aspect is that, most resources on the internet either focused on the high level ideas on designing a system or on the specifics of how to implement a system/feature using a particular product. But, in these course, Arpit blends both these aspects very well. It helped me gain a holistic understanding of the high level design, what products can be used, why and how to use them.

On a personal note, Arpit is a truly curious engineer and a passionate teacher. He is genuinely interested in sharing the knowledge and insights he has gained over the past few years and takes a lot of effort in doing it in the best possible way.

Frequently asked questions

You can always drop me an email at arpit.masterclass@gmail.com for other questions.


Is this course right for me?

This course is for any engineer who wants to learn System Design. The program is most suited to someone who has some industry experience, at least 6 months.

Will you be giving teaching for the entire duration?

Yes. I will be teaching the entire course online and live over Zoom and will be providing feedback and 1:1 mentorship.

Will there be a class every day?

The Live Classes will happen on Saturdays and Sundays as per the time mentioned on the webite with a possible extension of 30/45 mins.

Can I get this course reimbursed from my company?

Talk to your manager and check if they can sponsor this course. The invoice that will be issued is a legally valid and sound invoice that can be used for any kind of reimbursement.

Will there be reserved slots for 1:1 mentorship?

1:1 mentorship calls will happen on-demand, just drop me a message a day prior, and I will get our call scheduled.

Will there be assignments and hands-on projects?

No. I would recommend you implement the core of every single system we discuss ensuring you apply what you learn. I highly encourage you to implement seek help during 1:1 sessions.

Will the course cover LLD?

The course will cover some aspects of Database Design and its internals, but it will not cover writing and designing classes, and low-level design patterns. The course is typically aimed at covering the massive spectrum of System Design and Software Architecture.

Are assignments and projects mandatory?

No. But it is advisable that you complete them to get a better understanding of the system, algorithm, and business logic.

Will we also implement and see the systems in action?

Due to time constraints, it is not possible to implement every system; it is recommended that you self-implement the system and understand the low-level details. The course will definitely cover systems from every aspect.

Will there be a recording available for future reference?

Every single Live Class will be recorded, and you will be given lifetime access to it.

Is there a refund policy?

14 days refund window from the course commencement date on cohort based course, no questions asked. No refund for 'Learn at your own place'.

Where are the classes conducted?

All Live Classes will be online, over Zoom, and all you need is an internet connection to attend the live sessions.

Will you be the only one teaching this course?

The entire course including Live Classes will be conducted by me, Arpit Bhayani, no external TAs, mentors, etc. You will get to learn everything from the horse's mouth.

What are the programming pre-requisites?

It would help if you had to have work experience of 6 months, plus a basic understanding of one of the cloud providers like AWS, GCP, plus some basic understanding of high-level system design by watching already available YouTube videos. You can also find a few videos on this ppage that I would recommend you through.

How is this course different from free videos on YouTube?

This cohort-based course aims to be live, intense, and interactive. Traditional MOOCs (existing videos on the internet) cannot offer these benefits as they are unidirectional and optimizes for one-to-many. With this course being taught live, you can get instant resolution to your doubts. The discussion, collaboration, and networking will have a major impact on your overall learning as there will be cross-pollination of information.

If I have already watched System Design videos on YouTube, is this course still helpful?

Yes. The kind of depth which is touched in this System Design is unmatched. Even if you have watched all the System Design videos out there, you will still have moments that will blow your mind.

Will I be getting an invoice of Payment?

Yes. An invoice will be issued to you with all the legal and necessary details. This means your employer can choose to process this invoice and provide reimbursement.

Will you issue a course completion certificate?

I do not generate the certificate for every candidate, but if you need it, just drop me a message, and I will issue one right away.

Can I use my Credit Card or avail EMI to make the payment?

Yes, we support Credit Card, Debit Card, UPI, and Credit Card based EMIs having a duration of 3 months, 6 months, 12 months, and 24 months as offered by Razorpay.

Will I get access to videos and resources of past cohort?

Yes. You will be getting access to all the unique questions we ever covered during any cohort - past or future.




  • v13.8.5
  • © Arpit Bhayani, 2022

Powered by this tech stack.