>>11195797It’s a very loose term that people use commonly to refer to careers that pertain to software, despite the fact that its academic scene is very strong in the US in grad school. Here, analysis isn’t required nor is general abstract algebra (though I double major with math, so I took them anyway), but those requirements are partially fulfilled with calc 1-3 and linear algebra being required for admission into the major, with proof based linear being heavily recommended. Every other requirement at my school matches yours, and I’m sure we both have electives that aren’t listed.
In the US, my view is that a CS degree is as hard as you want to make it. It’s either a worthless degree duct-taped together by basic requirements and intro classes + “development team classes,” or it’s a degree you go ham on. This is why I think engineering is a *nominally* harder choice upfront, since you don’t have the choice to bullshit past good courses, but I don’t see engineering as significantly harder based on shared classes (I took control theory and fluids on special permission out of interest) and on swapping homework sets. For CS, there is the systems route with OS, embedded, learning on signals, distributed computing, etc, or theory with advanced algorithms, recursion theory and complexity, computational X (topology, geometry, pick your poison, etc), domain theory, etc etc, which is best paired with a double major in math, since it exposes you early to the maturity and mathematics needed to progress in the field.