¿Es el desarrollador ciudadano la nueva cara de la agilidad?
Publicado: 2022-03-11Con una abrumadora mayoría de empresas digitalizando sus operaciones y talentosos equipos de desarrollo crónicamente escasos de personal, la fecha de vencimiento de las implementaciones de software complejo se acerca rápidamente.
La escasez de talento y los costos para remediarlo llegaron en un momento en que las plataformas de desarrollo de código bajo ofrecen soluciones impresionantes. La premisa del código bajo es sencilla: Reducir la complejidad del desarrollo hasta el punto de que los usuarios comerciales puedan crear soluciones sin una comprensión profunda de la programación, las API o cómo implementar aplicaciones web o móviles. A menudo empaquetadas como una oferta de nube SaaS (software como servicio) o PaaS (plataforma como servicio), las soluciones de código bajo simplifican muchos detalles intrincados del desarrollo para que el usuario pueda concentrarse en crear funcionalidad.
La empresa de investigación tecnológica Gartner predice que en 2022, el mercado de plataformas de aplicaciones de código bajo aumentará más de un 30 % con respecto a los niveles de 2020. Como líderes de proyectos de TI y partes interesadas en los procesos comerciales, los gerentes de proyectos están en condiciones de atender los intereses, a veces dispares y, a menudo, aislados, tanto de TI como de los negocios al adoptar estas soluciones de bajo código.
Pero, ¿cuáles son los beneficios y las limitaciones de estas soluciones y cómo se pueden implementar y aplicar en sus equipos de proyecto? La respuesta podría estar en el desarrollo de los ciudadanos: hacer crecer una cohorte de miembros del equipo no técnicos para abordar parte del trabajo que entorpece a los equipos de TI. Como administrador de proyectos con la orientación adecuada y las mejores prácticas implementadas, puede utilizar el desarrollo ciudadano para llevar la adopción de código bajo de disruptivo a negocio habitual en su empresa.
Los primeros impulsores del desarrollo ciudadano
La idea de que los usuarios no técnicos desarrollen soluciones técnicas no es nada nuevo. Ya en 1987, HyperCard de Apple usaba una interfaz gráfica y un lenguaje de programación simplificado para permitir que los no programadores produjeran aplicaciones simples, similares a las aplicaciones basadas en la web de hoy. Pero el término “desarrollador ciudadano” apareció por primera vez en una presentación en el Gartner Symposium/ITxpo de 2009 en Orlando. Y en 2014, un informe de Forrester denominó "código bajo" una nueva ola de plataformas para crear aplicaciones orientadas al cliente. El informe identificó varios pioneros en la industria emergente, incluidos Mendix, Salesforce y Appian. Estos pioneros brindaban "alternativas más rápidas a las plataformas de programación tradicionales" y permitían a los usuarios "acelerar la entrega de aplicaciones al reducir drásticamente la cantidad de codificación manual requerida". Desde entonces, se les han unido otros jugadores como Betty Blocks, ServiceNow y Microsoft Power Platform. Con la orientación adecuada, estos desarrolladores ciudadanos pueden crear soluciones a pequeña escala para ellos o sus equipos o, en algunos casos, crear soluciones digitales para toda la empresa.
Una encuesta de IBM de 2014 encontró que el 80% de los tomadores de decisiones comerciales y de TI utilizaron desarrolladores ciudadanos en alguna capacidad. Incluso entonces, la adopción fue tentativa y en pequeña escala. No fue sino hasta 2021 que el Project Management Institute presentó una serie de cursos para desarrolladores ciudadanos, la primera en su tipo. Por lo tanto, durante casi una década no hubo estándares de la industria, puntos de referencia o capacitación formal para que los empleadores hicieran referencia, y mucho menos para que los gerentes de proyectos los implementaran. Durante la mayor parte de la década de 2010, las plataformas de código bajo se consideraron demasiado disruptivas, lo que generó retroceso dentro de las organizaciones.
Las cosas han cambiado desde entonces, por decirlo suavemente. Gartner estima que para 2024, el 80 % de todos los productos y servicios tecnológicos serán creados por desarrolladores ciudadanos, en comparación con solo el 25 % en 2014. Atribuye esta rápida expansión a la pandemia de COVID-19: a medida que las empresas se apresuraron a adoptar servicios en la nube y digital iniciativas para manejar una fuerza laboral repentinamente remota, surgieron nuevos modelos y procesos comerciales. Estos eventos siguieron a la adopción acelerada de marcos Agile en los últimos años, con su énfasis en la velocidad y ciclos de desarrollo más cortos.
Todo esto, combinado con la escasez de desarrolladores, ha creado una oportunidad para que los desarrolladores ciudadanos resuelvan una serie de problemas.
Beneficios del código bajo
Velocidad
Para los administradores de proyectos de TI, los programas de desarrolladores ciudadanos aceleran los plazos al optimizar las actividades de innovación y reducir la dependencia de un grupo limitado de desarrolladores profesionales. Puede llevar meses preparar una aplicación web tradicional para su lanzamiento inicial; incluso un producto mínimo viable (MVP) tarda semanas en desarrollarse. Usando una plataforma de código bajo, un equipo puede armar múltiples MVP en la misma cantidad de tiempo y usar la información de esos para guiar sus esfuerzos de desarrollo. Los ciclos de iteración se reducen proporcionalmente.
Por ejemplo, un desarrollador profesional que crea una herramienta de notificación podría pasar un día entero diseñando una interfaz simple para interactuar con una API, configurando la autenticación y la seguridad, probando y finalmente implementando la aplicación para uso interno. En una plataforma de código bajo, un desarrollador ciudadano puede lograr el mismo nivel de funcionalidad y seguridad en unos minutos y tres clics más tarde compartir su creación con el resto del equipo.
Flexibilidad
El software estándar no siempre se ajusta al flujo de trabajo o la estructura de una empresa. Pero las soluciones creadas en plataformas de bajo código se pueden personalizar según las necesidades particulares de su negocio. Por ejemplo, si su proceso comercial requiere la capacidad de derivar un problema a un administrador determinado y el paquete listo para usar no puede hacerlo, una solución personalizada de código bajo es una buena alternativa.
Una solución de código bajo también puede llenar los vacíos en la integración entre sus sistemas existentes sin tener que trabajar directamente con una API. Por ejemplo, si su CRM existente no es capaz de publicar un mensaje en un canal de Slack específico, una solución de código bajo podría cerrar esa brecha rápida y fácilmente. La mayoría de las plataformas tienen amplias opciones de integraciones que permiten que su servicio se comunique con las bases de datos y las API de aplicaciones locales o basadas en la nube populares como Jira, Gmail, Oracle o Shopify. Estas integraciones le dan a un proyecto más opciones que una solución lista para usar que no se ajusta bien o una costosa hecha a la medida; puede construir con más capacidades usando código bajo.
Imagine la diferencia que esto podría hacer para sus proyectos. El trabajo atrasado del equipo de desarrollo se puede reevaluar, con algunas necesidades derivadas y dirigidas a una solución de bajo código desarrollada por ciudadanos. Esto puede permitir que TI tenga tiempo para abordar problemas como la deuda técnica que a menudo se puede ignorar cuando los cronogramas son ajustados. Y las soluciones que se implementan a través de una plataforma de código bajo aprobada por TI pueden mitigar los problemas creados por la TI en la sombra. El propio equipo de desarrollo puede analizar un conjunto de necesidades o requisitos, luego recomendar e implementar soluciones utilizando una plataforma de código bajo como parte o la totalidad de la pila tecnológica.
Cuándo usar código bajo
Por mucho que el código bajo pueda mejorar las tasas de velocidad de solución y reducir los costos de creación de software, tiene algunos inconvenientes. Como administrador de proyectos, deberá comprender los límites de los servicios de código bajo para poder tomar decisiones acertadas sobre cuándo la plataforma que ha elegido es apropiada para un proyecto. Aquí hay algunos consejos:
- Prepárese para permanecer en una plataforma. La estructura y la funcionalidad de código bajo son diferentes con cada servicio, por lo que una solución útil que cree en uno generalmente no se transferirá a otro. Esto significa que a medida que las organizaciones utilizan una plataforma particular de código bajo para obtener más soluciones, el costo del cambio posterior crece con una mayor dependencia de esa plataforma, creando un fuerte desincentivo para probar una diferente en el futuro.
- Cuenta para las limitaciones de UI/UX. Para hacer que la experiencia sea más simple para los desarrolladores ciudadanos, se predetermina un control mucho más preciso sobre el manejo de eventos, el estilo y la funcionalidad de nicho y es relativamente inalterable en las plataformas de código bajo. Es lo suficientemente restringido como para frustrar a un buen diseñador. Por ejemplo, el código bajo generalmente ofrece menos opciones para capacidades móviles fuera de línea, múltiples métodos de autenticación y controles de usuario especializados como ruedas de color. Pregúntese si el proyecto estará bien con un diseño "suficientemente bueno". Si su equipo necesita un control exquisito sobre la apariencia y el flujo de la aplicación, el código bajo no es el camino a seguir.
- Esté atento a los problemas de mantenimiento. Es posible que los desarrolladores ciudadanos no tengan un conocimiento profundo de las pruebas de software efectivas o un punto de vista experimentado sobre cómo las soluciones deben cambiar en el futuro. Para soluciones simples, esto no es un gran problema, pero a medida que una solución de código bajo se vuelve más compleja, es más probable que tenga errores, sea insegura y difícil de mantener. Si su solución planificada tiene un alto grado de complejidad o es de misión crítica, considere una pila tecnológica sin código bajo o involucre a desarrolladores más experimentados en la construcción de la solución.
Las plataformas de código bajo no son ideales para situaciones que requieren:

