Make sure it uses the Strategy design pattern to groom cats based on their breed. Each breed should have a different hair length after grooming.
How would you implement periodical grooming functionality? (each breed has to be groomed at different intervals)
How would you make sure each cat is groomed only once in horizontally scalable environment?