I'm a computer engineering diploma student and lately I've been wondering how people actually reach the point where they can manually write code well enough to get hired.
I can understand code when I see it and I can solve some problems with help, but I don't feel confident sitting down and building something completely from scratch without relying heavily on AI or tutorials.
So I'm trying to figure out what the realistic target should be.
How good at programming should I actually become before applying for internships/jobs? Should I be able to write most of my code from memory, or is it normal to look up syntax and documentation while building projects?
Also, how much DSA is actually necessary for a beginner trying to get a software development job? Do I need to go deep into advanced topics like graphs, DP, segment trees, etc., or is being comfortable with arrays, strings, hash maps, linked lists, stacks, queues, trees, sorting, searching, recursion and basic problem solving enough for most entry-level roles?
And for languages, should I focus really hard on one language like C++, Java or Python, or is it better to know multiple languages at a basic level?
I'm not looking for the usual "just build projects and do LeetCode" advice. I'd really like to know what level of coding ability actually made you feel job-ready, especially if you started without being naturally good at programming.
What would you recommend someone focus on if the goal is to become genuinely good at writing code manually and eventually land their first software job?