When people say you should be cross-functional, they usually mean you should build cross-functional teams, i.e. a team that can handle the entirety of their stack (BE, FE, DevOps, etc.).
What most people don’t realize, however, is that cross-functionality is a spectrum, not a boolean. The spectrum evolves more or less like this:
Like everything, cross-functionality has pros and cons. The biggest pro is that Cross-functionality removes dependencies, and the biggest con is that Cross-functionality creates silos. Overall, the pros outweigh the cons, which is why most organizations are building cross-functional teams, but that doesn’t mean we should be blind to the cons.