Kubernetes supports resource requests and resources quotas to combat this. You should be protecting your production workloads this way anyway.
> In your shared cluster scenario you would be limited by the size of your cluster.
On the other, with a shared cluster, it makes sense to dedicate more resources to it, and share it across both developers and CI systems.