¿Qué tipo de cursos de informática deberían tomar si están interesados ​​en crear aplicaciones en la nube como AWS, Firebase o Azure?

Esto es lo que recomendaría como núcleo mínimo:

  • Sistemas distribuidos: AWS y Azure están diseñados para ejecutar aplicaciones distribuidas. Toda la arquitectura y el enfoque asumen esto: es por eso que no hay AWS SLA que garantice que todas las instancias que inicie realmente entren en estado de ejecución, por ejemplo. El 100% de sus instancias de AWS pueden morir sin previo aviso, y eso tampoco es una violación de SLA. AWS y Azure asumen que va a utilizar principios de sistemas distribuidos para diseñar su aplicación para que sea resistente y autorreparable.
  • Redes. Todas las partes de su aplicación tendrán que hablar a través de la red de AWS, así que aprenda mejor cómo funcionan las redes Ethernet e IP y cómo programar la red. Hazlo mal y obtendrás todo tipo de errores difíciles de rastrear.
  • Estadísticas: para monitorear y administrar su aplicación distribuida, deberá aplicar métodos estadísticos y saber si lo que está viendo es estadísticamente válido.
  • Matemáticas discretas: la teoría de conjuntos y los otros aspectos de las matemáticas discretas son la base de varios algoritmos, especialmente los distribuidos. También puede encontrar que las estadísticas son mucho más fáciles de entender si se explican utilizando la teoría de conjuntos. Las matemáticas discretas también son fundamentales para la criptografía.
  • Criptografía: una aplicación distribuida debe asegurarse para sobrevivir y atacar y mantener seguros los datos confidenciales, y evitar atacantes que puedan leer el tráfico que pasa entre sus instancias de AWS / Azure. Debe comprender cómo funcionan las diversas formas de cifrado para usarlas de manera efectiva y segura.
  • Algoritmos: de todos modos, esto es ciencia de la computación central, pero debe prestar atención a los algoritmos de “dividir y conquistar”, ya que a menudo estos pueden paralelizarse efectivamente dentro de un sistema distribuido.
  • Bases de datos Las bases de datos se utilizan para almacenar el estado persistente a largo plazo en muchas aplicaciones distribuidas y para permitir la resistencia y el escalado horizontal. Es vital comprender qué son las bases de datos, qué son las transacciones, qué significa la integridad transaccional y las propiedades de escala de varios tipos de bases de datos.

Hay más cosas que debes tomar, pero solo quería cubrir el conjunto mínimo de cursos relacionados con Iaas.

Creo que la respuesta de Mathew Lodge es probablemente lo que estás buscando, sin embargo, agregaré pensamientos adicionales.

No tome cursos de informática. Si desea crear aplicaciones en la nube con AWS o Azure, obtenga una cuenta y comience a crear aplicaciones en la nube con AWS o Azure. La tecnología dentro de las aplicaciones basadas en la nube está cambiando muy rápidamente. La mejor manera de mantenerse al tanto de esa tecnología es utilizarla. Una clase de ciencias de la computación dirigida a AWS estará lamentablemente atrasada para cuando se reúna el material del aula, y mucho menos los meses de tiempo que llevará presentar ese material. Dentro de un período de seis y nueve meses, un porcentaje muy saludable de todo lo que pasó tiempo aprendiendo en clase puede estar desactualizado.

La nube se trata de agilidad y velocidad. Trabajar dentro de la tecnología será una de las mejores maneras de prepararse para trabajar en la tecnología. Si está en el camino de la ciencia de datos y, en última instancia, trabajará como analista o arquitecto, permanezca en la escuela. Si está trabajando para convertirse en un programador creando aplicaciones, lo mejor que puede hacer es salir, ser ágil, moverse rápido.

Te concederé que este es un consejo diferente al que estás acostumbrado a escuchar, pero conozco a demasiadas personas que han entrado en TI y desarrollo sin ninguna educación formal (incluido yo mismo). No es un paso necesario para conseguir el trabajo. La mayor parte de TI se basa en que usted haya demostrado conocimiento, no un certificado. Los aspectos del trabajo dentro de TI requieren títulos avanzados. El resto, solo requiere habilidades, conocimiento y luego experiencia.

Mateo ha cubierto la mayor parte del terreno en los detalles. Me gustaría hacer una sugerencia general en su lugar.

Mi sugerencia sería no decidir cursos basados ​​en aplicaciones o tecnologías específicas. La informática es vasta e interesante. Simplemente toma los cursos que te parezcan interesantes, aprende y sigue la corriente 🙂