Read The Pragmatic Programmer, then Code Complete 2. These books will help you approach problems and people. Most important thing I've learned is to write code other people can read. A lot of times that person can be future you.
Learn design patterns, approaches to getting requirements, and how to read/create diagrams.
Learn how to write unit tests.
Learn source control tools and how to use them. If it's a command line, know how to do this from the command line.
Learn best practices for your language and get really good at your editor/IDE. (For instance, I use VIM with syntastic and pylint to check PEP8 compliance).
Learn to type quickly and accurately. This helps with everything.
If you've done those, enjoy your Summer! It's the last one you'll ever have :).
Some other things that would be fun:
- Set up a Docker image
- Write a REST API server in Python on a Linux OS
- Build in authentication, authorization, documentation
- Have Docker build and run your REST API server
- Set up a load balancer container to distribute load between multiple Docker containers
- Set up a shared cache like Redis or Memcache with containers
- Set up a MySQL Database
- Write unit tests for API
- Have Docker container automatically build, test, and deploy when you check in code
That will bring up a lot of questions of how you design things and how everything is tied together. Maybe you will just be working on a small part of this, but then you might know why things are done a certain way or how to do them better. That's where you can make a difference and distinguish yourself. You can bring a fresh perspective. Don't take anything for granted. Ask questions when they need to be asked. Learn how things can be improved.