Extracurricularly, I coach startups. I work with a lot of university grads who have completed, at minimum, a 4-year undergrad comp sci degree (most have completed grad school), and my experience is a bit different.
Nearly all of them are strong in the areas of design and software engineering principles. They are also strong in SQL, the Git/GitHub ecosystem, and at least one language/framework. And they know just enough about infrastructure to use a simple CI/CD pipeline. But anything beyond that infrastructure-wise (networks, security, tiered architecture, IaC, services, PaaS, etc.) is foreign territory for them because it isn't covered during a typical undergrad program.
Now this is perfectly OK in my opinion because I provide that for them initially and teach them many of those concepts while coaching their projects. There is limited time in any undergrad program, and I'd rather universities spend that time focusing on what they are currently focusing on because that is a foundation I can work with.
Nearly all of them are strong in the areas of design and software engineering principles. They are also strong in SQL, the Git/GitHub ecosystem, and at least one language/framework. And they know just enough about infrastructure to use a simple CI/CD pipeline. But anything beyond that infrastructure-wise (networks, security, tiered architecture, IaC, services, PaaS, etc.) is foreign territory for them because it isn't covered during a typical undergrad program.
Now this is perfectly OK in my opinion because I provide that for them initially and teach them many of those concepts while coaching their projects. There is limited time in any undergrad program, and I'd rather universities spend that time focusing on what they are currently focusing on because that is a foundation I can work with.