Cree un equipo de ingeniería de plataforma para respaldar el talento premiado de su organización: sus desarrolladores

Si su organización crea software, ahora es el momento de centrarse en apoyar y nutrir a sus desarrolladores. Esto se debe a que retener a los desarrolladores y maximizar su productividad es fundamental para la capacidad de su empresa de brindar valor a los clientes, empleados y socios en 2023.

El talento de los mejores desarrolladores es escaso. Según la Oficina de Estadísticas Laborales de EE. UU., la demanda de desarrolladores de software crecerá un 25 % anual hasta 2031, significativamente más rápido que otras ocupaciones de TI. Sin embargo, si sus desarrolladores son típicos, muchos de ellos no son particularmente felices o productivos.

El talento técnico está frustrado

La rotación de desarrolladores es un problema, según el tercer informe anual Reveal Encuesta "Principales desafíos de desarrollo de software para 2022". Treinta y uno por ciento de los desarrolladores dicen que no tienen tiempo para hacer su trabajo. Incluso más de ellos (40 % y 39 %, respectivamente) se enfrentan al desafío de hacer frente a las crecientes demandas de los clientes y se ven obligados a hacer más con menos debido a los presupuestos limitados.

Por otro lado, Encuesta para desarrolladores 2022 de Stack Overflow reveló que los propios desarrolladores están preocupados por la disminución de la productividad, ya que el 68 % se encuentra con un "silo de conocimientos" al menos una vez a la semana y el 63 % dedica más de 30 minutos al día a buscar respuestas a los problemas.

Lo que falta en la mayoría de los casos es una plataforma de aplicaciones nativas de la nube, como Tanzu VMware, con capacidades que minimizan el cambio de contexto y permiten a los desarrolladores centrarse en la lógica empresarial. Igualmente crítica, y a menudo inexistente, es la formación de un equipo dedicado a la plataforma de aplicaciones que crea, supervisa e itera continuamente la plataforma para brindar una gran experiencia a los equipos de desarrollo internos.

¿Qué es un modelo de plataforma como producto?

Tradicionalmente, las organizaciones de TI han ensamblado pilas de tecnología para ayudar a los desarrolladores a medida que crean, prueban y llevan las aplicaciones a la producción. Pero estas pilas tecnológicas, junto con los procesos manuales y los equipos en silos, generan ineficiencias en la gestión, carecen de observabilidad y crean una deuda técnica sustancial, además de llevar más tiempo llevar el código a la producción. Estas pilas de tecnología generalmente se basan en sistemas de emisión de boletos para solicitudes de desarrolladores y un equipo de TI que dedica su tiempo a cumplir con estas solicitudes, a menudo manualmente.

Por el contrario, adoptar un enfoque que trate a los equipos de desarrollo internos como clientes y a la plataforma de aplicaciones como un producto puede resultar en un camino simplificado hacia la producción que mejora la eficiencia del desarrollador, la calidad del producto y el tiempo de creación de valor. La clave del éxito de este enfoque es recordar que la plataforma no es una pieza de software lista para usar. Es un conjunto unificado y en evolución de servicios reutilizables integrados a la perfección con sus sistemas existentes.

El modelo de plataforma como producto pone al alcance de la mano todas las herramientas que los desarrolladores necesitan para hacer su mejor trabajo. También reúne capacidades clave como automatización, portales de autoservicio, plantillas de aplicaciones e integraciones de terceros de una manera eficiente y flexible para brindarles a sus desarrolladores una experiencia verdaderamente elevada y sin fricciones.

¿Por qué introducir un equipo de ingeniería de plataforma dedicado?

Para aprovechar al máximo una plataforma de aplicaciones nativas de la nube, necesita un equipo dedicado que lo respalde. Un equipo de ingeniería de plataforma no solo es responsable de crear, desarrollar y administrar la plataforma de aplicaciones, sino que también actúa como un conducto entre los desarrolladores, las operaciones y los equipos de seguridad. También facilita las interacciones entre los líderes empresariales, el personal de seguridad y el resto de su organización. Al hacerlo, rompe los silos, y vale la pena.

Cuando invierte tiempo, talento y presupuesto para construir y mantener un equipo de ingeniería de plataforma, le devuelve un valor exponencial a su organización. ¿Cómo? Sus actividades aseguran que sus desarrolladores, el talento del que depende su organización para la innovación y el éxito comercial, tengan lo que necesitan al alcance de la mano. Esto incluye acceso a plantillas de aplicaciones aprobadas, servicios, bibliotecas de código abierto y todo lo que necesitan para reemplazar tareas de bajo valor y tiempos de espera con la libertad de resolver problemas críticos para el negocio más rápido, sin sacrificar la seguridad, la confiabilidad ni agregar personal.

¿A quién agregar a su equipo de plataforma?

