A continuación, presentamos una breve descripción de los procedimientos que Akamai utiliza para mejorar la seguridad del software durante el proceso de desarrollo. Se trata de un proceso que todos los equipos de ingeniería siguen para minimizar los casos donde pueden presentarse inestabilidades durante el proceso de compilación.

Aunque Akamai utiliza diversas pruebas de control de calidad, Internet a veces plantea casos extremos que solo se aplican a una región geográfica, un ISP o un cliente determinado.

En primer lugar, un poco de información previa: Los ingenieros de Akamai desarrollan software que después se instala en los cientos de miles de servidores que conforman las redes distribuidas de Akamai. El proceso de desarrollo de software de Akamai emplea un modelo centrado en las operaciones similar a los utilizados por otros grandes proveedores de software como servicio (SaaS). Se trata de un modelo adaptativo, con énfasis en el trabajo en equipo, la división de las funciones y la gestión de los riesgos. Además del software de desarrollo propio, Akamai también usa ampliamente software escrito por otros, incluido software de código abierto y gratuito y software propiedad de proveedores de nivel superior.

Estos componentes son modificados por Akamai por razones como la escalabilidad, para mejorar la resolución de problemas, para notificar las comprobaciones de la telemetría del y estado a los sistemas de supervisión, o para utilizar solo una parte determinada del software.

Los ingenieros de Akamai utilizan un sistema de control de revisiones (RCS) que limita la cantidad de cambios permitidos en el software y permite realizar un seguimiento de los envíos de código fuente con notificación de la hora de protección. La desprotección y la protección del código fuente se autentican mediante criptografía de clave pública para permitir tanto el control de acceso como el no rechazo.

Los cambios se implementan de manera gradual, en "fases", para garantizar un impacto mínimo en los servicios de Akamai. Akamai instala el software a través de conexiones seguras con medidas de protección que comprueban que los componentes son de la revisión correcta y no han sido modificados durante el tránsito.

Cuando se observa que cada una de las fases está en marcha y es estable, se toma la decisión de desplegar el resto. Akamai llama a esta fase "mundo". En cualquiera de las fases hay un proceso documentado para revertir la instalación. Esto se debe a que el software no dejará de enviar tráfico automáticamente a las regiones recién instaladas, aunque haya un problema. En muchos casos, cuando es necesario revertir, los servidores afectados se suspenden automáticamente.

Cuando realizamos una implementación global, las instalaciones de software suelen realizarse en "grupos" para minimizar el impacto en los servicios de Akamai. Si una región tiene 3 servidores, por ejemplo, solo 1 se instalará en un servidor a la vez. Para garantizar la continuidad, Akamai no instala regiones enteras de una vez.

Estos controles están diseñados para reducir al mínimo los casos en los que un cambio en el software afecta a la red de manera imprevista durante la instalación, lo cual nos permite continuar atendiendo a nuestros clientes.