LinkedIn Interview experience | SWE | Frontend

linkedin logo
linkedin
Software engineer, Frontend2 years
April 5, 20252 reads

Summary

I successfully interviewed for a Frontend Software Engineering role at LinkedIn with 2 years of experience. I cleared all 7 rounds, which included technical, system design, and product taste discussions, and subsequently received and accepted an offer.

Full Experience

Role Applied For: Software engineer, Frontend YOE: 2 years

I recently went through the interview process for a frontend software engineering role at LinkedIn, and wanted to share my experience in case it helps someone else.

There were 7 rounds in total, including the initial phone screen. I applied via referral and heard back from HR within a week. I asked for a bit of prep time, so the first interview was scheduled the following week.


Round 1: Phone Screening Round

  • This was one of the trickiest rounds. The panel initially asked about the differences between HTTP requests. What seemed simple at first quickly turned more complex, and we ended up discussing idempotency and browser caching in GET requests, among other things.

  • After this discussion, we quickly moved on to machine coding, where I was asked questions about prototypical inheritance, closures, constructor functions, and the concepts of bind, call, and apply.

  • Then, I was asked to implement a memoization higher-order function (HOF).

I received a call from HR the next day confirming that I had cleared this round, and there would be 6 more rounds.

Round 2: Browser JavaScript Round

This one was mostly about core browser + JS knowledge.

  • This round focused on JavaScript, particularly DOM manipulation and browser-based JS. The interviewer quickly went into depth and tested my understanding of core concepts throughout
  • Q1: Re-implement the includes method for any DOM node’s class list. Discussed good edge cases around it
  • Q2: Efficiently parse query strings from a given URL.

The interviewer dug deep into time and space complexity, even for built-in methods. Definitely worth brushing up on browser APIs and their internals.

Round 3: Product Taste

No coding here — just a product and thought process round.

  • This round was a mix of product and technical discussions, with no machine coding involved. The goal was to assess my understanding of how a product works and whether I can think beyond just the technical aspects.
  • I was asked questions about good testing practices, working style etc
  • One interesting question: What’s a feature you think LinkedIn is missing?

Round 4: UI focused DSA

There were two questions in this round.

  • The first question involved extending the String prototype in JavaScript and implementing a custom function for repeating any string n times.
"abc".repeat(3) should give "abcabcabc"
  • O(n) was very obvious and she asked me to think about O(log(n)) only
  • The second question was about efficient DOM tree traversal. Given two nodes node1 and node2, check if node2 is a descendant of node1 somewhere in the DOM. Focus was on efficient tree traversal and edge cases

Round 5: Frontend system design

This one was more open-ended and definitely fun.

  • The initial task was to display a blip on a world map every time someone joins LinkedIn.
  • I mentioned choosing between polling and sockets. The interviewer made sure I wasn't just using jargon and spent a good amount of time evaluating whether I was making a calculated choice between the two.
  • After I finished the basic solution, the interviewer added a twist — we could now fetch data only every 5 minutes, but still had to show a real-time view on the map. It made things more interesting, and the round turned into a collaborative problem-solving session, which was actually pretty fun

Round 6: Pragmatic UI

Tough but interesting round — very real-world.

  • The task was to design a filters section like on Amazon, handling fetching and storing filters, rendering and toggling them, syncing filter state with the UI, making efficient POST requests on changes
  • Discussed debouncing in detail
  • Honestly, it was difficult to think through and implement everything in just one hour, but thankfully, the interviewer was more interested in the implementation than the time constraint

Round 7: Hiring manager round

Very chill round compared to the others.

  • Mostly about past projects, team dynamics, and growth plans.
  • The manager was super friendly and kept things conversational

Interview Questions (8)

Q1
Implement Memoization Higher-Order Function
Data Structures & Algorithms

Implement a memoization higher-order function (HOF).

Q2
Re-implement DOMTokenList.prototype.includes
Data Structures & Algorithms

Re-implement the includes method for any DOM node’s class list. Discussed good edge cases around it.

Q3
Efficiently Parse URL Query Strings
Data Structures & Algorithms

Efficiently parse query strings from a given URL.

Q4
Identify a Missing LinkedIn Feature
Behavioral

What’s a feature you think LinkedIn is missing?

Q5
Implement String Repeat Function (O(log n))
Data Structures & AlgorithmsMedium

Extend the String prototype in JavaScript and implement a custom function for repeating any string n times. Example: "abc".repeat(3) should give "abcabcabc". The interviewer asked to achieve this in O(log n) time complexity.

Q6
Check if DOM Node is Descendant
Data Structures & Algorithms

Given two DOM nodes node1 and node2, check if node2 is a descendant of node1 somewhere in the DOM. Focus was on efficient tree traversal and edge cases.

Q7
System Design: Real-time User Join Blips on World Map
System DesignHard

Design a system to display a blip on a world map every time someone joins LinkedIn. Discussed choosing between polling and sockets. Twist: fetch data only every 5 minutes, but still show a real-time view on the map.

Q8
Design Amazon-like Filters Section
System DesignHard

Design a filters section similar to Amazon, covering aspects like fetching and storing filters, rendering and toggling them, syncing filter state with the UI, and making efficient POST requests on changes. Discussed debouncing in detail.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!