The biggest challenge in Computer Science is always "The P versus NP problem is a major unsolved problem in computer science. It asks whether every problem whose solution can be quickly verified (technically, verified in polynomial time) can also be solved quickly (again, in polynomial time)." (https://en.wikipedia.org/wiki/P_versus_NP_problem)
Assuming the computer science graduate got their degree from a decent school, the biggest problem they’ll face as they go into most software development roles is that they don’t know anything of value for their new role.
Well, I suppose if they had to write code for their degree they might have some familiarity with the language they’ll be using in their new role, but that’s of very limited value.
Just to be clear, theoretical and applied CS are critical for pushing out the boundaries of what is computationally possible, although software development is almost never about working at the edge of the computationally possible. There’s also some value in the contextual understanding that CS or a software engineering degree provides, although it takes experience to actually get value out of that context.
There is a growing talent gap between what the industry requires and what the CS departments regularly churn out as graduates. Now this does not mean that CS degrees are not good.
Dinesh recommends the following next steps:
There's often a feeling that certain technical aspects or technologies can provide to be quite the challenge. However, I like to abstract the strife that comes from any of these things and state the the biggest challenge of a Computer Scientist is maintaining confidence. Engineering is the field of solving problems that don't have answers, and thusly you're going to feel often that you; Don't know enough, aren't smart enough, don't have the skills etc. This couldn't be further from the truth.
What you really do as an Engineer is be bold in the face of these challenges, despite their occasionally overwhelming scope. Yes, it can be quite daunting at times, but by developing your skillset, gathering your resources, and maintaining your confidence, you can solve any problem in the world.
Be bold, my friend.
Tristan recommends the following next steps: