HR Call: Initial contact from HR to discuss the role and your profile.
Assessment: A coding test to evaluate your technical skills.
Technical Rounds: Three back-to-back technical interviews, each focusing on specific areas such as React, APIs, UI design, task management, and security.
The assessment consists of multiple sections. First, you'll be asked to dynamically display tasks in a board layout based on different statuses like To-do, In Progress, and Done, and loop through these tasks to render them accordingly. Next, you will need to create a form to add new tasks to the board, ensuring they are initially placed in the 'TO_DO' column by default, and handle the form submission to update the board dynamically. In the API consumption section, you'll need to fetch a list of tasks using a provided API and display them, and also fetch user names from a separate endpoint and display them in the task cards. You'll also be required to handle asynchronous API calls and ensure that the UI updates correctly once the data is fetched. Finally, you must implement logic to ensure newly created tasks are added to the correct status column and optimize fetching and displaying large sets of task data for performance.
The R1 interview questions cover a range of topics.
Round 2 interview questions focus on admin dashboard design and user management.
You'll be asked about the roles that should exist in an admin dashboard for managing users and the UI design for the dashboard. The interviewer will ask you to describe how you would display a list of users and handle searching for users, particularly when dealing with a large number of users. You'll need to explain how you would display large sets of data, like 10,000 or 20,000 users, efficiently. When discussing adding a new user, you should outline the flow for adding a user in the system. The high-level architecture of an admin dashboard for user management should also be described, focusing on its components and structure. You'll also need to address security and scalability—how the system scales with growing data and maintains security. Role-based access and user management will come into play, where you'll discuss the roles required to manage users. The UI components for user management (like forms for adding users) should be outlined. Finally, you'll need to discuss how to implement searching and pagination for users, especially when dealing with large amounts of data.
In Round 3, questions focus on task management, API handling, and front-end best practices.
You’ll need to display tasks dynamically in a board layout based on statuses (To-do, In Progress, Done) by looping through JSON data and rendering cards accordingly. For dynamic interaction, you'll create a form to add tasks, with default placement in the "To-do" column, and update the board via state. When consuming APIs, you'll fetch task data and assigned user names, managing asynchronous calls with React hooks. For task updates, logic ensures new tasks are placed in the correct column. To optimize performance with large datasets, implement pagination or lazy loading. Front-end security practices include input validation, preventing XSS, and using HTTPS, while TDD ensures tests are written before the code. In Object-Oriented Programming (OOP), you'll write a Circle class to calculate areas based on center and topmost points. For the admin dashboard role, key tasks involve defining roles like Admin and User, designing a UI with tables and search functionality, and handling large data with pagination. Lastly, the architecture should be modular, secure, and scalable with efficient data handling techniques.
The following metrics were computed from 1 interview experience for the Visa Staff Engineer role in Warsaw, Masovian Voivodeship.
Visa's interview process for their Staff Engineer roles in Warsaw, Masovian Voivodeship is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Visa's Staff Engineer interview process in Warsaw, Masovian Voivodeship.