I recommend that you study computer science, as that will also teach you the basics of software engineering.
From having 2+ decades of professional experience & seeing how people behave in both of those areas, what I've noticed is that studying computer science helps one become a better software engineer. However, trying to become a software engineer first, shows that a developer's skills in computer science will be lacking & show amateurish mistakes, over time.
People try to hide those mistakes, by championing their work/libraries/frameworks as "better" than anyone else's. That might be a good sales pitch for a quick prototype for a demo, but when trying to use libraries & frameworks in massive-scale enterprise-level projects, those libraries & frameworks show the lack of skills that the original code authors had.
In today's web development landscape, everyone is afraid of "reinventing the wheel". So they reach out & cobble together everyone else's code into their project. You can build wonderful tools like Slack in that manner. However, if someone asks you to add a feature to extend the functionality of your application... you'll often times be faced with the reality of having to EDIT someone else's underlying component. No software developer wants to do that. So they reply back to the person making that request, that "It's not possible to extend that software to add that requested feature." In today's NPM eco-system, your project can have 10,000+ automatically downloaded & included sub-components! Do you really want to look through any of those to fix your code? Software engineers might edit 1 sub=component, but not 10, 100, 1,000, nor 10,000! SE's simply want to plug & play components (like Lego bricks). They don't usually want to design customized components (bricks), which are what makes the website (& toys) look really cool! (How is a Lego spaceship supposed to look really cool, without a radar dish or laser guns?)
If you were a computer scientist, who also had software engineering skills... then you could write your own library & framework, with a small core group of components, which would play nicely together. Then when someone asks, can we add 1 feature, you can reply, "yes & I can add 2-4 other features too!" Software engineers can work for almost any company, but some research labs (like NASA) or massive scale companies (like Amazon) could prefer Ph.D.'s in computer science over SE's.
Learning the theory behind writing software will turn you into a better computer programmer. It will also allow you to design your own algorithms in the future. Both tracks will pay well in the future, so don't worry about that. What you want to avoid is getting 20 years down the road & being seeing as someone who doesn't know how to program. To become a rockstar developer, study computer science. You'll also learn software engineering along the way as you start writing code & building web based projects!
Good luck in your studies & future endeavours!