Un equipo de ingeniería de plataforma debe incluir al menos dos de los siguientes arquetipos (a medida que su equipo madure, puede agregar el tercero):

  • Arquitecto de infraestructura que también codifica Elija a alguien con mucha experiencia en infraestructura como servicio (IaaS) (cómputo, almacenamiento y redes), además de ser experto en la automatización de actividades manuales y repetitivas.
  • Maestro de automatización natural ­– Agregue a alguien que ya esté realizando trabajo de integración continua/implementación continua, automatizando los procesos de administración de versiones actuales o utilizando herramientas de automatización del sistema (Chef, Puppet, Salt, Ansible).
  • Ingeniero de software curioso Elija a una persona en un equipo de productos de aplicaciones que previamente resolvió sus propios desafíos de plataforma mediante la automatización de la infraestructura subyacente que simplificó el trabajo del equipo.

4 disciplinas de equipos exitosos de ingeniería de plataformas

Los equipos de ingeniería de plataformas exitosos emplean cuatro métodos clave para brindar valor al desarrollador:

1. Aplicar prácticas de gestión de productos lean

Use prácticas de puesta en marcha eficientes, como el producto mínimo viable (MVP) para minimizar el desperdicio y responder continuamente a las necesidades cambiantes de los clientes: desarrolladores de aplicaciones.

2. Centrarse en la experiencia del desarrollador (DevEx) con diseño centrado en el usuario (UCD)

Preste atención a cómo los desarrolladores usan la plataforma como un producto: los desarrolladores pueden apreciar tanto la experiencia estelar que la evangelizan en toda su organización.

3. Aproveche el desarrollo de software Agile con XP (programación extrema)

Utilice las prácticas de XP para crear código de plataforma bien probado y de calidad que evolucione con los requisitos de los desarrolladores.

4. Agregar ingeniería de confiabilidad del sitio (SRE)

SRE trata las operaciones como un problema de ingeniería mediante el uso de software para administrar el rendimiento y el tiempo de actividad del sistema. Tratar su plataforma como un producto maximiza el valor de la plataforma al minimizar el tiempo de entrega, el riesgo y el desperdicio.

Todas las formas en que un equipo de ingeniería de plataformas beneficia a su empresa

Un equipo de ingeniería de plataforma exitoso puede hacer una contribución significativa a su organización mientras se esfuerza por construir software a escala, incluyendo:

Mejorando DevEx

Cuando se unen nuevos desarrolladores, ¿qué tan pronto es antes de que sean productivos? Los desarrolladores tardan mucho más en empezar a escribir código cuando se les pide que aprendan una gran cantidad de herramientas nuevas por su cuenta. Los desarrolladores que tienen acceso rápido y de autoservicio a plantillas aprobadas, patrones reutilizables, herramientas específicas y servicios que han demostrado ser útiles se ponen a trabajar más rápido. Por crear "caminos dorados” que admiten flujos de trabajo de desarrollo optimizados, un equipo de ingeniería de plataforma puede acelerar la productividad, mejorar la seguridad y reducir la fricción que es tan común en las pilas tecnológicas de los desarrolladores empresariales.

Fortalecimiento de su postura de seguridad

Un equipo de plataforma ayuda a garantizar que las operaciones del Día 2, cuando una aplicación entra en producción, se realicen sin problemas mediante el análisis y parches continuos de la plataforma de desarrollo, incluida la creación de seguridad en cada aplicación con un cadena de suministro de software seguro. Al automatizar las políticas de seguridad y proporcionar capacidades como plantillas de aplicaciones preaprobadas, así como escaneo de código para CVE y seguridad de API, su organización puede mejorar drásticamente la postura de seguridad de la aplicación y al mismo tiempo acelerar el tiempo que lleva implementar un código más seguro.

Aliviar la crisis de habilidades

En lugar de invertir en equipos de unicornios desarrolladores de aplicaciones con experiencia en Kubernetes, múltiples nubes públicas y cualquier otra herramienta en su pila tecnológica, puede contratar simples mortales o capacitar al personal existente. Una plataforma de aplicaciones nativas de la nube abstrae la complejidad de Kubernetes y las implementaciones de múltiples nubes y ayuda a los nuevos desarrolladores a generar valor rápidamente con la ayuda de plantillas de aplicaciones y caminos dorados.

Un equipo de plataforma permite que sus desarrolladores se concentren en escribir aplicaciones innovadoras mientras eliminan la frustración de configurar e integrar elementos dispares de una pila de tecnología de desarrollo tradicional. Entonces, ¿cuál es la clave para aumentar la productividad de los desarrolladores? Pregúntele a un equipo de ingeniería de plataformas.

Leer este informe de Gartner destacando la necesidad y el valor de la ingeniería de plataformas.

Fuente: https://www.forbes.com/sites/vmware/2023/03/06/build-a-platform-engineering-team-to-support-your-organizations-prize-talent—your-developers/