Comienza a especializarte en la nube pública y dedícate a un sector con enormes posibilidades profesionales. Alcanza el nivel Cloud Expert.

Qué conocimientos y experiencia debe tener un perfil para llegar al nivel Expert.
Es un perfil técnico cuya experiencia en cloud oscila entre los 2 y 4 años, que ha desarrollado productos o soluciones cloud native con unos conocimientos mínimos de seguridad, escalabilidad y elasticidad en algún proveedor de nube pública.
AWS Architecture Center
Los distintos proveedores Cloud ofrecen un catálogo de servicios que puede llegar a ser abrumador incluso para aquellos con una amplia experiencia en la nube. Ser capaz de diseñar arquitecturas y elegir los servicios adecuados para cada caso de uso es una habilidad que requiere amplia experiencia y conocimiento, aunque recursos como el Centro de Arquitectura de AWS nos proporciona una amplia variedad de ejemplos de arquitecturas tipo categorizadas según el caso de uso.
Conocer muchas de estas arquitecturas de ejemplo es una buena base para desarrollar posteriormente nuestra habilidad como arquitectos de soluciones en la nube.
Core services
Un reducido grupo de servicios destaca dentro de la amplia gama que ofrece AWS, ya que son tan útiles que podemos encontrarlos en prácticamente cualquier arquitectura de aplicación, o bien son usados internamente por AWS como soporte para construir otros servicios.
Security Basics
La seguridad de los datos de nuestros clientes es un prioridad para Keepler, especialmente cuando se trata de datos personales o sensibles. A este respecto es importante conocer todas las buenas prácticas de seguridad para proteger las aplicaciones que desarrollamos (gestión de secretos, validación de inputs, reducción de la superficie de ataque…), así como los tipos de intrusión más comunes (inyección SQL, ataques de denegación de servicio, cross-site scripting…) y cómo protegernos de ellos. Recursos como la Fundación OWASP (Open Web Application Security Project) son fundamentales para todos aquellos interesados en ahondar más en este tema.
Para saber más:
Sistemas distribuidos
Son todos aquellos sistemas formados por una composición de nodos conectados entre sí. Existen multitud de diseños y soluciones para afrontar los retos que supone su diseño, implementación y mantenimiento. En la actualidad están muy de moda las arquitecturas de microservicios y las arquitecturas Serverless, todos los proveedores de nube pública ofrecen servicios para el despliegue rápido de alguna o todas de estas filosofías, sin embargo es importante conocer sus ventajas e inconvenientes así como las complejidad técnica que aportan al proyecto. Cobran especial relevancia los canales comunes de comunicación, las trazas y logs, así como la monitorización; que se vuelve particularmente compleja. Por otro lado se gana en resiliencia y en escalabilidad,
Para saber más:
- What are microservices? (opensource)
- What are microservices (microservices.com)
- ¿Qué es Kubernetes?
- Serverless.com
- ¿Qué es Serverless?
Mantente actualizado con este blog:
Serverless Lens
Este paradigma plantea el uso de servicios gestionados como base de nuestras arquitecturas. A priori puede parecer que optar por este tipo de soluciones es más costoso, ya que los servicios gestionados son de base más caros que los manuales, pero si añadimos el tiempo de gestión y el mantenimiento en seguida veremos cómo de efectivos son en proporción a su coste.
Se trata de todos aquellos servicios que tienen la operativa delegada en AWS, logrando así la resiliencia y la alta disponibilidad a través de una sencilla configuración de parámetros en lugar de añadiendo piezas, capas y complejidad adicional.
Son ejemplos de este tipo de tecnologías, AWS Lambda, AWS S3, DynamoDB… en general todas aquellas más cercanas al modelo SaaS, habitualmente con modos de pago basados en pago por uso. Una de sus principales ventajas radica precisamente en que se pueden llegar a desplegar arquitecturas altamente escalables cuyo coste está directamente relacionado con el uso, llegando incluso a ser 0 en caso de no utilizarse.
High Performance Computing Lens
Este paradigma plantea alternativas y buenas prácticas para los casos de uso en los que se requiere una gran capacidad computacional y técnicas de procesamiento paralelo con el objetivo de ejecutar grandes cargas de trabajo de forma simultánea. Existe una gran variedad de sectores a los que se ha extendido el uso de HPC, como el sector financiero, genómica o ingeniería. La nube pública ofrece un conjunto de herramientas para implementar este tipo de soluciones de forma exitosa, gracias a características innatas como la elasticidad y la escalabilidad, y a mecanismos específicos y servicios que permiten optimizar al máximo tanto rendimiento como capacidad.
Containers vs Serverless
Las tecnologías de contenedores y las serverless se han convertido en un elemento común en muchas de nuestras arquitecturas. A primera vista pueden parecer similares, pero sin embargo cada una tiene sus propias ventajas y desventajas que es importante conocer, si queremos elegir la más adecuada para nuestro caso de uso.
Ambas soluciones se caracterizan por ser efímeras y estancas, es decir que su entorno de ejecución y su persistencia son borrados tras un tiempo determinado de ejecución y no es fácilmente accesible desde el exterior. Los contenedores se caracterizan por su mayor durabilidad y capacidades variables, mientras que las funciones lambda se caracterizan por su bajo tiempo de ejecución y sus altas capacidades de paralelismo. A la hora de diseñar una solución debemos plantearnos la duración y requisitos de cómputo de una labor, así como los recursos de almacenamiento y comunicaciones que tiene para poder optar por una de las dos soluciones en condiciones de estabilidad e idoneidad para nuestra solución.
NoSQL
Las bases de datos NoSql implementan un paradigma distinto al de las bases de datos relacionales tradicionales. Para los casos de uso adecuados, éstas bases de datos proporcionan mayor velocidad de lectura, escalabilidad y disponibilidad, a costa de perder en otras funcionalidades. Es importante saber cuándo conviene elegir éstas bases de datos para nuestras aplicaciones y cómo modelar correctamente sus esquemas de datos.