- Más de 200 usuarios internos constantes, lo que podría afectar las licencias y el rendimiento.
- Capacidades altamente especializadas, como blockchain, juegos o navegación en tiempo real.
- Énfasis en baja latencia y rendimiento de primer nivel.
- Una experiencia de usuario cuidadosamente diseñada.
A pesar de estas limitaciones, no hay escasez de posibles casos de uso para plataformas de código bajo. Considérelos para proyectos que involucren:
- Creación de herramientas internas como aplicaciones de incorporación, rastreadores de tareas o soluciones de gestión de activos para miles de dispositivos de la empresa.
- Actualizar los sistemas heredados agregando nuevas características a la infraestructura obsoleta pero integrada o digitalizando los flujos de trabajo.
- Diseñar prototipos de bajo riesgo o MVP que puedan servir como una simple prueba de concepto en las primeras etapas de un proyecto sin una inversión masiva de tiempo o recursos. (Una vez que ha comenzado la prueba de usuario, se puede dar el salto a la TI tradicional y la mayor escalabilidad que ofrece).
Empoderar a los desarrolladores ciudadanos
Las plataformas de código bajo están diseñadas para reducir la curva de aprendizaje a un nivel más manejable, lo que permite a los gerentes de proyectos cultivar desarrolladores ciudadanos dentro de sus organizaciones. Los desarrolladores ciudadanos pueden provenir de cualquier campo que no sea de TI y proceden de áreas tan diversas como el análisis empresarial, la gestión de proyectos, la financiación o las operaciones. Cualquier persona con conocimientos tecnológicos y ganas de aprender puede ser capacitada para incorporar el desarrollo de código bajo en su trabajo, siempre que el administrador del proyecto comprenda las diferencias entre sus capacidades y las de los desarrolladores profesionales. Los desarrolladores ciudadanos no tienen que ser maestros de la codificación para colaborar con TI para unir las necesidades tecnológicas y comerciales. Al obtener una mejor comprensión del ciclo de vida de la entrega de software y asumir algunas de las responsabilidades que tradicionalmente requieren conocimientos de programación, se convierten en parte en expertos en la materia, en parte analistas comerciales y en parte recursos de TI.
Las organizaciones aprovechan al máximo las plataformas de código bajo y los desarrolladores ciudadanos siguiendo estas prácticas recomendadas:
- Proporcionar formación. Facilite la adopción de código bajo a través de sesiones de capacitación y demostraciones de casos de uso relevantes.
- Enseñar nuevos conceptos. Presente a los desarrolladores ciudadanos los conceptos de pruebas, documentación y componentes reutilizables para mejorar la calidad de las soluciones que crean.
- Establecer barandillas. Proporcione soporte de gobernanza para los desarrolladores ciudadanos, como agregar políticas específicas de protección contra la pérdida de datos y configurar entornos de prueba para la experimentación.
- Fomentar la colaboración. Anime a los desarrolladores ciudadanos y profesionales a generar soluciones juntos, particularmente en proyectos complejos que integran código bajo. Esto puede conducir a una mejor comprensión de los requisitos, oportunidades de capacitación cruzada y una mayor apreciación de sus distintos roles en la organización. La combinación de la experiencia técnica del equipo de TI con la perspicacia comercial de los desarrolladores ciudadanos puede conducir a soluciones que sirvan mejor a la organización.
Los desarrolladores ciudadanos deben tener este tipo de orientación. Algunos serán demasiado tímidos para intentar algo más allá de un primer paso, y otros crearán líos debido a su exceso de entusiasmo. Brindar capacitación y pautas ayuda a los nuevos usuarios de código bajo a encontrar un mejor punto medio, lo que lleva a una adopción de mayor calidad dentro de la empresa.
Los desarrolladores ciudadanos ofrecen una nueva capacidad a la organización que se puede aprovechar táctica y estratégicamente. Algunos utilizarán sus nuevas habilidades en sus roles comerciales existentes, contribuyendo a los esfuerzos de cambio digital y proyectos de TI con una comprensión recientemente mejorada de los desafíos y los flujos de trabajo. Otros pueden ingresar en un trabajo completamente nuevo, asumiendo el desarrollo de aplicaciones de código bajo o el diseño de funciones como parte de sus funciones principales.
Los proveedores de plataformas de código bajo saben que el soporte sólido es importante y están agregando capacidades en consecuencia. Las plataformas más desarrolladas ofrecen características de gobierno de nivel empresarial, comunidades de usuarios prósperas y múltiples formas de aprender.
Para fomentar una adopción más amplia por parte de los desarrolladores profesionales, algunas plataformas están adoptando conceptos familiares como el control del código fuente, los módulos de prueba y la gestión del ciclo de vida de las aplicaciones. Esto ofrece lo mejor de ambos mundos: pueden usar código bajo con un conjunto sólido de herramientas para crear aplicaciones de calidad rápidamente sin renunciar a sus herramientas existentes para soluciones más complejas. Y las innovaciones como las metodologías de diseño a código prometen aliviar las limitaciones existentes de estas plataformas, como opciones limitadas de UX/UI, en los años venideros.
Un campo en expansión
Se están realizando inversiones significativas en plataformas de código bajo tanto por jugadores establecidos como por nuevas empresas. Microsoft informó recientemente un crecimiento interanual del 97 % en su Power Platform y está lanzando nuevas capacidades a un ritmo deslumbrante. La inversión en nuevas empresas de código bajo/sin código como Bubble y Airtable aumentó en $ 415 millones en el mercado estadounidense durante un período de cinco años. A medida que las empresas buscan expandir aún más sus capacidades digitales, los desarrolladores profesionales seguirán siendo escasos y la cantidad de desarrolladores ciudadanos crecerá. Las proyecciones muestran que los desarrolladores ciudadanos superarán en número a los desarrolladores profesionales 4 a 1 para el 2023.
Para un subconjunto importante de aplicaciones, el desarrollo ciudadano puede ofrecer una combinación práctica de velocidad, simplicidad y flexibilidad. No reemplazará el trabajo de los equipos de desarrollo profesional, pero puede generar soluciones poderosas para mejorar esos equipos mientras navegan por el panorama de software en constante cambio.
