1st phase: ACID, event sourcing, optimistic lock, pessimistic lock, data structures, transaction 2nd phase: 1. given some longUrl + seoKeyword return shortUrl consisting of constant shortUrl string + seoKeyword 2. given some longUrl return shortUrl consisting of constant shortUrl string + 4 random alphanumeric characters 3. Given 2 instances of same service/application how to secure that one instance will use solution from @2 and other instance will use yet another function of shortening url consisting of shortUrl+ some number from 1..n
Anonymous
Keeping in mind that solution should be simple and clean i did it all as new methods, apart of last one when we just talk and i only said that instances should introduce themselves to distinguish how we should handle instance (Configuration related stuff) Positive and negative scenarios were covered related unit tests
Check out your Company Bowl for anonymous work chats.