Data Structures and Algorithms
Algorithms that are typically seen for generalist software engineer roles
Frontend developers as with any other software engineer role should know basic data structures and algorithms. A high level understanding of basic computer science concepts is foundational to becoming a better engineer. However, it also helps with problem solving in any programming role.
It's not surprising there will be at times interview loops that involve traditional algorithms mainly to test whether a candidate has the basic foundations to solve problems algorithmically.
Typically sites like leetcode.com or hackerrank have been popular for practicing and finding solutions to common algorithm problems that may often be found asked by different tech companies.
Neetcode's site has a great breakdown of the different patterns that make up the common groups of algorithms that may be seen during software engineer interviews.
Generally what I've seen useful has been a focus on the following types of patterns/groups:
Commonly Seen | Least Commonly Seen |
---|---|
Arrays and Hashmaps | Graph |
Two Pointers | Dynamic Programming |
Sliding Window | Backtracking |
Search/Sorting | Linked List |
Tree |
Last updated