andreyka26_se
609 subscribers
576 photos
66 videos
6 files
289 links
Hey, I'm software engineer at Microsoft, with 7 years of experience. Here we are talking about F(M)AANG big tech interviews: leetcode, system design and corpo life.

YouTube: @andreyka26_se
Instagram: andreyka26_se
TikTok: @andreyka26__
Download Telegram
Follow up in constant time O(1).

We take the maximum possible power of 3 num in the constraints `n <= 2^31 - 1`.
And then if number is positive - check if the reminder will be zero


If you have only 1 run, then, yeah, you might calculate all power of 3, put them to map, and then in constant time chech if n is in map
🔥3🤯21
At MS at my project, we are trying to stick to Scrum, but in reality it is something hybrid.
So, we usually don't have any estimations, if we do - these estimations on big features, and they are estimated in weeks. A lot of work load so a lot of reprioritization.

I was just checking my tasks, some of them were very old, and this is the outcome
- some repair item to fix the pipeline -> we migrated to new pipeline, so it is autoclosed
- some cleanup for skype related migration -> skype is done, so autoclosed,
...

I like how big corpo works xDD I closed a lot of shit by doing really nothing today
😁4
Amazon has bipolar disorder. Yesterday's evening I got an email
Today's morning
🤔4😁2🤮1
wtf?
Solutions
- "sliding window" based
- opposite - apply contains() to all of the possible candidates (10)


Both O(n) time and O(1) space, as these candidates are considered as constant (10 items)
2
andreyka26_se
Amazon has bipolar disorder. Yesterday's evening I got an email
btw, even if you are not looking for job - it is always a good idea to interview, at least it works like that for me. Some challenge, some confirmation of your skills, etc. Never rejected single opportunity even if not looking for something new
8👍1
So, lets do stream on Saturday this time. Again, it is going to be stream about DP, how to do top down and convert to bottom up + memory optimization.

Also we are going to implement sharding of all popular storages: Redis, dynamo, cassandra, etc
🔥91
Solutions
🔥4
Do you remember we were talking about Messenger or Presence Service System design?
There was a problem: how to keep hundreds of millions clients on websockets? I loooked up some stuff, and this is basically the solution (high level) that works in production.

We basically do not need any web socket server manager. WebSocket node itself will manage the state in Redis. That is it.
🔥5
Websocket server and client ping each other. If connection is getting timed out - client will initiate reconnect which will override the data about itself in Redis.
2
Do you remember distributed lock system design pattern? Basically one of the most famous algos is RedLock - implementation based on Redis (you do atomic set with TTL claiming the lock and the atomically removing the record).

So, this solution actually has a lot of critic, and one of the critics is done by Martin Kleppmann (this guy who wrote Designing data intensive applications)

https://martin.kleppmann.com/2016/02/08/how-to-do-distributed-locking.html
2
So, the guy who created RedLock algo made A DISS ON MARTIN.

THIS IS SO FUNNY AND EPIC IN A SENSE

DISTRIBUTED BATTLE