Don't leave your system design interview to chance. Sign up for Exponent's system design interview course today: bit.ly/3NLRGRI
@stanleymakori777 Жыл бұрын
But the create API is only factoring in text mesages. What about posts that have videos or images ?
@Nexatek7 ай бұрын
If the quality of your courses are as bad as the current mock interview then I would rather never try exponent ..
@nj12042 жыл бұрын
We should at least do some back-envelope analysis on the MAU, DAU, QPS,etc for the non-functional requirement. We should also make it more interactive, i.e. check the feedback of the interviewer before jumping into the details of the API's. Maybe ask the interview to see if he wants to see which one first: high-level design, API, or data model?
@wfan28442 жыл бұрын
QPS, Storage and Network Bandwith estimation are required.
@harshitkhandelwal851510 ай бұрын
He skipped the data model as well
@usrenaem2 жыл бұрын
Thanks for the content! API structure is kind of out of common way to design restful apis. Don’t use verbs when it is possible.
@ashwin810885 ай бұрын
This is a good interview. You designed twitter in 20 mins. Haters will say it’s not good.
@Crack_interview_with_sim2 жыл бұрын
Very Bad idea giving name like gettweet ,createtweet . Basic naming of Rest API end points . Considering tweet as a resource just have GET and POST on it
@adeelirshad228 Жыл бұрын
Agree.
@comickracks6333 Жыл бұрын
Yes that's the design smell
@codingshinobi10 күн бұрын
i dont think the names matter in System design interview. The interview is supposed to be of 45 minutes to 1 hour and the interviewer is interested in how you are approaching the problem and what databases you will be using, how to handle peak users, etc etc.
@anthonyc85793 жыл бұрын
The geographic load balancing to different API servers part made no sense to me. When a user makes a request to a load balancer, they make an API request specifically to the load balancer and receive from it directly, so the don't make contact with the API servers at all. If you put the API servers in different regions, that would only be with respect to the load balancer, not the user themselves, so it wouldn't help at all since the load balancer is still in the same region. You'd need to do the geographic routing first before the load balancing step to do this properly, aka a traffic manager.
@kk202996 ай бұрын
He is kinda nervous or not prepared. He used a load balancer instead of a traffic manager....
@prashantchamoli72633 ай бұрын
That was exactly my question like where would load balancer be geographically Can you please explain what traffic manager is in brief?
@subhashismohanty54207 ай бұрын
The API names are not as per the standard. But overall good discussion.
@jojay6472 Жыл бұрын
Someone made this guy an EM lol
@rajeshg35702 жыл бұрын
To me it sounded like..this is very very high level design ..but in my opinion he could have added some details around some of the below aspects or at least get clarification on requirements to trim out some of these.. 1. Capacity planning 2. Type of DB and reason behind choosing that 3. Security aspects 4. High level db design 5. Tech stack ..for example.. aws s3 or cloud front or redis or Kafka etc 6. Scaling .. 7. peek load handling 8. caching mechanism
@AshishShah15123 жыл бұрын
This interview feels like it is given by a New Grad Software Engineer.
@pratiks30443 жыл бұрын
Cant agree more with you.
@manoelramon8283 Жыл бұрын
sql db for tweets will be slow... timeline and feeds are different things
@cpy2 жыл бұрын
This was pretty rough. If that’s what Exponent’s class teaches you then I’ll pass
@donotreportmebro2 жыл бұрын
not everyone wants to work at Albertsons, Walmart is ok for some
@cpy2 жыл бұрын
@@donotreportmebro you base the level of learning on what company you are applying to? Aim higher for yourself, forget the company
@saurabhtyagi18702 жыл бұрын
@@cpy Nice
@janezhang15502 жыл бұрын
For the timeline database, would it make more sense to store a list of tweet ids per user and then query the user database at runtime to compile the tweet text?
@DigitalAlligator2 жыл бұрын
if you only store id, you need to use the id to query the database again, you still need to visit the same database. While in the timeline generator, the timeline already been build and just get everything all-in-once.
@gustavoalves43248 ай бұрын
In this case we are sacrificing storage and consistency to have low latency, which is one of the non functional requirements. It would be way slower to fetch the timeline and then populate with the tweets from the tweets database, not to say we would be coupling the timeline service with the database used for creating tweets.
@harshitkhandelwal851510 ай бұрын
When interviewer asked for 80:20 question, I knew he was expecting to listen cache in the answer but the interviewee failed to catch that.
@mohammadmonirhossain62147 ай бұрын
agreed
@nicholasmanning43072 жыл бұрын
One of the most horrible and unrealistic design interviews out there on the internet. Asks almost no questions (fundamental to design interviews). Not collaborative (also fundamental to design interviews). Doesn't add a space in front of "(" when writing in English. Super distracting and unprofessional. Breaks basic RESTful conventions with routes like /create/tweet
@rostislav_engineer3 ай бұрын
thanks Hozefa!
@randxalthor3 жыл бұрын
Probably been asked on previous videos, but what software/website is used as the design visualization/scratchpad for the interviewees?
@reevuadhikary3 жыл бұрын
Whimsical !
@randxalthor3 жыл бұрын
@@reevuadhikary thank you!
@bhumir9279 Жыл бұрын
Appreciate content, but little average api design
@jimmycheong79702 жыл бұрын
Can definitely tell that this interviewee watched the Success In Tech version for this video. Like Chinese whispers, where unfortunately a lot of things are discussed at a high level and not enough rationale is explored. I mean he even says Lady Gaga for his example for influencers, word for word as in the Success in Tech video. Just saying 🤷🏻♂️
@souvikghosh56682 жыл бұрын
I was expecting more out of this. This was a waste of my time.
@shawnreichard54972 жыл бұрын
Would it be good design to have the timeline as a queue. The queue would have a size that could perhaps be increased for people with lots of traffic. That way we store items that would be in the queue in the faster access database space and perhaps the stuff that would be maybe 3 queue away would perhaps be stored in a separate less frequently accessed storage (E3 perhaps?)
@justinmilner82 ай бұрын
Critiques: - Make it a conversation with your interviewer, engage them and give them space to speak - Detail the scale requirements of the system in more detail, using numerical calculations - Non functional requirements didn't have enough detail - clarify the consistency, availability, partition tolerance requirements - Don't include the verbs in the API naming - Mention load balancers, but don't include them in your diagram - Having multiple user boxes was redundant - Discuss push/pull mechanisms in more detail - Beware of adding too much complexity to a system, and just glazing over it - Don't include diagram items for replicas, at most, just mark the service/database - More detail of horizontal scaling should be included Overall, I think people preparing for interviews should view this as an example of what not to do.
@theafrodreamer6 ай бұрын
Candidate seemed nervous
@Hanso1o3173 жыл бұрын
What app is it in the background?
@vivekkaushik95082 жыл бұрын
For a facebook program manager that's a potato quality webcam.
@tushardhingra2 жыл бұрын
@exponent which tool is being used while answering the question?
@tryexponent2 жыл бұрын
Whimsical
@artyquantum728320 күн бұрын
Jumping to APIs without even creating the design ? Isn't that bad in system design ?
@tommysuriel3 жыл бұрын
He didn't do any capacity calculations such as bandwidth and storage, is that ok for these interviews?
@wfan28442 жыл бұрын
probably not. If you ever interviewed with facebook, their prep doc says those calculations are 100% required.
@vineethsai15752 жыл бұрын
no, its probably a red flag.
@alexfomin1207 Жыл бұрын
What tool for creating the diagrams are you using?
@tryexponent Жыл бұрын
Hi Alex! The whiteboard tool being used here is “Whimsical”. They have a free and paid version so do check them out if you are interested!
@calvio28352 жыл бұрын
a failed interview for both interviewer and interviewee. such low quality
@anonymously77772 жыл бұрын
Lost at influencer service/timeline generation piece. Please elaborate to me how these services work
@ravindrabhatt2 жыл бұрын
Looks like he didn't prepare well for the interview.
@innoirvinge84312 жыл бұрын
its like only 24m system design interviews are like at least 35m
@fartzy2 жыл бұрын
This design was so mediocre
@eurobeesbees38432 жыл бұрын
This is a bad video. I would reject this candidate. The API design is too abstract, the get API is not right. FB system design interviews are surely not this easy. This person is very lucky to be at FB.
@implemented22 жыл бұрын
And where are you?
@slavanikulin80692 жыл бұрын
diversity hiring quotas
@abp47082 жыл бұрын
@@slavanikulin8069 helps to have interviewers that look like you. Less bias.
@harshitkhandelwal851510 ай бұрын
He is at WealthFront and was at paypal for 8 years before that. Designing Twitter was asked in a FB interview hence the title
@42Siren2 жыл бұрын
This is too basic design. Unless the candidate has less than 4 years of experience, this should get rejected
@befuture_ru3 жыл бұрын
I like it 👍 What IDE do you use for the design prototyping?
@nipunaggarwal87302 жыл бұрын
Whimsical
@darkmadhavsharma2 жыл бұрын
cool makes sense.....
@Nexatek7 ай бұрын
This is a bad example of how you should not approach a system design interview
@pinkylover9112 жыл бұрын
what is the meaning of mvp?
@yassinezarir64282 жыл бұрын
Minimum Valuable Product.
@tryexponent2 жыл бұрын
Minimum viable product - the most basic version of a product you can ship to start getting feedback from users.
@JoyceCheng-hn3rm Жыл бұрын
Does anyone else think this interviewer is annoying?