DSA for FE devs?

How much Data Structures and Algorithms is enough as a Frontend Developer?

Recent trends in frontend interviews have shown that even in companies like Google, Uber, etc PS/DS rounds are not concentrated on hardcore competitive programming level DSA questions.

However, let me tell you that for these big corps, ie the ones who pay above-average salaries one round of PS/DS is still a norm. Even in Microsoft, in my org, we have changed how we interview for FE/UI roles, and still, have one round of PS/DS.

What should you not expect?

I don't see trees and graphs being asked, neither Dynamic Programming, Sorting, Divide & Conquer, etc. being asked for UI interviews so we need not worry about these now. Any question which is somewhat advanced is deferred in these interviews.

Why are people still asking DSA though?

The way entry-level programmers look at DSA and projects is different from how seasoned devs look at it. Seasoned devs know, for instance, that knowing when to use an array and object can make all the difference in performance. While it’s true that you don’t use the most advanced data structures and algorithms daily knowing the basics of performance and memory helps you make the right choice.
These things are considered as `basics` by anyone working in the industry. I personally feel that knowing and understanding this will definitely help you appreciate computer science. Even if you don’t learn it for interviews you should learn it for your knowledge.

ok, tell me the bare minimum…

From what I’m seeing across the industry, any FE dev looking for above-average pay should know the basics. Expect some problem-solving questions around the array, stack, queue, string, hashmap, and binary search. Hashmap questions are crowd favorite as there’s a huge difference between the brute force approach and the right approach.

In conclusion, practice questions from these topics as a bare minimum. This would create a safety net for that one PS/DS round in dedicated FE interviews.

Edit: This post holds true for experienced devs. For freshers, the best way (or the only way) to get into these companies is by the competitive programming DSA round. UI as a specialization is valued only after 3-4 years of experience minimum.

Your thoughts? Please put in comments. I love to read those and reply!