Senior Software Rust Amo France Interview Experience
Summary
I interviewed for a Senior Software Rust role in France and completed three rounds: coding, multithreading, and system design.
Full Experience
Round-1 Coding
Write a custom iterator which parses a delimiter and creates strings using the same in c++
Round-2 Multithreading
Design a concurrent queue, where multiple producers, multiple consumers can read/write from it
Round-3 System Design
Design a birthday email sending service. Drill down deeper and deeper to deduplication(sending duplicate mails), fault tolerance, timezone mismatch issues
Interview Questions (3)
Custom Iterator for Delimiter Parsing
Write a custom iterator in C++ that parses an input based on a given delimiter and yields substrings as it iterates.
Design Concurrent Queue
Design a concurrent queue that supports multiple producers and multiple consumers reading and writing concurrently.
Birthday Email Sending Service
Design a service that sends birthday emails, handling deduplication of emails, fault tolerance, and timezone mismatches.