No video

50 BILLION MESSAGES PER DAY WITH 32 ENGINEERS | Prime Reacts

  Рет қаралды 494,139

ThePrimeTime

ThePrimeTime

Күн бұрын

Recorded live on twitch, GET IN
/ theprimeagen
Article link: newsletter.sys...
Author: NK | substack.com/@...
MY MAIN YT CHANNEL: Has well edited engineering videos
/ theprimeagen
Discord
/ discord
Have something for me to read or react to?: / theprimeagenreact
Hey I am sponsored by Turso, an edge database. I think they are pretty neet. Give them a try for free and if you want you can get a decent amount off (the free tier is the best (better than planetscale or any other))
turso.tech/dee...

Пікірлер: 511
@andrewdunbar828
@andrewdunbar828 11 ай бұрын
50 billion per day means all of the one-in-a-million edge cases will hit you 50 thousand times a day.
@ThePrimeTimeagen
@ThePrimeTimeagen 11 ай бұрын
truly terrifying
@Evkayne
@Evkayne 11 ай бұрын
nice way to put it
@tastyham
@tastyham 10 ай бұрын
yet shit happens and things doesn't work so it's accurate lol
@ilikegeorgiabutiveonlybeen6705
@ilikegeorgiabutiveonlybeen6705 8 ай бұрын
no but maybe
@sismith5427
@sismith5427 6 ай бұрын
At least with Erlang the edge cases won't take down the whole system... Erlangs paradigm was always 'Let it crash', in fact the whole language was designed with Fault tolerance in mind, they knew in critical systems like telecommunications the system needs to always remain up and available, so rather than attempt to defensively program, they viewed there will always be unforeseen bugs. hardware may fail, but they asked how can we ensure those problems never break the wider system. Every user action is isolated in its own PID, so when an edge case arises in that PID it just crashes, and a supervising process just restarts it.
@jayshartzer844
@jayshartzer844 11 ай бұрын
They found all the mythical 10x engineers, captured them, and locked them in a basement with only laptops with Linux terminals and a mountain of anime pron to keep them company Those engineers have never been more happy
@julienmarie_personal
@julienmarie_personal 11 ай бұрын
They are running FreeBSD. Not Linux.
@NotYourSpy
@NotYourSpy 11 ай бұрын
lmao
@alexandersuvorov2002
@alexandersuvorov2002 11 ай бұрын
... with monochrome screens and Vi as editor...
@kelvintakyi-bobi3155
@kelvintakyi-bobi3155 11 ай бұрын
😂😂😂
@jazzycoder
@jazzycoder 11 ай бұрын
No, they found Erlang
@xbmarx
@xbmarx 11 ай бұрын
For context about FreeBSD, because the article skims over it: For years Erlang developers preferred FreeBSD because IO multiplexing is done in FreeBSD with something called kqueue, which requires one less syscall than the Linux equivalent (epoll). I believe Linux has iouring now. Let us just appreciate for a moment that the Erlang VM handles IO so well that the OPERATING SYSTEM ITSELF BECOMES THE BOTTLENECK.
@stevenhe3462
@stevenhe3462 11 ай бұрын
BSD also allows running programs in the kernel memory space.
@Comeyd
@Comeyd 11 ай бұрын
@@stevenhe3462so can Linux en.wikipedia.org/wiki/EBPF
@ummijaan1448
@ummijaan1448 11 ай бұрын
​@@stevenhe3462but shouldn't that also be a security issue?
@qwoolrat
@qwoolrat 11 ай бұрын
@@ummijaan1448 not if you know what a computer is
@ummijaan1448
@ummijaan1448 11 ай бұрын
@@qwoolrat sorry bro i thought I knew what a computer is but turns out I don't. Sorry for wasting your time.
@dinckelman
@dinckelman 11 ай бұрын
Being rejected by a company, just to be bought out by the same company, is so vindicating
@mrlectus
@mrlectus 11 ай бұрын
he probably didn't know how to reverse a linked-list
@jamzbraz
@jamzbraz 10 ай бұрын
lol @@mrlectus
@junesuprise
@junesuprise Ай бұрын
Yea it’s not like this one big villain bro These are different people Then this L mentality when you’re seeking revenge because you were “rejected”…. Duh I’m pretty sure such intelligent and successful people are above that
@junesuprise
@junesuprise Ай бұрын
You’re clearly not
@sanjeevsinghrajput5593
@sanjeevsinghrajput5593 10 күн бұрын
Probably wasn't a "Teanworking hardworker and go-getter" that the HR wants​@@mrlectus
@Ragna6765
@Ragna6765 11 ай бұрын
A manager went to the Master Programmer and showed him the requirements document for a new application. The manager asked the Master: "How long will it take to design this system if I assign five programmers to it?" "It will take one year," said the Master promptly. "But we need this system immediately or even sooner! How long will it take if I assign ten programmers to it?" The Master Programmer frowned. "In that case, it will take two years." "And what if I assign a hundred programmers to it?" The Master Programmer shrugged. "Then the design will never be completed," he said.
@albertoarmando6711
@albertoarmando6711 11 ай бұрын
the tao of programming is a masterpiece
@maciejtrybilo
@maciejtrybilo 6 ай бұрын
...and one month if you put one good engineer on it.
@Opeyemi.sanusi
@Opeyemi.sanusi 11 ай бұрын
If ADHD was a streamer
@souls.7033
@souls.7033 Ай бұрын
He indeed has ADHD
@dealloc
@dealloc 11 ай бұрын
Just a tiny technicality; Erlang uses "green" processes rather than green threads. Difference is that threads can share state, memory and address spaces, processes are isolated and share nothing (other than by copying values). Erlang implements its processes in its runtime system and is managed in its VM, rather than using OS threads or processes.
@sck3570
@sck3570 11 ай бұрын
So are you saying that I should start to use Erlang?
@monad_tcp
@monad_tcp 11 ай бұрын
Basically Erlang FORBIDS mutable state (stored in RAM)
@monad_tcp
@monad_tcp 11 ай бұрын
@@SeanPoulter Its amazing how easy is to create massively scalable things with Erlang, like most of the heavy lifting is really the programming paradigm. I was reading the Ejjaberd source code and I was impressed how little code in relation to the runtime is necessary to create the core of what is Whatsapp.
@monad_tcp
@monad_tcp 11 ай бұрын
Try doing that with C you might save a lot of memory, but you lose all scaling as well. Its almost like C is cheating by being unsafe with its memory model full of aliasing and sharing via the use of pointers. You are also going to need 35.000 engineers because C is a shit programming language that requires a lot of stupid work to manage the memory. Its ironic that computer were invented to automate industrial process, yet, the very own engineers working with computers decided to not industrialize the most boring and stupid programming task : managing memory. All because in 1970, the PDP11 only have like 8Kb of RAM or something... But Erlang coming from the telephony world don't use memory to process data, only to control process that control the data flowing in actual wires, that's the magic. Its the control-plane/data-plane separation. Stored program with mutable shared memory and big linear address space was a mistake, and its not even how hardware works anymore anyways, the so called "C" programmers don't even program bare-metal anymore, its all a fad, its only there for their ego or something, that a modern compiler has to make a modern computer look like a 1970's era PDP11. And we are forever going to be stuck in this memory model thanks to C and Unix and Intel.
@disguysn
@disguysn 11 ай бұрын
​@@sck3570if you want a more readable language you can use Elixir, which basically runs on Erlang.
@EndermanAPM
@EndermanAPM 11 ай бұрын
I was expecting more from the article tbh. Yeah, it lists some things, but it's just a lists of concepts that by now I think it's just standard good practices. (Aside from the lang choice and fBSD OS choice). I was expecting the article to go a little deeper. It's nice to know that they located and fix bottlenecks, but I wanted to know, how they identified, what was the issue and how that got fixed.
@cenowador
@cenowador 11 ай бұрын
yeah, like, do they store the messages in a txt? how do they query that volume of data? that would be interesting to know
@sck3570
@sck3570 11 ай бұрын
Exactly it was so generic, it was like someone had an assignment to write a 500 words essay
@trapexit
@trapexit 11 ай бұрын
It's been a while but I'm pretty sure there are much more thorough articles on the topic of WhatsApp and their Erlang + FreeBSD setup.
@notliach
@notliach 11 ай бұрын
Fear of telling too much and then having the information used against you later; fear of clones; industrial secret; or it just takes too much effort to ask the techs how shit is actually working.
@wlockuz4467
@wlockuz4467 11 ай бұрын
That article screams AI generated. It describes a bunch of generic best practice things that you would expect from any succesful company.
@exShinra
@exShinra 8 ай бұрын
I was thinking the same thing
@ChillerDragon
@ChillerDragon 6 ай бұрын
Was about to write the same comment. Such a waste of time. Such a shallow and boring article I do not see how it deserved the youtube upload.
@sultanhanga
@sultanhanga 5 ай бұрын
actually it didn't explain why and how WhatsApp could handle all that with just 30 engineers
@ben_sch
@ben_sch 4 ай бұрын
Agreed. I learned nothing from this video. Glad I skipped 90% of it. Dev youtubers really should focus more on providing value with their article-based videos. Most of the time it's empty phrases like "if you've never worked on x problem....it's HARD! Like...actually hard" and other trivial statements. Feel like it's more about engaging the dev community by addressing obvious common concerns, struggles and frustrating experiences as a dev more than providing new insights
@ir-rl
@ir-rl 2 ай бұрын
This respond from you is that you have not being born before Internet was a thing, I worked with Video Editing/Rendering to built those system in the 1994, the hard drives needed a special software because normal hard drives where "calibrating" and in those moments you where losing frames when you rendering hard core stuff, now days, just put a SSD or NVMe drive and you think problem solve. That is what programming is today, put just more Framework, and in the end you have just built a system even with the newest hard drives/SAN, and your performance will be like if i remember 100 IOPS per hard drive, so in a stripe configuration for performance, you should know that would be a cascading effect, . But you got to love that bill from any of the Cloud providers. If you ever built a successful app. LOL and BTW this was the time when Silicon Graphics had there computers running the HIPPI protocol. To much knowledge have been lost in time. But one thing remains, we that have struggle during the early days, really know how to build system from ground up today.
@SabbraCadabra11
@SabbraCadabra11 11 ай бұрын
Signal is fantastic, I absolutely love it. I wish more people were using it though
@PreciousOmegba
@PreciousOmegba 11 ай бұрын
Just do a sponsored ad bro 😂
@ThePrimeTimeagen
@ThePrimeTimeagen 11 ай бұрын
agreed
@kevyyar
@kevyyar 11 ай бұрын
Yeah I want to use it as well. But tell that to my fam, my friends and co-workers lol
@TheDanVail
@TheDanVail 11 ай бұрын
@@kevyyarjust hack them, add signal to their phone, and then tell them they wouldn’t have been hacked if they had used signal.
@Sonerlag
@Sonerlag 11 ай бұрын
They lost me when they added Cryptocurrencies as In-app Payments
@maximilianorios
@maximilianorios 11 күн бұрын
I worked in an IoT platform, and we reached a peak that we were struggling to manage. We started talking to some people who managed a lot of messages a day, and they were shocked by our volume at the time I worked there. We were hitting 500 million a day, and passing that mark was a challenge. I cannot imagine how it is to handle 50 billion.
@supratiksarkar6336
@supratiksarkar6336 11 ай бұрын
When you don't have useless managers in between engineers can work like cake.
@romanmueller3479
@romanmueller3479 8 ай бұрын
That is true for good and smart engineers. The average engineer needs a manager to tell him what to do. :D
@Hubert9509
@Hubert9509 Ай бұрын
but in reality its the other way around. Even the best manager needs maximum a worse programmer to tell him what to do 😂
@rag0a
@rag0a 11 ай бұрын
Erlang is all about creating robust distributed systems as seamlessly as possible. The fact that it is functional and you can hot reload is secondary.
@marcusrehn6915
@marcusrehn6915 11 ай бұрын
Having worked at Ericsson, I can tell you that they mostly dont use Erlang these days. Where I worked there was a lot of Scala and Akka, which is funny to me. One really cool feature of Erlang is that they could predict the amount of hardware needed. X amount of messages means Y hardware requirements, 2X messages 2Y hardware. But the coolest feature has to be the suicide pacts of processes
@bacon-SG
@bacon-SG 11 ай бұрын
Akka is cool, if only wasn't running under JVM, and if I'm not wrong is just replicating what Erlang already does. Can't figure out why would they do that.
@homelessrobot
@homelessrobot 11 ай бұрын
oh yeah I remember the suicide pacts -- 'links'.
@daumienebi
@daumienebi 11 ай бұрын
And where are you working now? Or are you retiredd
@marcusrehn6915
@marcusrehn6915 11 ай бұрын
@@daumienebi I work at Sinch
@marcusrehn6915
@marcusrehn6915 11 ай бұрын
@@bacon-SG It's mainly funny to me because the Scala/Akka people often talk about Erlangs influence on them. But I agree, Akka is cool
@MasterSamus
@MasterSamus 9 ай бұрын
Most of those 50 billion messages are "Good Mornings!" and replies from India.
@riwajghimire
@riwajghimire Ай бұрын
They have life and people who care how about you ? You need to comment here to express yourself ? No one left to listen you ? Oh you guys work for groceries worth $600 per month ,$2000 rent and and flex of earning $4000 per month? Thinking elite indians manage all this for $100 and still saves for life. So live a life
@MasterSamus
@MasterSamus Ай бұрын
@@riwajghimire I was stating a fact. WhatsApp is the most common messaging service in the subcontinent. Maybe you should drink a chai and chill, Riwaj.
@markpozsar5785
@markpozsar5785 22 күн бұрын
Jesus you are confused.​@@riwajghimire
@tullochgorum6323
@tullochgorum6323 11 ай бұрын
I have a theory that pretty much any scale of software system can be produced if you stick just a handful of engineers in a couple of rooms. If it's a hard problem, give them £300k plus and hire the very best. It will still work out cheaper than 200 drones grinding away in their corporate cubicles. The effort of coordinating all those low skilled hacks and the quality control bureaucracy you'll need will cost far more than simply hiring good people in the first place.
@hydrilara
@hydrilara 11 ай бұрын
I will follow this advice for my company, seems sensible and feasible,
@bos9824
@bos9824 9 ай бұрын
where are they paying that kind of money in europe? lol
@tullochgorum6323
@tullochgorum6323 9 ай бұрын
@@bos9824 According to the stats, £300k is around the median for a top-tier engineer in the US and £250k in the EU. If you want the best of the best, you'd have to pay a bit more than the median.
@seeker4430
@seeker4430 11 ай бұрын
4:02 i love that comment.. The difference between 32 and 2000 is about 2000
@trapexit
@trapexit 11 ай бұрын
While Erlang is functional it is perhaps the least important fact about the language and given the syntax and style of Erlang it is very procedural feeling. I find C/C++/Go/Java devs have little issue moving to it once getting used to replacing loops with maps, folds, and tail recursive functions.
@GOTHICforLIFE1
@GOTHICforLIFE1 11 ай бұрын
Maps as in applying functions to iterable objects? I learned that Go call key/val pairs for maps after i learned that - So i'm wondering what the actual norm of maps actually is
@trapexit
@trapexit 11 ай бұрын
@@GOTHICforLIFE1 map as in the high order function. Like fold. Check wikipedia for "map (higher-order function)". It is a function / behavior. Not a data structure.
@polle5555
@polle5555 11 ай бұрын
@@GOTHICforLIFE1 Both are map, same word used for different things. But I would say more people would use map for applying a function to every element of a collection and call an associative array a dictionary.
@disguysn
@disguysn 11 ай бұрын
It's the features around concurrency and distributing work between multiple machines that makes Erlang so great. I absolutely hate the syntax though
@trapexit
@trapexit 11 ай бұрын
​@@disguysnReally? I like its relative simplicity. It might be inspired by a rather unpopular and odd language (Prolog) I really never minded it. I certainly prefer it over a number of other functional languages... including OCaml. I think the pattern matching syntax is the nicest I've seen in any language.
@trapexit
@trapexit 11 ай бұрын
@7:40 No, not really green threads. That article misrepresents what is going on in Erlang. Erlang is using actor processes and has practically a full OS like process scheduler. And because it is built into the language and platform it offers features not found elsewhere and often can't be found elsewhere when the feature is an afterthought.
@MichaelButlerC
@MichaelButlerC 10 ай бұрын
I think perhaps another advantage that WhatsApp has (or had) was lack or server side storage? Generally messages were just sent and lived on client devices. When you went to a new device, if you didn't do a transfer yourself, you'd start fresh. I'm sure there was temporary storage but when you can cut out those huge database challenges you can save more engineering resources
@arafays
@arafays 11 ай бұрын
okay I think I still am a javascript advocate but @ThePrimeTime is like the Red pill I needed because "You just pushed back 591 messages because you were off by a half millisecond"
@user-tb4ig7qh9b
@user-tb4ig7qh9b 11 ай бұрын
Erlang elixir baby 😂
@laughingvampire7555
@laughingvampire7555 11 ай бұрын
LFE
@freaklore
@freaklore 11 ай бұрын
Behold the power of Erlang and Elixir. Functional programming is the future.
@airman122469
@airman122469 11 ай бұрын
You know what’s really funny about that? That’s how programming kind of started in the first place.
@freaklore
@freaklore 11 ай бұрын
Yes, the irony of it all. The way things are now is way over complicated than it should be. @@airman122469
@burhanuddinrashid891
@burhanuddinrashid891 3 ай бұрын
A part of how scalable the backend system is, we miss an important point here: the offline-first app. It's very hard to build an offline-first app even today, where we have the majority of problems already solved by third-party SDKs and packages. Building a seamless offline app in 2008 is some level of engineering to marvel at.
@AntranigVartanian
@AntranigVartanian 11 ай бұрын
One important thing the author has missed: FreeBSD. it was very important for them to run FreeBSD for two reasons. 1. The co-founders were very familiar with the internals of FreeBSD. 2. The FreeBSD network stack was (and still is) way better than other open-source operating systems (e.g. Linux). They were able to support 2-3 million concurrent connections on a single commodity server.
@AntranigVartanian
@AntranigVartanian 11 ай бұрын
hah, turns out the author DID mention FreeBSD :D should've watched the video completely before commenting :D
@ilohnen
@ilohnen 11 ай бұрын
Prime on CI/CD: "Everyone does that." (2008 btw) On the other end, here I am, trying to convince the company to let me implement pipelines in the repos while waiting for my boss to "deploy" with one-week delays using a copy-paste bash script, saying that it's good enough: 🤡
@bossgd100
@bossgd100 11 ай бұрын
😂😂
@NeonGreenT
@NeonGreenT 11 ай бұрын
"classic 2008, everyone was there" 1:13 - I don't know why this cracked me up so much
@efkastner
@efkastner 11 ай бұрын
Yahoo brickhouse (and the groups right around there) had the most influential people ever. I wanted to work there SO badly in the early 2000s!
@caschque7242
@caschque7242 11 ай бұрын
That’s a cool blog post because it shows a text book development of a product.
@remigoldbach9608
@remigoldbach9608 11 ай бұрын
I watched the video just to see when FreeBSD is mentioned in the article. It’s one big reason of the performance !
@ThePrimeTimeagen
@ThePrimeTimeagen 11 ай бұрын
yeah, i have heard many a good things about it. i also know we use it extensively on our own boxes at netflix
@remigoldbach9608
@remigoldbach9608 11 ай бұрын
@@ThePrimeTimeagen Netflix does contribute to the source code of FreeBSD, they got even more performance out of the network stack ! Thanks for your reply, I’m honoured 😊
@hanes2
@hanes2 11 ай бұрын
Yeah the network stack is blazing
@jayshartzer844
@jayshartzer844 11 ай бұрын
Normally I have to pay for it. Thanks for letting me know about FreeBDSM
@sck3570
@sck3570 11 ай бұрын
@@jayshartzer844
@nefrace
@nefrace 11 ай бұрын
This title sounds funny. Imagine 32 engineers sitting here and manually sending all those messages. And also it's sad that Telegram now goes on this path of "feature creep". It was a wonderful messenger and now it's full of social networking shit.
@ThePrimeTimeagen
@ThePrimeTimeagen 11 ай бұрын
signal is the way
@Cookiekeks
@Cookiekeks 11 ай бұрын
Telegram never was a wonderful messenger, it's spyware
@zanez7953
@zanez7953 11 ай бұрын
Telegram was always apooky
@catto-from-heaven
@catto-from-heaven 11 ай бұрын
I like Signal's simplicity, but I wouldn't replace Telegram for it by any means. It's still really useful for communities, way better than Discord.
@catcatcatcatcatcatcatcatcatca
@catcatcatcatcatcatcatcatcatca 11 ай бұрын
Joe Armstrong is such an inspirational talker and person. In many ways whatsapp was the perfect showcase of the core ideas of what Erlang was designed for. Instant messaging needs to be low latency, highly reliable and capable of handling partial failures. And it was pretty well defined: Do SMS but over IP, with few new capabilities such as user-defined profile pictures.
@gotoastal
@gotoastal 11 ай бұрын
RIP
@doltramir
@doltramir 11 ай бұрын
SMS in Ukraine is still expensive. We pay for every 100-200 messages, depending on provider. And 100 messages is equivalent in price to 50Gb of internet, on my provider.
@catto-from-heaven
@catto-from-heaven 11 ай бұрын
Why are you still paying for them?
@doltramir
@doltramir 11 ай бұрын
​@@catto-from-heavenFortunately I am not paying for them. But there are not that many plans, that do not have SMS included. There is an option to make your own plan, but its base cost is higher, than my whole plan. So, we just look for what is closest to what we need. And even then, we still get some things, that we do not use, nor need, but are still forced to pay for. My plan, for example, has 250 minutes per 4 weeks, to call other providers' numbers. Even if I use 10-12 of them at most, I still pay for them, as there is just no better plan, that suits my needs. And there are plans, that have 400 and even 600 SMS, that cost 8-12 times of my plan. There's a lot of them actually. If you have good internet - it's 99% that you'll get a ton of useless SMS with it. I literally never even once heard of anyone, who would use SMS, even if their plan provides them (and it usually does). Though, I get 3-4 daily spam ads via SMS. So yeah, people do not use it. The ad companies do. But we are still paying for them.
@uadev
@uadev 10 ай бұрын
But no one uses them
@kennethbeal
@kennethbeal 11 ай бұрын
Thank you for showing where that meme came from, and the potential rapidity of meme generation and sharing. Love it! Am familiar with GIMP but your demo (about halfway through) produced much faster results.
@romanmueller3479
@romanmueller3479 8 ай бұрын
These are some crazy ass busy engineers to work through 50 billion messages per day.
@cern1999sb
@cern1999sb 11 ай бұрын
At netflix you had less than 2000 engineers. That's not a comparison, you had 2 orders of magnitude more engineers
@AROAH
@AROAH 2 ай бұрын
You know, old Yahoo was really ahead of its time. They essentially did everything Google and Microsoft/MSN would end up doing, but in the age of AOL.
@ElGovanni
@ElGovanni 12 күн бұрын
1:18 bro respect for correctly pronunciation his polish name, it such a rare american thing.
@AlgoristHQ
@AlgoristHQ 11 ай бұрын
I think that most shops should probably have between 3 and 40 devs depending on the depth of their app ecosystem. It doesn't make sense to have 600 or 40000 developers. That makes communication impossible...
@dejangegic
@dejangegic 11 ай бұрын
Some projects have such a large scope that you need a team for every stream. And thus, you get 20 teams and can't figure out who owns which feature
@AlgoristHQ
@AlgoristHQ 11 ай бұрын
@@dejangegic I disagree. I’ve been to big and small firms. You don’t need that many devs. You need better leadership.
@Wako_san91
@Wako_san91 11 ай бұрын
1:20 "He double hockey sticks" is the most Flanders statement I've ever heard 😂
@emceha
@emceha 10 ай бұрын
Feature creep can be harder than people think. One of the reasons why Linux is a thing, was Linus understanding that there has to be someone with power to say "No" to anything proposed.
@gonzalooviedo5435
@gonzalooviedo5435 11 ай бұрын
I know it, Elixir is the way to go!, long live to Erlang!
@thepedrorriva
@thepedrorriva 11 ай бұрын
I find Erlang syntax SO much better, is Elixir really he future? I have to make this choice.
@sck3570
@sck3570 11 ай бұрын
is it faster than Erlang?
@trifalgarh
@trifalgarh 11 ай бұрын
Instructions unclear accidentally learnt Go
@stevenhe3462
@stevenhe3462 11 ай бұрын
@@sck3570 No. It compiles to BEAM byte code.
@MichaelButlerC
@MichaelButlerC 10 ай бұрын
I love that he got rejected by Facebook, then they acquired his company --7 years later for billions... I've heard it described before as the "most expensive hire ever" 😅
@cbrunnkvist
@cbrunnkvist Ай бұрын
I expected it to say "Kafka" but given how far back it was, ejabberd makes perfect sense! It must have been amazing to work at such a high-growth, engineering-focused company building such a large public-facing service, at that time in internet history
@tedchirvasiu
@tedchirvasiu 11 ай бұрын
3:33 - True, with all due respect, at the end of the day it is a messaging app with not a whole lot of features. By its very nature it is easy to parallelize and scale. Most messages are sent between 2 people and the group limit is 1024 (compared to other apps such as Telegram which support 200.000 or Discord which supports 250.000 members or more). The app existed for over 14 years now, so plenty of development time went into it already. 32 engineers (especially talented ones) is a lot for a problem as narrow as this. Past a certain point you simply can't split responsibilities anymore and you don't wanna end up having 3 senior engineers solely responsible for styling the Send button.
@joaovmlsilva3509
@joaovmlsilva3509 11 ай бұрын
There wasn't 32 people just for the client, aws didn't exist, and docker/kubernetes wasn't a thing
@tedchirvasiu
@tedchirvasiu 11 ай бұрын
@@joaovmlsilva3509 I didn't assume there were 32 people just for the client, 32 engineers for the whole operation is a lot. And pretty sure they didn't require infrastructure to support 50 billion messages / day from launch day. Back in 2009 very few had smart phones world-wide. Now even people in starving 3rd world countries use smartphones and Whatsapp.
@muyewahqomeyour7206
@muyewahqomeyour7206 5 ай бұрын
JavaScript catching the stray 😂
@mks-h
@mks-h 11 ай бұрын
Turns out (as somebody mentioned in the chat) that Jan Koum is actually Ukrainian. It's the English transliteration that makes it look absolutely non-Ukrainian (I thought he's Chinese, lol) P.S. You read the name correctly, and the surname -is more like Koom ("oo" as in "door")-
@ThePrimeTimeagen
@ThePrimeTimeagen 11 ай бұрын
well lets go!
@mks-h
@mks-h 11 ай бұрын
@@ThePrimeTimeagen oops, I meant Kum as in "could" (and that's probably why it's Koum). My English breaks at evenings...
@airman122469
@airman122469 11 ай бұрын
Simple: make a stable application on stable server platforms. You really don’t need thousands of engineers for applications that are that simple. I struggle to understand why even Netflix requires hundreds of engineers full time.
@bos9824
@bos9824 9 ай бұрын
netflix has many applications that arent public facing thats why
@joshyoerger5271
@joshyoerger5271 11 ай бұрын
8:34 “Edge lord with a beard.” Got em. Rekt.
@christobothma368
@christobothma368 24 күн бұрын
i love the impending feeling of i'm doom i get from watching your videos. because i have no clue what 90% of the tings are your speaking about and will looking for a job in like a year
@DonAlcohol
@DonAlcohol 11 ай бұрын
another thing about yahoo engeneers , of all the big name .commers, they were the only ones toe also register bitflip domain names , where the rest only rigistered the typo domain names ... they foresaw and closed that vulnerability long before anyone ever came up with abusing it
@diegolikescode
@diegolikescode 11 ай бұрын
BOE THAT WAS FUNNY kkkkkkkkkkkkkk thanks for the great article, as always
@JaimeWarlock
@JaimeWarlock 3 күн бұрын
Maximum of 10,000 Clients times 60 times per second = 600,000 UDP messages per second with my game server. Admittedly, it's just a multiplayer dungeon crawler, so very small packets, and no wasting time with TCP. I just want to know why it took them 32 engineers ;)
@Aplysia
@Aplysia 3 ай бұрын
Meanwhile, I can't get my leadership to add a third engineer.
@amisco333
@amisco333 3 ай бұрын
First time coming across your channel. Loved the video. Subscribed 👍
@heyjitendra
@heyjitendra 11 ай бұрын
They missed DB Any idea about db that they were using?
@spikespaz
@spikespaz 11 ай бұрын
This is one of your best videos, and Flip as well.
@fashionvella730
@fashionvella730 27 күн бұрын
4:46 this part is wild man 🤣🤣
@JulLun
@JulLun 13 сағат бұрын
Whatsapp should be using the Actor Model with high concurrency, similar to Akka, I participated in an HR interview for a Reactive position and they told me they use Erlang in most of their stack services. The Actor model is so interesting as a design pattern an I think should be spread more among us mortals.
@monad_tcp
@monad_tcp 11 ай бұрын
The reason the are able to do that is precisely because they only have 32 engineers.
@anandsharma7430
@anandsharma7430 11 ай бұрын
1:40 I still don't understand why YUI was not maintained. I mean NodeJS and React and all that are good, but nothing beats a well designed, single-source comprehensive JS framework. It was the JDK of Javascript.
@laughingvampire7555
@laughingvampire7555 11 ай бұрын
everyone has green threads because they were copying Erlang, even the Go guys knew about Erlang but Erlang is even better than Go, Rob Pike also recommends Erlang. Erlang code always lives in a green thread, and all of their green threads are individual erlang runtimes with their own heap so when you kill one of them you are automatically collecting garbage, giving Erlang "arenas" by default. Erlang's hot reloading works due to always running on a green thread, because they can load v1 and v1.1 in different threads, last time I checked it had only support for 2 simultaneous versions.
@dealloc
@dealloc 11 ай бұрын
Erlang code lives in Erlang processes (or "green processes") since they are isolated and cannot share state, unlike threads.
@jamesbell9627
@jamesbell9627 11 ай бұрын
YES!!!! Love the shout out to Signal at the end. It is the best messenger there is, light-years beyond everything else. ❤❤❤❤❤
@techsuvara
@techsuvara 3 ай бұрын
There’s a difference between public data and content moderation, compared to a stored db of data.
@thisandthatguy1156
@thisandthatguy1156 11 ай бұрын
Telegram is great too without group size limitations like WhatsApp. Wonder how they engineered it.
@Lampe2020
@Lampe2020 2 ай бұрын
4:02 Until you pointed it out I didn't even recognize that you tried to imitate any accent. And I'm German, so maybe I'm more (or less?) sensitive to a German accent in other languages. Although I funnily enough start to develop a slight Swedish sccent now that I speak Swedish all day XD
@elmersbalm5219
@elmersbalm5219 11 ай бұрын
There was Douglas Crockford gutting javascript and scavenging the good parts.
@akshatkotpalliwar
@akshatkotpalliwar 3 ай бұрын
i dont know how much i get offended when ever out of nowhere primeagen calls out javascript
@EvanBoldt
@EvanBoldt 11 ай бұрын
Would have been cool to see some specifics on bottlenecks and stuff.
@okgoogle4206
@okgoogle4206 11 ай бұрын
1 ms is a long time in computer science
@SauravTiru
@SauravTiru 8 ай бұрын
The article was like ughhh nothing great just textbook definitions slapped upon.
@rogsiel
@rogsiel 4 ай бұрын
Wish Telegram shared more insight into their operation. Apparently they too have 30 engineers and no HR team. Mind blowing
@random_bit
@random_bit 11 ай бұрын
When you and your family are LatAm, you cant really say no to Whatsapp unfortunately. Signal is awesome, but god be damned if you aren't in the family whatsapp for your grandma's daily drop of prayer chains
@paulwillisorg
@paulwillisorg 7 ай бұрын
Signal TRULY is not secret from the NSA.
@DudeWatIsThis
@DudeWatIsThis 6 ай бұрын
No worries, it's actually just 5 thousand million, not 5 billion (that would be crazy).
@luipaardprint
@luipaardprint Ай бұрын
I use signal, but none of my friends do though, so it’s a bit quiet on there.
@patternwhisperer4048
@patternwhisperer4048 2 ай бұрын
Yahoo were pioneers in scaling early day web setvices, so the statement about how early day engineers were among the greatest of their time doesn't surprise me
@Alkis05
@Alkis05 9 ай бұрын
He clearly didn't do enough leet puzzles to get into facebook. That's probably what happened.
@WiseWeeabo
@WiseWeeabo 8 ай бұрын
Wow, that means each engineer handled 1.5 billion messages just by himself. Must have taken him ALL DAY!
@zestynotions
@zestynotions 4 ай бұрын
haha for those os us old enough to remember SMS was FREE (Yes you read that right!) then some realized the traffic and said " I want to be rich so lets charge for this free service " and thus they became rich.
@luipaardprint
@luipaardprint Ай бұрын
I remember sms not being turned on because it was a service engineering feature that wasn’t for customers 😅
@Sakrosankt-Bierstube
@Sakrosankt-Bierstube 3 ай бұрын
4:46 when the autism kicks in... i have those moments way to often... xD
@constantinegeist1854
@constantinegeist1854 5 ай бұрын
Jan Koum is Ukrainian. The first developer was a Russian. Oh those times...
@JP-hr3xq
@JP-hr3xq 10 ай бұрын
We have a very serious communication problem in our "team" right now. I put "team" in quotes because it's actually about 50 people in six work streams that are identical. It's so bad that I can't make any breaking changes to our API at all since it is practically IMPOSSIBLE to communicate with everyone involved in a certain feature since there is no central person who knows who is working on what since the six work streams actually all do the same thing and work on the same code base.
@Ben_EH-Heyeh
@Ben_EH-Heyeh 9 ай бұрын
In Schwartzenager voice: It's not a monad. FYI: Erlang has actor-based concurrency. Haskell has monads. Do you like my Sexpression? KISS my Lisp.
@kalebbruwer
@kalebbruwer Ай бұрын
So they did 50 billion with 32 engineers? I bet they could do 40 billion with 10
@krox477
@krox477 11 ай бұрын
Whatsapp is the result of when you put curious and smart people in room together
@Gleem
@Gleem 7 ай бұрын
Just async it all and you only need 1 engineer.
@systemdesign42
@systemdesign42 11 ай бұрын
hey, thanks for reading my newsletter post :)
@tcc1234
@tcc1234 11 ай бұрын
It looks like AI generated (no offense). Looked like those generic "best practises" articles... You could've made it more technical provided you had more information at hand.
@fuzzy-02
@fuzzy-02 11 ай бұрын
4:46 this is pure gold. Lmao
@arsnakehert
@arsnakehert 10 ай бұрын
>Americans still used SMS in 2008 >Americans still use SMS TODAY lmao
@sasukesarutobi3862
@sasukesarutobi3862 11 ай бұрын
Rare Signal W, which is not what I was expecting in a video about WhatsApp
@Jan-kr3fg
@Jan-kr3fg Ай бұрын
As a german I approve of your pronunciation of my name 😊
@mikayilgacek
@mikayilgacek 11 ай бұрын
The Arnold accent killed me
@bulldogjob
@bulldogjob 11 ай бұрын
Erlang was specifically designed to ensure reliable operation in network and telecom applications, so yeah... makes sense.
@Soul-Burn
@Soul-Burn 11 ай бұрын
ejabberd = Erlang Jabber Daemon
@peachyweachy5716
@peachyweachy5716 2 ай бұрын
Can you elaborate on the early engineers at yahoo. Would be such an interesting story.
@AK-vx4dy
@AK-vx4dy 11 ай бұрын
We must opose "10x engineers" !!!! It impossible !!! "16x engineers" or "8x engineers" that are only allowed options for IT engineers !!!
@MrEnsiferum77
@MrEnsiferum77 11 ай бұрын
And without kubernetes or serverless crap.... actually languages like erlang are VM's so they have their own docker baked in...
@jumpman120
@jumpman120 8 ай бұрын
Answer is Erlang
@edumorangobolcombr
@edumorangobolcombr 11 ай бұрын
SMS were so expensive in Brazil back then that even now that it is cheap people only use WhatsApp. And some of less tech ones savvy don’t event know what an sms is
@luskira
@luskira 11 ай бұрын
huehue brbr
1 TRILLION Messages on Discord | Prime Reacts
28:01
ThePrimeTime
Рет қаралды 154 М.
ExFAANG Engineer Watches ExFAANG Take JavaScript Quiz | Prime Reacts
28:07
Вы чего бл….🤣🤣🙏🏽🙏🏽🙏🏽
00:18
艾莎撒娇得到王子的原谅#艾莎
00:24
在逃的公主
Рет қаралды 52 МЛН
а ты любишь париться?
00:41
KATYA KLON LIFE
Рет қаралды 3,3 МЛН
So You Think You Know Git - FOSDEM 2024
47:00
GitButler
Рет қаралды 1,1 МЛН
How To Find Time To Learn After Work | Prime Reacts
13:37
ThePrimeTime
Рет қаралды 454 М.
Death By A Thousand MicroService | Prime Reacts
27:52
ThePrimeTime
Рет қаралды 212 М.
How principled coders outperform the competition
11:11
Coderized
Рет қаралды 1,6 МЛН
I Quit Amazon after 2 Months | Reaction
29:29
NeetCodeIO
Рет қаралды 99 М.
CoPilot Review: My Thoughts After 6 Months
9:45
ThePrimeagen
Рет қаралды 544 М.
I tried using AI. It scared me.
15:49
Tom Scott
Рет қаралды 7 МЛН
FIRED For Using React?? | Prime Reacts
33:16
ThePrimeTime
Рет қаралды 416 М.
Algorithms In Interviews SUCK | Prime Reacts
24:15
ThePrimeTime
Рет қаралды 94 М.
Вы чего бл….🤣🤣🙏🏽🙏🏽🙏🏽
00:18