La copia de seguridad prospera en la era de la nube, pero las cintas no se olvidan. Conversación con Veeam

La copia de seguridad prospera en la era de la nube, pero las cintas no se olvidan. Conversación con Veeam

Alexander Baranov trabaja en Veeam como director de I+D y vive entre dos países. Pasa la mitad del tiempo en Praga y la otra mitad en San Petersburgo. En estas ciudades se encuentran las oficinas de desarrollo más grandes de Veeam.

En 2006, era una startup de dos emprendedores rusos relacionada con software para la copia de seguridad de máquinas virtuales (de ahí proviene el nombre - V[ee][a]M, máquina virtual). Hoy en día es una gigantesca corporación con más de cuatro mil empleados en todo el mundo.

Alexander nos contó cómo es trabajar en una empresa así y lo difícil que es entrar en ella. A continuación, su monólogo.

Tradicionalmente, hablaremos sobre la evaluación de la empresa en "Mi círculo": Veeam Software recibió de sus empleados una calificación promedio de 4.4. Se valora por un buen paquete social, un ambiente de trabajo cómodo en el equipo, tareas interesantes y por hacer del mundo un lugar mejor.


La copia de seguridad prospera en la era de la nube, pero las cintas no se olvidan. Conversación con Veeam

Qué productos desarrolla Veeam

Productos que garantizan la resistencia de la infraestructura de TI. Afortunadamente, con el tiempo, el hardware se ha vuelto bastante confiable y las nubes aseguran la resiliencia. Pero los errores humanos persisten hasta hoy.

Por ejemplo, el clásico problema de la incompatibilidad entre actualizaciones y la infraestructura de la organización. Un administrador aplicó una actualización no comprobada, ya sea manualmente o automáticamente, y como resultado, se interrumpió el funcionamiento de los servidores de la empresa. Otro ejemplo: alguien hizo cambios en un proyecto compartido o un conjunto de documentos, creyendo que era lo correcto. Más tarde surgió un problema y se necesitó revertir el estado a hace una semana. A veces esos cambios ni siquiera están relacionados con acciones intencionadas de una persona: recientemente han ganado popularidad los virus de ransomware. Un usuario lleva a su computadora de trabajo una memoria USB con contenido dudoso o visita un sitio web de gatos, y como resultado, se infectan las computadoras de la red.

En una situación en la que ya ha ocurrido un problema, ofrecemos la posibilidad de revertir los cambios. Si los cambios solo se están planificando, permitimos realizar una prueba de su impacto en una infraestructura aislada, reconstruida a partir de una copia de seguridad del centro de datos.

A menudo, las copias de seguridad actúan como un "testigo mudo" durante la auditoría en una organización. Las empresas públicas deben cumplir con los requisitos de los reguladores externos (por ejemplo, la Ley Sarbanes-Oxley), y esto no es casualidad. En 2008, la situación de la economía mundial se tambaleó porque algunos actores del mercado financiero, a grandes rasgos, falsificaron los resultados de su actividad. Esto inició una reacción en cadena, y la economía cayó. Desde entonces, los reguladores han estado vigilando más de cerca los procesos en las empresas públicas. La capacidad de restaurar el estado de la infraestructura de TI, el sistema de correo y el sistema de gestión documental durante los períodos de informes es uno de los requisitos de los auditores.

Microsoft, Amazon, Google y otros proveedores de nube tienen soluciones nativas que proporcionan respaldo de recursos dentro de la nube. Pero sus soluciones son "cosas en sí mismas". El problema es que las grandes empresas, en la mayoría de los casos, tienen una infraestructura de TI híbrida: parte de esta se encuentra en la nube y parte en las instalaciones. En la nube, por lo general, residen proyectos web y aplicaciones orientadas al cliente. Las aplicaciones y servidores que almacenan información confidencial o datos personales suelen estar en las instalaciones.

