We consider a “k-out-of-N” system with different standby modes. Each of the N components consists of multiple part types. Upon failure, a component can be repaired within a certain time by switching the failed part by a spare, if available. We develop both an exact and a fast approximate analysis to compute the system availability. Next, we jointly optimize the component redundancy level with the inventories of the various spare parts. We find that our approximations are very accurate and suitable for large systems. We apply our model to a case study at a public organization in Qatar, and find that we can improve the availability-to-cost ratio by reducing the redundancy level and increasing the spare part inventories. In general, high redundancy levels appear to be useful only when components are relatively cheap and part replacement times are high.