Make sure you are able to set pixels and create audio samples (sine function sampled over a discrete time steps). Also make sure to store the results as PPM P3 (very simple text-based image format) and WAV. Some inspiration form Wellons: https://nullprogram.com/blog/2017/11/03/
Then you can implement a ray tracer, a rasterizer or audio generator.
Other ideas:
- implement your simple neural network learning XOR
- implement your hash table or your version of std::unordered_map (array +
hash function + tombstones)
- arena allocator
- dynamic array or your version of std::vector
- a circular/ring buffer (that you can also use as a queue/stack)I'd suggest looking for a project with a little more specific relevance to a target field (unless you want to work for eg. chess.com, I guess)?
Otherwise, looking at C++, there's work in finance, gaming, embedded, scientific computing, (and others) ... all quite different areas, with different skills and experiences that would be relevant. You might also think about which companies (or even countries) you'd like to work in, and consider where you'd fit.
Do some research on presentations for C++ conferences: where do the presenters work? Look at open source libraries -- who sponsors the projects? Where do the people work for their day jobs?
If nothing else, doing a bit of thinking and research will give you a good story for why you did a particular project, or tried for a particular internship. Almost anything is a better answer than "it fell in my lap and I had no other ideas" (or "some rando on HN suggested it", for that matter).