Además, las organizaciones utilizan varias nubes diferentes para construir una híbrida, con el fin de minimizar riesgos. Cuando una empresa multinacional construye una nube híbrida, necesita un sistema de resiliencia unificado y común para toda la infraestructura.

La copia de seguridad prospera en la era de la nube, pero las cintas no se olvidan. Conversación con Veeam

Qué tan complicado es desarrollar tales productos

Constantemente surgen nuevas tecnologías que requieren aprendizaje, adaptación y experiencia. Cuando recién aparecimos y éramos una startup, pocos consideraban la virtualización en serio. Existían aplicaciones para respaldar centros de datos físicos. Se miraba a los centros de datos virtualizados como si fueran juguetes.

Comenzamos a ofrecer respaldo teniendo en cuenta la virtualización desde el principio, cuando la tecnología era utilizada solo por entusiastas. Luego vino su explosivo crecimiento y aceptación como estándar. Ahora vemos otras áreas que están a la espera de un salto de calidad similar y tratamos de estar a la vanguardia. La habilidad de estar atentos a los cambios está en el ADN de la empresa.

La empresa ya ha superado la etapa de startup. Ahora, para muchos grandes clientes, la estabilidad y la confiabilidad son importantes, y la toma de decisiones sobre la redundancia puede llevar varios años. Se están llevando a cabo adaptaciones, pruebas de productos y cumplimiento de numerosos requisitos. Se presenta una situación curiosa: por un lado, es necesario garantizar la fiabilidad y la confianza en los productos, y por el otro, mantenerse actualizado.

Pero lo nuevo siempre conlleva un cierto nivel de desconocimiento de la tecnología, del mercado, o de ambos.

Por ejemplo, después de algunos años de trabajo, nos dimos cuenta de que necesitábamos utilizar las capacidades integradas de los sistemas de almacenamiento para acelerar las copias de seguridad. Así nació toda una dirección para la integración con fabricantes de hardware. A día de hoy, todos los grandes actores de este mercado son socios de Veeam en este programa: HP, NetApp, Dell EMC, Fujitsu, entre otros.

También nos parecía que la virtualización desplazaría a los servidores clásicos. Pero la vida ha demostrado que quedan el 10% final de los servidores físicos, los cuales no pueden ser virtualizados o simplemente no tiene sentido hacerlo. Y también necesitan ser respaldados. Así aparecieron Veeam Agent para Windows/Linux.

En su momento, pensamos que Unix era hora de ocupar su lugar en el museo, y dejamos de ofrecer soporte. Pero en cuanto comenzamos a trabajar con clientes con una larga historia, nos dimos cuenta de que Unix está más vivo que nunca. Y, aun así, desarrollamos una solución para él.

La misma historia ocurrió con las unidades de cinta. Pensamos: "¿quién las necesita en el mundo moderno?" En ese entonces, trabajábamos en características como la recuperación granular de datos o las copias de seguridad incrementales con copia completa sintética — algo que simplemente no se puede hacer con cinta, se necesita un disco. Luego descubrimos que las unidades de cinta funcionan como uno de los medios para garantizar copias de seguridad inmutables, necesarias para el almacenamiento a largo plazo — para que en 5 años puedas regresar, tomar una cinta de la estantería y hacer una auditoría. También, en cuanto al tamaño de los clientes — comenzamos con clientes pequeños — y allí nadie utiliza cintas. Luego crecimos hasta clientes que nos dijeron que sin cintas no comprarían el producto.

La copia de seguridad prospera en la era de la nube, pero las cintas no se olvidan. Conversación con Veeam

¿Qué tecnologías se utilizan en Veeam?

Para tareas relacionadas con la lógica de negocios, utilizamos .NET. Con él comenzamos y continuamos optimizando. Actualmente, en varias soluciones usamos .NET Core. Cuando se formó la startup, había varios partidarios de esta tecnología en el equipo. Es muy bueno para escribir lógica de negocios, velocidad de desarrollo y conveniencia de herramientas. En ese momento no era la solución más popular, pero ahora está claro que esos partidarios tenían razón.

