I recently graduated with a software engineering degree and understand the core concepts of C++, along with some more advanced topics. I have completed a few small projects, but nothing substantial enough to showcase as major experience. Lately, I feel stuck and unsure what would be most valuable to study in today's job market. Should I focus on building larger, complete projects—such as full-stack applications—to gain practical experience and create a portfolio? Or should I spend more time reviewing fundamentals first? I sometimes forget basic concepts and worry that moving forward means I'm overlooking important gaps. Which fundamentals, such as data structures and algorithms, are worth becoming comfortable with before committing to larger real-world projects?
1 Answer
You already have enough foundation to start building. Pick a practical project and work through the parts you don’t know as they come up. A larger project will teach you architecture, debugging, documentation, version control, and how to finish something end to end—things that are difficult to learn by studying fundamentals in isolation. Keep reviewing the basics when you encounter gaps, but don’t wait until you feel completely ready.
It’s also fine to keep revisiting fundamentals while working on projects. Knowing the basics is not a one-time milestone; even experienced developers return to them regularly.

That makes sense. I think fear of wasting time and comparing myself to other developers has been keeping me from starting. I’ll try choosing a direction and building something instead of waiting to feel fully prepared.