Cómo desarrollar esta habilidad: ‘Debe tener experiencia en el desarrollo de sistemas tolerantes a fallas distribuidos y altamente escalables’

No para ser molesto, pero lo haces, er, haciéndolo. Tenga en cuenta que no obtendrá esta habilidad en la escuela, a menos que trabaje en un proyecto de investigación que tenga estas características.

Alguien que cumplió legítimamente con estos requisitos probablemente ayudó a construir una aplicación distribuida a gran escala o un sitio web de producción (y, francamente, sería difícil de encontrar a menos que quien esté contratando esté dispuesto a abrir su billetera).

Algunos ejemplos de software como este: algunos administradores de datos NoSQL como Cassandra y MongoDB, algunos motores de bases de datos SQL distribuidos como MySQL Cluster y Clustrix, algunos usos del ecosistema Hadoop, etc.

Las implementaciones particulares de motores db más comunes pueden cumplir estos requisitos si se utiliza una replicación extensa y un diseño de conmutación por error cuidadoso.

Si quisieras aprender estas cosas de una manera académica, probablemente comenzaría con Cassandra, ya que tiene un diseño muy limpio y te expone a muchas de las preguntas y compensaciones de diseño que verías en una distribución, Arquitectura escalable.

Prueba hadoop. Tiene todas las propiedades mencionadas.