A la vez, programamos para Unix, Linux, trabajamos con hardware, lo que requiere el uso de otras soluciones. Las partes del sistema relacionadas con la información sobre los datos que almacenamos en copia de seguridad, algoritmos de búsqueda de datos, algoritmos relacionados con el funcionamiento del hardware, todo esto está escrito en C++.

La copia de seguridad prospera en la era de la nube, pero las cintas no se olvidan. Conversación con Veeam

Cómo están distribuidos los empleados por el mundo

Actualmente, la empresa cuenta con alrededor de cuatro mil empleados. Aproximadamente mil de ellos están en Rusia. Hay dos grandes grupos en la empresa. El primero se ocupa del desarrollo y el soporte técnico de productos. El segundo hace visibles los productos para el mundo exterior: su competencia incluye ventas y marketing. La proporción entre los grupos es aproximadamente de treinta a setenta.

Tenemos alrededor de treinta oficinas en todo el mundo. Las ventas están más distribuidas, pero el desarrollo tampoco se queda atrás. Algunos productos se desarrollan simultáneamente en varias oficinas: parte en San Petersburgo, parte en Praga. Algunos se desarrollan solo en una, por ejemplo, el producto que proporciona copia de seguridad física de Linux se desarrolla en Praga. Hay un producto que se trabaja exclusivamente en Canadá.

Realizamos desarrollo distribuido para cumplir con los requisitos de los clientes. Los grandes clientes se sienten más seguros cuando el desarrollo está en la misma región donde opera el producto.

Ya tenemos una oficina muy grande en Chequia y el próximo año planeamos abrir otra en Praga para 500 desarrolladores y testers. Aquellos que se mudaron a la capital checa en la "primera ola" comparten con gusto sus experiencias y trucos en Habr con todos los interesados en la posibilidad de trabajar en Europa. En Rusia, la oficina se encuentra en San Petersburgo, parte de los proyectos internos se lleva a cabo en Izhevsk, y el soporte se sitúa parcialmente en Moscú. En total, hay cientos de personas en todo el mundo encargadas del soporte técnico. Hay especialistas de diferentes niveles de preparación técnica y especialización. El nivel más alto está compuesto por personas que son capaces de comprender el producto a nivel de código fuente y trabajan en la misma oficina que los desarrolladores.

La copia de seguridad prospera en la era de la nube, pero las cintas no se olvidan. Conversación con Veeam

Cómo se organizan los procesos

Aproximadamente una vez al año lanzamos grandes versiones con nuevas funcionalidades, y cada dos o tres meses actualizaciones que corrigen defectos y mejoras que responden a demandas urgentes del mercado o cambios en las plataformas. Se asignan prioridades a los requisitos, desde menores hasta críticos, sin los cuales el lanzamiento no es posible. Estos últimos se denominan “épicos”.

Hay un triángulo clásico: calidad, cantidad de recursos, plazos (en la jerga, "rápido, de calidad, barato, elige dos"). No podemos hacer las cosas mal, la calidad siempre debe ser alta. Los recursos también son limitados, aunque intentamos expandirnos continuamente. Hay mucha más flexibilidad en la gestión del tiempo, aunque a menudo también es fijo. Por lo tanto, lo único que podemos variar es la cantidad de funcionalidades en el lanzamiento.

Generalmente, intentamos mantener los épicos en un 30-40% del tiempo previsto para el ciclo de lanzamiento. Lo restante podemos recortarlo, posponerlo, mejorarlo o modificarlo. Eso es nuestro espacio de maniobra.

Para cada requisito en el lanzamiento se crea un equipo temporal. Este puede ser de tres a cincuenta personas, dependiendo de la complejidad. Seguimos una metodología ágil de desarrollo, realizamos un análisis y discusiones semanales sobre el trabajo realizado y el que está por venir para cada funcionalidad.

