They asked me to explain the document I had created.
Anonymous
In the document I created, I create a scalable system, showing diagrams I created for the architecture. I focused on what was said in the instructions, there was an "evaluation criteria" section. In the instructions, they were saying the idea was not to design a full fledged system ready to be implemented, but creating any material I would find useful to drive a discussion. I did that, and they agreed my system was scalable, but I was badly evaluated on: - technology choice - I chose a nosql database and I didn't use some features the data base had, like secondary indexes and a transaction outbox product - I forgot to design in the system one of the corner cases, related to getting user information to be able to send emails. I thought the evaluation would be different - I went to interview prepared to show how I think and that I have ability to design scalable systems, but it seems they wanted more of a full fledged design. All things considered, it was an interview that took me a lot of time, as I had to spent time reading the document in details, designing the system considering many corner cases, and in the end I still missed one. Also, they didn't want to see only how I think, they wanted me to use all features of the technology of choice. I won't say I was pleased with the result - I think they looked really nice, but I don't want that badly to work for them - it was a lot of effort for an interview. Can I judge them? No, they have the right of evaluating things the way they want. Also, I made a design choice of prioritising availability over consistency in one case, I have the impression they didn't like it much during the conversation. It felt to me more like a presentation than a conversation, BTW. The company seems cool, to have a nice culture, and the project, despite of everything, was really interesting. I ended up deciding the company and I are not for each other as well, but I think for many other people in different phases of their careers it can be a very attractive opportunity and I think doing the project, although took me time, also helped to prepare better for other system design interviews elsewhere. The best thing about the interview was the feedback - it was really important to receive feedback and know what their decision was based on. This way I could take a lesson from it that will be useful on future interviews. Overal, I consider the process as a very positive experience, even though it didn't end up in offer.
Check out your Company Bowl for anonymous work chats.