It's not just general stuff about being able to understand general algorithms and such, it's far more than that. Assuming your school does a good job you'll be learning about how to architect and design... and a lot of that transcends domain boundaries.
The *same* exact skills that I use for architecting software I've used when our systems group didn't do their job and the software team had to take over and produce the needed artifacts (customer required). How you go about defining interfaces between hardware components isn't really any different than what you do to do so between software components.
In fact, I'm now working at developing a business process for a whole new line of business. There's hundreds of government documents regulating it. So... it's take all the same skills that are used in successful software development and apply to this instead. Setup an architecture framework for the process that meets your needs. In this case it's ensure that the regulations are traceable to the process we generate and that the process is created in such a way that certain structural requirements are met. Then it's decomposition to individual subsystems (individual processes) and flowing requirements down and then designing them. It's the same skills behind it all.
Yes, there's domain specific stuff that may not be apropo to what you're *currently* wanting to do. But there is (or should be!) a lot of domain-independent skills that are applicable to a whole wide range of design domains including web design. Learning this set of skills makes it very easy to transition jobs in the future if needs or wants change.