La mitad del tiempo del ciclo de lanzamiento se dedica al desarrollo y la otra mitad a la mejora del producto. Pero hemos adoptado un dicho: "la deuda técnica de un proyecto en quiebra es cero". Por lo tanto, es más importante crear un producto que funcione y sea demandado que estar puliendo el código indefinidamente. Si el producto es popular, entonces vale la pena desarrollarlo más y adaptarlo a los cambios futuros.

La copia de seguridad prospera en la era de la nube, pero las cintas no se olvidan. Conversación con Veeam

Cómo Veeam contrata personal para desarrollo

El algoritmo de selección es multifásico. El primer nivel es una conversación del candidato con el reclutador sobre las expectativas de la persona misma. En esta etapa, intentamos entender si somos adecuados para el candidato. Es importante que seamos atractivos como empresa, porque introducir a una persona en un proyecto es un placer costoso.

Si hay interés, en el segundo nivel ofrecemos una tarea de prueba para entender cuán relevante es la experiencia del candidato y qué puede demostrar como especialista. Por ejemplo, le pedimos hacer un compresor de archivos. Esta es una tarea estándar que muestra cómo se relaciona la persona con el código, qué cultura y estilo sigue y qué soluciones utiliza.

Por la tarea de prueba, generalmente se puede ver todo claramente. Una persona que acaba de familiarizarse con la escritura y escribe una carta por primera vez se distingue notablemente de alguien que escribe cartas constantemente.

Luego realizamos la entrevista. Generalmente, la llevan a cabo tres líderes de equipo para que todo sea lo más objetivo posible. Además, esto ayuda a contratar personas técnicamente compatibles que tienen métodos y enfoques de desarrollo similares, incluso si finalmente trabajarán en diferentes equipos.

En una semana llevamos a cabo varias entrevistas para la vacante abierta y tomamos decisiones sobre con quién continuaremos trabajando.

A menudo, los chicos vienen a nosotros y dicen que buscan trabajo porque en su puesto actual no tienen a dónde avanzar; los ascensos solo se pueden esperar junto con la jubilación del jefe. Nosotros tenemos una dinámica algo diferente. Hace doce años, Veeam era una startup con diez empleados. Ahora es una empresa donde trabajan varios miles de personas.

Las personas llegan aquí como a un río turbulento. Constantemente surgen nuevas direcciones, los líderes de equipo son ahora desarrolladores comunes de ayer. Las personas crecen tanto técnicamente como administrativamente. Si estás desarrollando una pequeña función, pero quieres expandirla, ya has hecho la mitad del trabajo. Se brindará apoyo en todos los niveles, desde el líder de equipo hasta los propietarios de la empresa. Si no sabes hacer algo administrativo, hay cursos, entrenadores internos y colegas con experiencia. Si te falta experiencia en desarrollo, hay un proyecto llamado Veeam Academy. Así que estamos abiertos a todos, tanto a profesionales como a principiantes.

El proyecto Veeam Academy es un intensivo gratuito en persona por la tarde en C# para programadores principiantes con la perspectiva de empleo en Veeam Software para los mejores alumnos. El objetivo del proyecto es reducir la brecha entre el volumen de conocimientos y habilidades prácticas de un graduado promedio y el conocimiento requerido para atraer a un buen empleador. Durante tres meses, los participantes estudian los principios de la POO en la práctica, se sumergen en las particularidades de C# y estudian el entorno subyacente de .Net. Además de conferencias, exámenes, laboratorios y un proyecto personal, trabajan en su proyecto conjunto siguiendo todas las normas de empresas reales. El tema del proyecto no se conoce de antemano; se elige junto con todos los participantes en los primeros días después del inicio del curso. En la última edición, el tema fue un Banco Virtual.
Actualmente hay inscripciones abiertas para una nueva edición.

Fuente: habr.com

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster