Software development is NOT as difficult as You think.
Just like any other skill, you can learn and excell at it.
Looking from the outside as a non-technical person, a developer writing code in an IDE looks like they’re hacking into a mainframe somewhere. Thanks, Hollywood.
In reality, they’re most likely changing a button’s color.
I found that many aspiring developers believe that this field has a high barrier to entry and is reserved for an elite group of smart, highly educated people.
I hate to break it to you, but:
1. Most software is basic CRUD apps.
Most apps and websites today operate by running a combination of create, read, update, and delete (CRUD) operations, handling server responses, and then updating the UI accordingly. Nothing groundbreaking.
Only a handful of engineers wake up every day to write world-changing code. The rest of us get to change a button color or a DB table.
There’s nothing wrong with that, but many developers don’t want to admit that their job is another mundane job.
Unlike the computer geeks in the movies, we aren’t hacking mainframes or breaking encryptions. Instead, we’re either changing a button's color or in a meeting discussing what shade of blue that button should be.
2. You don't have to know complex computer science theories.
It’s advantageous to know data structures and have a computer science degree, but it isn’t required. Modern languages and frameworks come optimized and prepackaged with the most efficient algorithms, which happen to be built by experts in the field.
Your job is to use those methods where needed, not reinvent them.

Solving difficult leetcode questions and finding the most optimized route for a certain algorithm are filtering mechanisms for Big Tech which gets thousands of job applications every day.
Outside of Big Tech, data structures and algorithms are rarely asked about, let alone required.
3. You can earn 6-figures building CRUD apps.
You can earn a salary of $100,000+ a year and provide a good life for your family by building CRUD apps. It's as simple as that.
I’m doing exactly that!
Do I know how to reverse a binary tree? No.
Can I code a fuzzy search algo? Also no.
Do I make 6-figures? Yes.
Are many developers doing the same? Also yes.
There’s a subset of developers and engineers with a superiority complex that can’t handle the statement, "You don’t need to know DSA to become a developer or an engineer."
We call them gatekeepers. From UrbanDictionary:
When someone is an asshole enough to tell you that you don't have enough qualities to like what you want to like or be what you want to be, solely based on their opinions and experiences, even if they don't know as much about what said person aspires to like / be.
They try to redefine the meaning of "software developer" to exclude others so they can feel better about themselves. Nobody cares who a real developer is or what a real developer knows or does.
Getting the job done efficiently is ALL THAT MATTERS.
4. Software development is a skill.
It’s a skill that anyone can learn, perform day-to-day tasks, and get paid well. That's what I and many others did. To be honest, there isn't much else to it.
I went from driving trucks to writing code for a living by following these steps.

Final words:
If you're learning how to code, stick to the basics, be consistent, and you'll make it.
I wish you all the best.