All posts

Data Structures and Algorithms: Do You Really Need Them?

By Fola Oladipupo, Techera · · 6 min read

If you are asking "do I need data structures and algorithms?", the honest answer is: you need the basics for almost any programming role, but how deep you go depends on the job you want and the companies you apply to. A frontend developer at a small agency and a backend engineer applying to a large international tech company face very different expectations.

Data structures and algorithms (often shortened to DSA) are not a gatekeeping trick. They are the vocabulary of how programs organise and process information. But many beginners spend months grinding puzzle problems before they have built a single working project, and that is usually the wrong order.

This guide explains what DSA actually is, how much each role needs, and a sensible way to learn it without stalling your progress.

What are data structures and algorithms?

A data structure is a way of organising data so a program can use it efficiently. Lists, dictionaries (also called hash maps), stacks, queues, trees and graphs are all data structures. You already use some of them without thinking about it: a contact list on your phone is a kind of sorted list, and searching it by name works like a lookup table.

An algorithm is a step-by-step method for solving a problem. Sorting a list, searching for an item, or finding the shortest route between two places on a map are all algorithmic problems.

Together, they help you answer one practical question: "Will this code still work well when the data gets big?"

Why do people say you need DSA?

There are two separate reasons, and it helps to keep them apart.

  1. For writing good software. Choosing the right structure can make code faster, simpler and easier to maintain. Looking something up in a dictionary is usually far quicker than scanning a long list item by item. You need this kind of understanding in real work.
  2. For passing interviews. Some companies, especially larger technology firms and many foreign employers hiring remotely, use algorithm puzzles in their technical interviews. This is where the "grind hundreds of problems" advice comes from.

The first reason applies to nearly everyone who writes code. The second depends heavily on where you apply.

How much DSA does each role need?

Here is a rough guide. Treat it as a starting point, not a rule, because companies vary a lot.

Role Everyday use Interview emphasis
Frontend developer Arrays, objects, basic searching and sorting Usually light to moderate
Backend engineer Hash maps, queues, trees, complexity thinking Often moderate to heavy
Data analyst Tables, filtering, grouping, basic efficiency Usually light; SQL and statistics matter more
ML / AI engineer Arrays and matrices, graphs, complexity Often moderate to heavy
DevOps / SRE Queues, logs, basic complexity Usually light to moderate; systems knowledge matters more
QA engineer Basic structures for test automation Usually light
Security engineer Varies; hashing and encoding concepts matter Varies widely
Product manager, technical support Rarely writes algorithms Usually none

If you are aiming at product management or technical support, you don't need to study DSA at all to get started. Understanding the basic ideas will still help you talk with engineers, but nobody will ask you to reverse a linked list.

What should a beginner learn first?

Start with the core ideas that show up everywhere:

  • Arrays and lists: storing items in order, looping through them, adding and removing.
  • Dictionaries / hash maps: storing key-value pairs for fast lookup.
  • Strings: splitting, joining, searching and counting characters.
  • Stacks and queues: last-in-first-out and first-in-first-out, which appear in undo buttons, task queues and browser history.
  • Big O notation: a simple way to describe how the time or memory your code needs grows as the input grows.
  • Basic searching and sorting: linear search, binary search, and an understanding of why sorting matters.
  • Recursion: a function that calls itself, which is the foundation for working with trees later.

This is enough for many junior roles. Once you are comfortable, move on to trees, graphs, and techniques like two pointers, sliding windows and breadth-first search, if your target jobs call for them.

When should you learn DSA?

The common mistake is to treat DSA as step one. It works better as step two or three.

  1. Learn a language first. Get comfortable with Python or JavaScript: variables, loops, functions, and simple programs.
  2. Build a couple of small projects. This gives you real problems where data structures matter, so the theory has something to attach to.
  3. Learn the core DSA ideas above. Practise with short problems, two or three a week.
  4. Go deeper only when you start interviewing, and only as deep as the companies you are targeting require.

If you are not sure whether your target role leans heavily on algorithms, it is worth working that out before you commit months to it. You can take the free TechDNA assessment to see which roles suit how you think. One of the traits it measures, Analytical Reasoning, is closely tied to how comfortable you are likely to feel with algorithmic problems.

Free resources for learning data structures and algorithms

You don't need to pay to learn the fundamentals:

  • Harvard CS50 covers arrays, linked lists, hash tables, trees, sorting and searching in its early weeks, with clear lectures and problem sets.
  • freeCodeCamp has a JavaScript curriculum that includes algorithm practice, plus long-form video courses on its YouTube channel.
  • Khan Academy has an introductory algorithms section covering searching, sorting and recursion.
  • roadmap.sh has a computer science roadmap showing which topics connect to which.
  • TechLearnX, Techera's learning platform, has a free foundation course on data structures and algorithms alongside its programming courses.

Pick one main resource and finish it, rather than sampling five.

How to practise without burning out

  • Do fewer problems, more carefully. After solving a problem, ask why your solution works and whether there is a simpler approach.
  • Write down patterns. Many problems are variations of a few patterns. Keep notes on which pattern solved which kind of problem.
  • Use a timer, but not at first. Speed matters for interviews, but understanding comes first.
  • Explain your solution out loud. In interviews you will need to talk through your thinking, so practise that habit early.
  • Mix in project work. If you only do puzzles, you will find interviews easier but real jobs harder.

If you are studying around a job and family, slow and steady wins. Our guide on learning tech while working full-time covers how to fit study into a busy week, and how to prepare for a technical interview explains where DSA fits in the wider interview process.

Frequently asked questions

Can I get a tech job without knowing data structures and algorithms?

Yes, for many roles. Product management, technical support, many data analyst jobs and some frontend and QA roles focus far more on practical skills and tools. For backend, ML and roles at large tech companies, expect at least some DSA in interviews.

Do I need to be good at maths to learn DSA?

Not for the fundamentals. You need logical thinking and patience more than advanced maths. Some advanced topics touch on maths, such as graph theory or probability, but most junior-level DSA is about reasoning through steps clearly.

Which programming language is best for learning DSA?

Python is a popular choice because its syntax is short and readable, so you can focus on the idea rather than the language. JavaScript works fine too, especially if you are heading towards web development. Use the language you already know best.

How long does it take to learn the basics?

It varies with your background and how much time you put in each week. Many people get comfortable with the core ideas over a few months of regular practice alongside project work. There is no need to master everything before you start applying.

Data structures and algorithms are a tool, not a test of whether you belong in tech. If you want to know which roles fit your strengths before deciding how far to go with DSA, take the free TechDNA assessment. It takes about seven minutes and gives you a ranked list of role matches.

Discover your TechDNA

7-minute AI assessment · 9 tech roles · One survival score

Start Free Assessment

Keep reading