Los desarrolladores ciudadanos son empleados que no pertenecen a la TI y que crean aplicaciones o mejoran los sistemas existentes, a menudo sin formación oficial en desarrollo de software. Por lo general, estas personas aprovechan plataformas sin código o con código bajo u otras herramientas aprobadas para desarrollar soluciones que satisfagan las necesidades empresariales o personales.
Nos han dicho una y otra vez que el mundo funciona con aplicaciones, y esto es especialmente cierto en el sector empresarial. Para seguir siendo competitivas, las empresas en la actualidad deben poder confiar en una amplia caja de herramientas de soluciones digitales personalizadas para respaldar y mejorar las competencias de sus empleados humanos. Desafortunadamente, cuando se trata de desarrollar estas herramientas personalizadas, la responsabilidad generalmente recae en los departamentos de TI sobrecargados.
Por suerte, las nuevas herramientas están eliminando parte de la presión de TI y poniendo el desarrollo de aplicaciones en manos de aquellos que más lo necesitan: los empleados. El desarrollo ciudadano democratiza la entrega de aplicaciones, lo que amplía el grupo de desarrolladores potenciales de la empresa.
¿En qué se diferencia un desarrollador ciudadano de uno profesional? Los desarrolladores profesionales y los desarrolladores ciudadanos desempeñan roles fundamentales en el desarrollo de aplicaciones empresariales, pero provienen de diferentes orígenes y, a menudo, tienen objetivos y responsabilidades distintos.
Probablemente la diferencia más significativa es que los desarrolladores profesionales suelen tener formación oficial en ciencias de la computación o un campo relacionado y manejan con fluidez una variedad de lenguajes de programación. Participan en proyectos de desarrollo de software complejos, que optimizan el rendimiento, la escalabilidad y la seguridad, y deben estar equipados para guiar a una aplicación a lo largo de todo el ciclo de vida del desarrollo de software. Estos desarrolladores son capaces de diseñar y desplegar aplicaciones desde cero.
En comparación, un desarrollador ciudadano suele ser un usuario final que no pertenece al departamento de TI y que no tiene una formación oficial en programación, pero que posee las herramientas y plataformas para crear aplicaciones que satisfagan sus necesidades. Tienen un conocimiento limitado de la seguridad de los datos o la arquitectura de software; su enfoque se centra en abordar las preocupaciones empresariales inmediatas, a menudo mediante el uso de plataformas con código bajo o sin código. Estas plataformas están diseñadas para ser fáciles de usar, lo que permite a quienes no tienen conocimientos técnicos desarrollar aplicaciones funcionales rápidamente.
En pocas palabras, mientras que los desarrolladores profesionales aportan profundidad y una gran cantidad de experiencia, los desarrolladores ciudadanos proporcionan agilidad e inmediatez, y abordan los requisitos especializados dentro de una organización. Ambos roles son vitales, pero se adaptan a diferentes espectros del panorama de desarrollo de software.
Las empresas están empezando a notar el mayor valor empresarial cuando los desarrolladores ciudadanos participan en la entrega de aplicaciones. Hay una demanda creciente de aplicaciones, una que los desarrolladores altamente calificados simplemente no tienen los recursos para satisfacer. De hecho, IDC (International Data Corporation) predice que habrá más de 750 millones de aplicaciones desarrolladas para el año 2025 (Fuente: IDC). Además, la investigación de Gartner predice que para el 2026 al menos el 80 % de los usuarios de herramientas para desarrolladores con código bajo consistirá en aquellos que operan fuera de los departamentos de TI formales, lo que es significativamente mayor que el 60 % de los usuarios que no son de TI que se identificaron en el 2021. (Fuente: Gartner)
Los modelos empresariales digitales son cada vez más maduros, lo que está creando un trabajo pendiente de TI interminable. La TI está constantemente bajo presión para modernizar la infraestructura tecnológica y las aplicaciones a fin de avanzar en lo que respecta a las agendas digitales, y no puede hacerlo sin ayuda. Los desarrolladores ciudadanos ayudan en el desarrollo de aplicaciones empresariales críticas, lo que libera a los departamentos de TI para que centren más de sus energías en proyectos que requieren experiencia tecnológica.
En muchos casos, los gerentes de proyectos y otros departamentos que no pertenecen a la TI pueden frustrarse porque los equipos de TI no pueden ofrecer aplicaciones lo suficientemente rápido como para satisfacer la demanda inmediata. Con las políticas, la formación y las herramientas de desarrollo ciudadano adecuadas, los usuarios del negocio pueden simplemente desarrollar sus propias soluciones, en lugar de esperar a que los desarrolladores internos profesionales se encarguen de su trabajo pendiente.
Sin embargo, vale la pena reconocer que, si no se controla, el desarrollo ciudadano puede dar lugar a problemas de calidad y seguridad de las aplicaciones que TI no puede identificar. Por lo tanto, es fundamental que los gerentes de proyectos trabajen con desarrolladores ciudadanos y departamentos de TI para garantizar que todos los proyectos de desarrollo se adhieran a los marcos de trabajo y de gobierno establecidos.
La intencionalidad de la planificación tiene beneficios inmediatos y a largo plazo para cualquier aplicación que desees desarrollar. A medida que te preparas para usar prácticas de desarrollo ciudadano a fin de desarrollar una aplicación, primero ten en cuenta las siguientes preguntas:
¿Cuáles son los objetivos, las metas y las salidas de la aplicación? ¿Qué problemas buscas resolver?
¿Quién usará la aplicación?
¿Quieres que los usuarios tengan la capacidad de ver y editar campos, o los usuarios necesitarán diferentes grados de acceso?
¿Cómo usarán los usuarios la aplicación? ¿Servirá para proporcionar, recopilar, enrutar, buscar o solicitar información, o para colaborar con ella?
¿Los usuarios introducirán los datos en las aplicaciones? ¿Es necesario importar los datos de una fuente externa?
¿Cómo van a interactuar los usuarios con tu aplicación? ¿Utilizarán un dispositivo móvil o una computadora? ¿Interactuarán a través de una interfaz conversacional, como un bot de chat?
¿Cómo informarán los interesados en la aplicación?
- ¿Cómo gestionarán los administradores las actualizaciones y mejoras de la aplicación?
La planificación debe comenzar con el final del proceso en mente. Las salidas tienden a ser los impulsores de las entradas, y si buscas acelerar el proceso, comprender las métricas de salida puede ayudarte a identificar qué medir.
Este es el paso en el que comienzas a desarrollar tus datos. Asegúrate de que las personas adecuadas tengan el nivel adecuado de acceso a los datos. Primero, crea o abre el registro de la aplicación; luego, crea tu modelo de datos con tablas y campos relevantes y, finalmente, protege e importa tus datos.
Durante el paso de diseño, tu enfoque cambia a identificar y construir la experiencia y el canal de usuario final correctos. Decide qué funcionalidad se necesita para cada experiencia de usuario, ya sea web, móvil, bot de chat, etc.
La lógica es lo que hace que una aplicación sea una herramienta útil. Puede ser de distintos formatos: desde lo que las personas pueden y no pueden ver hasta reglas que rigen lo que sucede con los datos cuando los ingresas, los actualizas y los eliminas, y lo que hace que los usuarios sean conscientes de las condiciones y eventos dentro de la aplicación.
- Lógica de formularios: cuando controlas lo que ven los usuarios cuando visitan un formulario, puedes aumentar la capacidad de respuesta y la productividad. Pregúntate: ¿esto es una sugerencia o una imposición? Las sugerencias hacen que el formulario sea más fácil de completar, mientras que la imposición obliga al usuario a llevar a cabo ciertas acciones para completarlo.
- Reglas empresariales: la lógica y la validación que se ejecutan cuando se crean registros o cuando se cambian o eliminan. Esto es útil para crear una lógica condicional que se ejecute cuando se haya enviado el formulario.
- Flow Designer: Flow Designer es una herramienta que se utiliza para crear flujos de trabajo empresariales. Al diseñar un flujo, ten en cuenta que cada flujo debe tener una meta única, ser reutilizable y tener claro el propósito de la acción.
- Integration Hub: una poderosa herramienta que está disponible cuando se crean flujos y se utilizan conectores y acciones de integración prediseñados.
- Notificaciones: la mayoría de las aplicaciones deben tener un tipo de notificación multicanal para acciones como cuando se asigna una tarea a un usuario o grupo, cuando se abre una solicitud para que se cierre y cuando se requiere aprobación.
Aunque los desarrolladores ciudadanos proporcionan recursos eficaces para reducir el trabajo pendiente de TI y mejorar los tiempos de respuesta del desarrollo, no puedes esperar que todos los desarrolladores ciudadanos tengan la misma educación y experiencia que un desarrollador profesional. Como tal, una estrategia exitosa conlleva proporcionar a los desarrolladores ciudadanos las herramientas de aplicaciones con código bajo que son capaces de reducir la brecha de experiencia de TI. Las plantillas, las bibliotecas de código, las integraciones prediseñadas, etc. mejoran la productividad, lo que brinda a los desarrolladores ciudadanos los recursos que necesitan para crear aplicaciones empresariales potentes.
Muchas aplicaciones pueden exigir entradas y esfuerzos para ambos tipos de desarrolladores. Como tal, trabajar dentro de una plataforma que permite una mayor colaboración entre desarrolladores profesionales y desarrolladores ciudadanos con código bajo ayuda a garantizar que los elementos más complejos estén en manos de aquellos mejor calificados para abordarlos, al tiempo que permite a los desarrolladores ciudadanos manejar problemas menos complejos utilizando recursos con código bajo.
Los desarrolladores ciudadanos han transformado el panorama de TI moderno y permitieron a las organizaciones cerrar la brecha entre los procesos de TI tradicionales y la creciente demanda de soluciones digitales. Al aprovechar el potencial de las plataformas de código bajo y sin código, los desarrolladores ciudadanos empoderan a las empresas con respuestas más rápidas y ágiles a los desafíos en constante evolución. Convertirse en un desarrollador ciudadano ofrece una vía emocionante para el crecimiento y el impacto empresarial tangible. Si estás considerando el desarrollo ciudadano como un posible beneficio en tu carrera, a continuación te mostramos cómo puedes posicionarte como desarrollador ciudadano dentro de tu organización:
Comienza expresando tu curiosidad y ganas de contribuir en este espacio. Al demostrar tu entusiasmo, le indicas a la organización que eres una persona proactiva y con pensamiento innovador. Las organizaciones que ya dependen de procesos automatizados son las más adecuadas para ayudar a sus empleados en la transición de convertirse en desarrolladores ciudadanos, y algunas empresas incluso pueden tener programas implementados para hacerlo posible.
Si ya hay desarrolladores ciudadanos dentro de tu empresa, es posible que puedan proporcionar orientación y apoyo valiosos. Interactúa con cualquier personal fuera de la TI que ya esté aplicando habilidades de desarrollo y aprende de sus experiencias, ya que esto puede ayudarte a comprender las prácticas recomendadas de desarrollo ciudadano al tiempo que evitas los errores comunes.
Dedica tiempo a comprender los pormenores de cualquier plataforma de código bajo o sin código que tu organización pueda usar, así como cualquier otra herramienta que esté autorizada y disponible. Crear una base de conocimiento será fundamental cuando empieces a desarrollar aplicaciones.
En algún momento, tendrás que comenzar tu primer proyecto de desarrollo. Comienza de a poco; usa la plataforma para crear aplicaciones o soluciones básicas. Determina qué proceso deseas automatizar o mejorar. Describe los requisitos del flujo de trabajo del proceso, crea un diagrama de flujo que desglose el proceso en pasos individuales y, luego, trabaja dentro de la herramienta o plataforma para automatizar esos pasos. Una vez que hayas terminado, compara el producto final con los requisitos iniciales para determinar si el proyecto fue exitoso.
A medida que profundizas en el desarrollo ciudadano, asegúrate siempre de que tus proyectos se alineen con los objetivos estratégicos de tu empresa. Esta alineación es crucial para garantizar que tus esfuerzos generen beneficios tangibles para la empresa. Una mayor velocidad y una menor complejidad son dos áreas en las que los desarrolladores ciudadanos pueden proporcionar ventajas importantes a los procesos internos; por lo tanto, busca estas oportunidades.
El aprendizaje continuo es clave: como desarrollador ciudadano, debes motivarte para esforzarte por mejorar. Asiste a talleres, inscríbete en cursos en línea y aprovecha oportunidades no empresariales para perfeccionar tus habilidades. A medida que el panorama tecnológico evoluciona, mantenerte actualizado te ayudará a seguir siendo relevante y eficiente.
Define claramente las responsabilidades y los roles de los desarrolladores ciudadanos y cómo deben interactuar con el departamento de TI. Trabajar con TI, pero no directamente debajo de ellos, permite a los desarrolladores ciudadanos beneficiarse de los requisitos de supervisión, soporte y seguridad de TI sin simplemente convertirse en otra rama del departamento. Establece límites que determinen las actividades que los desarrolladores ciudadanos pueden y no pueden asumir y ayuda a determinar la responsabilidad y la propiedad de las tareas, la planificación y el control. Esta claridad evita la superposición, garantiza una asignación eficiente de tareas y optimiza la gestión de proyectos.
Antes de adentrarte en el desarrollo, establece objetivos claros. ¿Qué esperas lograr con tu aplicación? Esta dirección garantiza que los proyectos sigan en curso y se alineen con estrategias empresariales más grandes. Trabaja con los interesados en todos los niveles para gestionar las expectativas y asegurarte de que comprenden el propósito del proyecto.
Identifica y documenta las situaciones en las que se utilizará la aplicación. Tener casos de uso definidos garantiza que el software satisfaga las necesidades empresariales genuinas y proporcione un valor auténtico a sus usuarios.
En lugar de empezar desde cero cada vez, desarrolla un marco de trabajo estandarizado para proyectos de desarrollo ciudadano. Esto no solo acelera los ciclos de desarrollo, sino que también garantiza la consistencia en las diferentes aplicaciones.
Establecer el gobierno en el desarrollo ciudadano es esencial para prevenir problemas como múltiples versiones de aplicaciones, aplicaciones sin soporte e ineficiencias generales. Como se abordó anteriormente, la supervisión de los equipos de TI y liderazgo, junto con la formación y los recursos adecuados, es fundamental. El enfoque correcto al gobierno fomenta la colaboración y promueve un entorno de creatividad en el que los desarrolladores ciudadanos puedan experimentar y mejorar, dentro de los límites establecidos.
Cada pieza de software presenta un riesgo potencial, ya sea relacionado con la seguridad de los datos, el cumplimiento, las finanzas, la integración del sistema o la reputación. Los desarrolladores ciudadanos deben saber sobre estos riesgos y se les debe enseñar a tomar medidas proactivas para mitigarlos.
A medida que las empresas evolucionan, también lo hacen sus aplicaciones. Asegúrate de que haya un proceso estructurado para gestionar las actualizaciones, iteraciones o interrupciones del software. El enfoque adecuado a las actualizaciones de aplicaciones reduce las interrupciones y mantiene los sistemas funcionando sin problemas.
Fomenta un entorno en el que el personal que no es de TI se sienta capacitado para innovar y contribuir. Esto se puede lograr a través de la formación, los talleres y la promoción de historias de éxito. Prepárate para incentivar a los desarrolladores ciudadanos a fin de que estén más dispuestos a identificar oportunidades de proyectos de alto valor y poco esfuerzo que resuelvan problemas empresariales reales. Una cultura de desarrollo ciudadano próspera conduce a una organización más ágil y con una mayor capacidad de respuesta.
Las ventajas del desarrollo ciudadano son difíciles de ignorar, pero no todo lo relacionado con este enfoque que no pertenece a la TI es siempre positivo. El desarrollo ciudadano también conlleva ciertas desventajas que, si no se reconocen, pueden perjudicar a los beneficios. A continuación, echamos un vistazo rápido a algunas de las ventajas y las desventajas del desarrollo ciudadano:
Reducción de la responsabilidad de los departamentos de TI
Si bien TI puede desempeñar un rol central en la creación de automatizaciones simples y la optimización de sistemas, estos profesionales también tienen otras responsabilidades más estratégicas que deben atender. Al permitir que las personas que no pertenecen a la TI creen sus propias aplicaciones, las organizaciones brindan a su departamento de TI el ancho de banda adicional para priorizar proyectos más complejos y a gran escala, realizar mantenimiento técnico y aprovechar al máximo su experiencia para la empresa.
Rentabilidad
La brecha de habilidades de TI sigue creciendo, y la contratación de nuevos profesionales técnicos para abordar las necesidades asociadas con el escalamiento y la transformación digital no siempre es factible. Los desarrolladores ciudadanos amplían partes del conjunto de habilidades de TI a aquellos que no pertenecen al departamento de TI, lo que permite a las organizaciones lograr más con costos reducidos.
Mayor productividad y eficiencia
Al permitir que los usuarios finales diseñen sus propias herramientas adaptadas a tareas o desafíos específicos, las soluciones suelen ser más optimizadas y estar alineadas con precisión con los objetivos empresariales, lo que mejora la productividad. Del mismo modo, debido a que la mayoría de las plataformas de código bajo o sin código están diseñadas para ofrecer velocidad y facilidad de uso, los desarrolladores ciudadanos pueden crear soluciones eficaces más rápido que nunca.
Dificultad para mantener actualizados a los desarrolladores ciudadanos
La tecnología siempre está evolucionando, y mantenerse al día con estos cambios puede parecer un trabajo de tiempo completo. Los desarrolladores ciudadanos pueden requerir formación casi constante para seguir siendo relevantes. Al mismo tiempo, la rápida evolución de los sistemas digitales significa que las aplicaciones creadas por desarrolladores ciudadanos pueden quedar rápidamente obsoletas o incompatibles con los nuevos sistemas.
Necesidad potencial de una supervisión exhaustiva
Sin un gobierno y orientación adecuados, es posible que los desarrolladores ciudadanos creen soluciones que no se adhieran a los estándares organizacionales, lo que puede generar ineficiencias potenciales, producir soluciones de baja calidad o incluso introducir errores en los procesos existentes. La TI debe seguir participando en proyectos de desarrollo ciudadano para garantizar su éxito.
Riesgos de seguridad
Por último, dada la naturaleza sensible de los datos de la empresa y del cliente, es imprescindible que los desarrolladores ciudadanos no expongan los activos digitales a usuarios no autorizados. Al carecer de gran parte de la experiencia que tienen los departamentos de TI en términos de protocolos de seguridad y procesos aceptados, los desarrolladores ciudadanos podrían introducir por error vulnerabilidades en sus aplicaciones, lo que plantea riesgos potenciales para los datos y sistemas de la empresa. Una vez más, una educación y supervisión exhaustivas por parte de los departamentos de TI dedicados pueden ayudar a reducir este riesgo.
ServiceNow ofrece una serie de herramientas de desarrollo ciudadano, ya sea código bajo o sin código.
App Engine proporciona una ubicación única en la que los desarrolladores ciudadanos pueden colaborar, componer espacios de trabajo personalizados e implementar características de automatización mediante interfaces simples y visuales. Utiliza plantillas y diseños de prácticas recomendadas para entrar en acción.
App Engine Management Center (AEMC) equipa a las organizaciones con recursos esenciales para ampliar sus competencias de desarrollo con código bajo. Con AEMC, puedes proponer fácilmente nuevos conceptos de aplicaciones, colaborar con otros creadores y pasar proyectos a tu equipo de TI para realizar pruebas e implementaciones fácilmente y dentro de un espacio de trabajo unificado. Además, los administradores de TI pueden configurar protecciones de desarrollo para garantizar un gobierno eficaz y proporcionar soporte de nivel empresarial.
Flow Designer es una interfaz única para desarrollar y probar flujos mientras se utiliza el lenguaje natural a fin de describir la lógica de flujo. Usa esta herramienta para agregar flujos de trabajo a aplicaciones personalizadas, reducir la necesidad de scripts personalizados y operar junto con Integration Hub.
Process Automation Designer, una plataforma de desarrollo de aplicaciones empresariales avanzada, utiliza playbooks sin código, integraciones de terceros integradas y desencadenantes asignados para ofrecer flujos de trabajo más rápidos y eficientes.
Crea fácilmente flujos de trabajo digitales integrales para automatizar procesos en aislamientos, sistemas o departamentos. Integration Hub utiliza conjuntos de acciones de automatización y subflujos específicos de la aplicación llamados “radios” para simplificar las integraciones y empoderar a los desarrolladores en cualquier nivel de experiencia con una automatización confiable sin código.
Virtual Agent, un bot de chat mejorado con IA, incorpora NLU Workbench. Esto permite a los desarrolladores ciudadanos definir con facilidad intenciones, mapear entidades y crear modelos avanzados sin código.
Mejora tus flujos de trabajo y automatiza tareas repetitivas con el aprendizaje automático avanzado. Las plantillas prediseñadas sin código facilitan la implementación de la inteligencia predictiva.
Performance Analytics de ServiceNow utiliza KPI y paneles de operaciones diseñados específicamente, alertas automatizadas e información en tiempo real para ayudar a los expertos en la materia y a los interesados a priorizar recursos, anticipar tendencias y aprovechar al máximo las soluciones de automatización y autoservicio.
Incluso después de que la peor parte de la emergencia por la COVID-19 haya pasado, el impacto global de la pandemia de coronavirus es difícil de subestimar. En términos de desarrollo de aplicaciones, el cambio continuo del trabajo en la oficina al trabajo en el hogar ha hecho que las herramientas de desarrollo con código bajo sean aún más relevantes. Las plataformas que promueven la colaboración mejorada y el aumento de la salida de aplicaciones ayudan a recrear los procesos de desarrollo formales que pueden haberse dejado de usar durante la transición.
Además de eso, el desarrollo ciudadano permite que las organizaciones aborden mejor los desafíos organizacionales que surgen debido a las fuerzas de trabajo remotas e híbridas. Con la expansión de las responsabilidades de desarrollo más allá de los desarrolladores profesionales, las empresas pueden reducir eficazmente la carga de los equipos de TI abrumados. Al mismo tiempo, la necesidad casi universal de soluciones inmediatas ayudó a incentivar a muchas industrias que han sido lentas en implementar soluciones con código bajo en el pasado. El resultado es un nuevo panorama de TI en el que el desarrollo ciudadano se está convirtiendo rápidamente en la norma. Este panorama puede perpetuarse en el futuro.