Take this object of key/value pairs, and turn it into an HTML structure. The key/value pairs in the object were laid out like so: { 'item1/id': 'my_id', 'item1/title': 'my_title', 'item1/group1/val1': 'val1', 'item1/group1/val2': 'val2', 'item1/group1/val3': 'val3' }
Senior Frontend Engineer Interview Questions
1,541 senior frontend engineer interview questions shared by candidates
Use this HTML, CSS, and JavaScript to make this button show a tool tip that appears next to the button.
- Given a string like "Wowwww" return the start and end indices of characters that repeat. This example would return `2, 5`. - Tell me how you've handled performance tuning in your applications? - Other questions in relation to my resume
Q: Why are you looking for a new role Q: We spend a lot of time in interviews, why would you want this job? Q: This job is really boring, why would you want this job? Q: Tell me something you've worked on. Q: I wasn't paying attention, can you tell me again something you've worked on? Q: What was the thing you worked on again?? How would you do it differently?
Explain a project that you worked on in the past.
Leetcode - count char occurrence frequency in a string and return an array of tuples.
Round 3 - Coding (again?) - 1 hour - A principal engineer from their team took this round. He skipped intros and jumped straight up in the round. Gave me a CodeSandbox link that had two problems - 1. Custom Dropdown Component Problem Statement: Create a reusable Dropdown component using React (or your preferred framework). The dropdown should: Render a list of items passed as a prop. Support keyboard navigation (ArrowDown, ArrowUp, Enter, and Escape keys). Allow selecting multiple items with a multiSelect prop. Close when clicking outside of the dropdown. Highlight the selected item(s). 2. Image Gallery with Infinite Scroll and Lazy Loading Problem Statement: Build an image gallery component that: Loads a set of images initially and continues loading more images as the user scrolls down (infinite scrolling). Implements lazy loading to defer the loading of images that are not yet visible in the viewport. Has a search bar to filter images based on a title or keyword. Use dummy image data (e.g., from https://jsonplaceholder.typicode.com/photos). First of all, I feel giving two problems of making two whole components is too much for a 1 hour round. Anyway, when I started showing him a component that I recently made as the inspiration for problem #1, has asked me to skip planning and start coding instead. I completed the basic working component within 30 minutes and started with the styling. He stopped me and asked me to do keyboard navigation instead. Since 30 minutes passed, I told him that we should start with the second problem since we didn't have much time. So I told him the approach and the entire coding solution for how we would do the keyboard navigation, but didn't code it. Also, told him how would the multi-select work, but again, didn't code it. Now, we started discussing the second problem. Since we didn't have much time, I started sharing a whiteboard and started visually solving the problem and explaining to him the algorithm for the infinite scroll. He didn't have an understanding of what an infinite scroll is and started implying that I didn't get the problem right. When I asked him to explain what he thinks infinite scroll is, instead of saying that "when a user scrolls to the bottom of the page, we load new images", he said "the user can scroll anywhere using the scrollbar which should be very small and the images in the viewport will be loaded then". I confronted him and told him that his idea of infinite scrolling is incorrect but he started laughing and we ended up our call there. Result - Rejected. I asked for feedback from HR and she said that my approach and understanding of the problem was incorrect so it isn't a good match. :) Wasted 3 hours successfully just to get rejected by an incompetent egoistic engineer.
Talk about a recent project you worked on that you are proud of.
Some questions about my experience at my previous company.
Given an object with an ID and array of dependancies that reference other IDs within the main object, create a function that accepts the main object and the desired ID such that the output would be all the dependancies, then the given ID. EX: all = [ {id:1, dep:[4,5]}, {id:4, dep:[6]}, {id:5, dep:[]}, {id:6, dep:[]} ] func(all, 1) => 6,4,5,1
Viewing 181 - 190 interview questions