I applied online. I interviewed at Squarespace (Dublin, Dublin) in Apr 2025
Interview
Overall Experience:
The experience was average. The process included six rounds in total:
HR Screening – Focused on your understanding of the company and expectations for the role.
DSA Round – Two easy to medium-level LeetCode-style problems.
Four Loop Interviews (1 hour each):
Data Structures and Algorithms (DSA) to assess depth of knowledge
System design round (whiteboarding) with a manager
Behavioral round with another manager
Code review and object-oriented programming (OOP) concepts
Candidates who clear these rounds move on to a final interview with the hiring manager.
My Experience:
The scheduling of interviews was handled well, and all the interviewers were supportive throughout the process. However, the job description and team I was initially applying for were changed midway through the interview loop, which was unexpected.
Unfortunately, I did not progress past the loop rounds and received a rejection seven days later without any feedback. I reached out to the recruiter, and while they initially scheduled a feedback session, it was canceled without explanation, which was disappointing.
Interview questions [3]
Question 1
DSA Round:
I was asked to implement a notification feed system using a LIFO mechanism. The task involved working with a Notification object and implementing several stubbed methods such as add, remove, contains, and others to manipulate the feed accordingly.
System Design Round:
I was asked to design a scalable system that applies video filters to videos uploaded by users on a website. The discussion also included integrating OAuth authentication to securely manage user access. The round focused on system components, scalability, asynchronous processing, and handling authentication flows.
OOP & Code Review Round:
I was presented with a large, buggy codebase and asked to review it live in an IDE. The focus was on identifying anti-patterns, code smells, and suggesting improvements and bug fixes. No actual coding was required—only live commenting and feedback on the existing implementation.