Today's Progress:
- Solved 5 DSA Questions on Sliding Window and Kadane's Algorithm-
- LC 53. Maximum Subarray
- LC 918. Maximum Sum Circular Subarray
- LC 978. Longest Turbulent Subarray
- LC 219. Contains Duplicate II
- LC 1343. Number of Sub-arrays of Size K and Average Greater than or Equal to Threshold
Today's Progress:
- Learnt about the fundamental cloud services that one essentially needs
- Spent the last 2 days wrapping up my last reports for college.
Thoughts: Realised how Cloud services actually function - while some of the services are definitely creative solution, a lot of them are essentially just wrapper classes of the infrastructure and other open source technologies, all have been abstracted somewhere away from the user so that the developer does not have to worry about those complications while scaling their product or application.
Link to Video: https://www.youtube.com/watch?v=gcfB8iIPtbY
Today's Progress:
- Learnt about Distributed Cache, it's use cases and cache policies, addressed the cache consistency problem, thrashing
- Studied about API design, points to keep in mind for good API design, understood how optimisation might sometimes lead to a poor design, understood that HTTP is a stateless protocol and how endpoints/systems expose their APIs using HTTP.
Link to Video: https://youtu.be/_YlYuNMTCc8?list=PLMCXHnjXnTnvo6alSjVkgxV-VH6EPyvoX
Today's Progress:
- Learnt about Database sharding, difference between horizontal and vertical partitioning, along with drawbacks of sharding and how to overcome them
- System Design of Tinder
Thoughts: prepared how to ans database sharding related questions during interview, However, solving a complete system design question like tinder design still feels like I need a few more days to brush up my skills before I can do that effortlessly for interview.
Link to Video: https://youtu.be/tndzLznxq40?feature=shared
Today's Progress: Revised the OSI model, learnt how to define session and presentation layer for interviews...
Thoughts: Good revision, feel like session presentation layer is not that important for college, since it's rarely spoken about, but might be useful for interviews for network engineering roles. Glad I found Hussein Nasser's playlist
Link to Video: https://youtu.be/7IS7gigunyI
Today's Progress: Started Gaurav Sen's playlist of System Design, learned about Load Balacing, Consistent Hashing and Monolithic architecture vs Microservices architecture.
Thoughts: Good start, I wanna try and be able to think for myself and come up with my own solution during system design interviews. Gaurav Sen's Playlist looks like a good place to start
Link to Playlist: https://youtube.com/playlist?list=PLMCXHnjXnTnvo6alSjVkgxV-VH6EPyvoX&feature=shared