Details
Experience: 4.5 years
Current role: FE
Screening round
Design and implement a voting poll UI component using any front-end framework (e.g., React, Vue, or Angular).
- The poll should display four voting options, each represented by a button.
- When a user clicks on a button, the corresponding option’s vote count increases, and the percentage distribution across all options updates dynamically.
- Each option should display a colored progress bar that visually represents its current percentage of total votes.
- The bars should update smoothly and in real time as users vote.
You may also include additional features such as:
- Distinct colors for each option’s bar.
- Animations or transitions for visual appeal.
- A total votes counter or percentage labels.
Loop interviews
Coding 1 (DSA)
Design and implement a task queue in TypeScript that supports controlled concurrency. The queue should allow executing up to K tasks in parallel, while additional tasks are queued until slots become available.
Each task should have a unique task ID and support success and error callbacks.
The design should also allow setting a custom executor to define how tasks are executed (for example, to add logging, retries, or rate limiting).
Coding 2 (UI coding)
Design and implement a modal component using any UI framework of your choice (e.g., React, Vue, or Angular).
The modal should support the following features:
- Primary and secondary action buttons (e.g., “Save” and “Cancel”).
- An optional close icon (X) for dismissing the modal.
- A configurable priority level to control modal stacking or importance.
- A mechanism to close all other open modals automatically when a new modal with higher priority is opened.
UI system design
Design and implement a calendar application (similar to Google Calendar) using any front-end framework of your choice (e.g., React, Vue, or Angular).
The application should support the following core features:
- Authentication: Allow users to sign up, log in, and log out securely
- Event Management: Users should be able to create, edit, delete, and accept event invitations.
- Each event should include details such as title, time, date, participants, and description.
- Calendar Views: Display events in multiple views: Month, Week, and Day. Enable switching between views seamlessly.
Manager round (zoom collaboration)
Some leadership and collaboration questions related to my past experience.