Doggie Bus: cómo un desarrollador creó un "Uber para perros" con .NET MAUI y Azure

Logotipo de Doggie Bus

Cliente
Doggie Bus

Productos y servicios
.NET MAUI
ASP.NET
Azure

Sector
Transporte

Tamaño de la organización
Pequeño (1-100 empleados)

País o región
Estados Unidos

Doggie Bus es una startup de Nueva Orleans fundada por Troy Bergeron, que ofrece un servicio único de "Uber para perros": una aplicación móvil que permite a los propietarios de mascotas programar viajes seguros y convenientes para sus perros a la guardería, al veterinario y más. Troy, un amante de los perros de toda la vida, conduce personalmente el transbordador Doggie Bus y trata a cada cachorro como si fuera de su familia. Su objetivo es hacer que el transporte de mascotas sea tan fácil y confiable como solicitar un servicio de transporte, para que los propietarios tengan total tranquilidad.

Para hacer realidad esta visión, Troy se unió a Mario DeLuca (DeLuca Technologies), un ingeniero de software veterano y primer adoptante de .NET MAUI (y Xamarin antes de eso). Juntos construyeron una aplicación móvil multiplataforma que rivaliza con las mejores experiencias de uso compartido, pero que está adaptada para padres de mascotas.

Recorte de pantalla del panel
Recorte de pantalla de programación de recogida
Seguimiento en vivo de la ubicación del Doggie Bus

Personas reales, pasión auténtica

A principios de 2024, Doggie Bus se lanzó en iOS y Android, facilitando a los propietarios de mascotas la organización de viajes. El compromiso personal de Troy con la seguridad de las mascotas es el corazón del servicio. Conoce a cada nuevo cliente (humano y perro) y proporciona confianza a través de la transparencia: los propietarios pueden rastrear el Doggie Bus en tiempo real en un mapa y recibir notificaciones en cada recogida o entrega.

A los dueños de mascotas, que suelen ser tan protectores como cualquier padre, les encanta esta visibilidad. La aplicación les brinda tranquilidad, sabiendo dónde está su "bebé peludo" en todo momento y que está en buenas manos.

En el aspecto técnico, Mario fue el héroe detrás de escena. Como desarrollador de C# con mucha experiencia, estaba emocionado de usar .NET de extremo a extremo para Doggie Bus. Esto le permitió crear de forma independiente una experiencia móvil nativa y pulida en ambas plataformas. La colaboración funcionó sin problemas: Troy aportó una profunda comprensión del dominio y comentarios constantes como el primer usuario de la aplicación (realizando su ruta diaria a través de un modo de administración), mientras que Mario iteraba rápidamente en las características. Ambos estaban impulsados por la misión de hacer que el servicio "sea tan fácil que un perro pudiera hacerlo," como le gusta bromear a Troy.

Nuestro servicio debería ser tan fácil que un perro podría hacerlo"

Troy Bergeron, fundador, dueño de mascota y conductor Doggie Bus

Mario y Troy están de pie frente al Doggie Bus.

Mejor juntos: resolviendo con .NET MAUI

El desafío: Doggie Bus necesitaba aplicaciones móviles de alta calidad en dos plataformas sin duplicar esfuerzos. También requerían comunicación en tiempo real (para el seguimiento de viajes en vivo) y una interfaz de usuario atractiva y fácil de usar para generar confianza en los usuarios. Como pequeña startup, tuvieron que entregar todo esto con tiempo y presupuesto limitados.

La solución .NET: Mario eligió .NET MAUI para la aplicación móvil, lo que le permite dirigirse a iOS y Android desde un único código base de C#. Esta decisión redujo inmediatamente el tiempo y el coste de desarrollo a la mitad, ya que un código base produce dos aplicaciones nativas. "Con .NET MAUI, pudimos compartir más del 90% de nuestro código entre plataformas. Esa eficiencia nos permitió movernos más rápido, reducir la sobrecarga de mantenimiento y ofrecer una experiencia coherente tanto en iOS como en Android", agrega Mario. El marco de .NET MAUI proporcionó el rendimiento nativo y la flexibilidad necesarias, sin requerir un gran equipo. Los aspectos clave de la solución incluyen:

  • Código base unificado: ~90 % del código de la aplicación Doggie Bus se comparte entre plataformas. Las características principales (diseños de interfaz de usuario, lógica de conducción, modelos de datos) se escribieron una vez en .NET y se ejecutan de forma nativa en iOS y Android. Solo algunas partes requieren ajustes específicos de la plataforma (por ejemplo, un renderizador de mapas personalizado en cada sistema operativo para animar suavemente el pequeño icono del autobús). Este enfoque de código único garantiza paridad de características y mantenimiento simplificado.
  • Back-end con tecnología de Azure: El equipo creó un back-end en la nube con ASP.NET Core y Azure para controlar la autenticación, la programación y el almacenamiento de datos. Usando Azure SignalR, la aplicación logra actualizaciones en tiempo real: mientras Troy conduce, la ubicación GPS de la furgoneta se envía a la nube y se notifica instantáneamente a los teléfonos de los propietarios de mascotas, para que puedan ver el autobús moviéndose en vivo en el mapa. Todos los datos (programaciones, perfiles de mascotas, registros de mascotas) se almacenan en base de datos de Azure SQL a través de Entity Framework. El back-end también se integra con Apple y Google para facilitar el inicio de sesión. Esta pila de Microsoft de extremo a extremo (aplicación MAUI + servicios de Azure) garantiza fiabilidad y escalabilidad desde el primer día.
  • Herramientas y bibliotecas de desarrollo modernas: Mario aprovechó el rico ecosistema de .NET para acelerar el desarrollo. Usó el kit de herramientas de .NET MAUI Community para componentes y efectos de la interfaz de usuario listos para usar, y usó bibliotecas de código abierto para cosas como los flujos de autenticación. Las características de productividad, como Recarga activa de XAML permitían retoques rápidos en la interfaz de usuario, y GitHub Copilot actuaba como programador de pares de inteligencia artificial, generando código reutilizable y acelerando el desarrollo. El resultado: Doggie Bus pasó de ser un concepto a una aplicación pulida y rica en características en una fracción del tiempo en comparación con el desarrollo tradicional en múltiples equipos.

¿Por qué .NET MAUI? Además de la eficiencia multiplataforma, Doggie Bus eligió .NET por su rendimiento y ecosistema unificado. La aplicación usa compilación anticipada (AOT), por lo que funciona con un rendimiento "muy fluido" incluso en teléfonos Android más antiguos. Al usar C# tanto en el cliente como en el servidor, el equipo puede compartir código y habilidades en todo el proyecto. Por ejemplo, los modelos de datos se definen una vez y se reutilizan en ambos extremos, reduciendo errores y discrepancias.

Mario consideró brevemente otros marcos, pero habiendo entregado aplicaciones exitosas con Xamarin, confió en que .NET MAUI proporcionaría resultados de calidad nativa. "En mi opinión, es una decisión obvia", dice sobre la elección de MAUI. Este enfoque unificado eliminó la necesidad de contratar desarrolladores separados para iOS/Android y aprender nuevos lenguajes, lo cual es una gran ventaja para una pequeña empresa. Incluso desafíos como la implementación de mapas en tiempo real y el inicio de sesión social se resolvieron sin problemas gracias a la flexibilidad y bibliotecas de .NET.

Siempre que surgía un obstáculo (como ajustar la animación del pin de mapa en movimiento), .NET permitía soluciones personalizadas sin llegar a un callejón sin salida. En resumen, .NET proporciona todo lo necesario en una sola plataforma, lo que hace que el desarrollo sea más rápido, más económico y más agradable para el equipo de Doggie Bus.

.NET MAUI nos ha ayudado a reducir los costes de desarrollo en más de un 50 %. Con un único código base y lógica de back-end compartida, ofrecemos aplicaciones nativas de alto rendimiento para iOS y Android, sin duplicar el trabajo"

Mario DeLuca, CEO DeLuca Technologies

Impacto y camino por delante

Satisfaciendo a los propietarios de mascotas: Desde su lanzamiento, Doggie Bus ha transformado la forma en que los clientes administran el transporte de mascotas. Reservar un viaje ahora toma solo unos segundos en la aplicación, reemplazando lo que solía ser llamadas telefónicas o mensajes de texto. Con un par de pulsaciones, el propietario de una mascota programa una recogida, sin necesidad de papeleo ni de ida y vuelta. La aplicación envía notificaciones automáticas en momentos clave (cuando el bus se acerca, cuando se recoge a su perro y cuando se completa la entrega), por lo que los propietarios nunca se preocupan ni se preguntan.

A los propietarios de mascotas les encanta especialmente el seguimiento en vivo: ver el icono de Doggie Bus moverse en el mapa en tiempo real es tanto reconfortante como divertido. Notas de Troy: "Recibo muchos elogios sobre las notificaciones," y muchos usuarios le han dicho que el servicio es increíblemente fácil de usar. Esta comodidad y transparencia han impulsado una fuerte adopción por parte de los propietarios de mascotas locales. Muchos clientes ahora reservan viajes en Doggie Bus varias veces a la semana como parte de su rutina, confiando en que es confiable y seguro para sus perros.

Para la operación de Troy, la solución .NET trajo mejoras inmediatas. Toda la programación y el registro se volvieron 100 % digitales: "todo está en una aplicación, no hay una pista de papel," como dice Troy. No más portapapeles ni registros manuales; las funciones de administración de la aplicación le permiten administrar la ruta de cada día, verificar los perfiles de los perros y los registros de vacunación, y manejar los pagos todo en un solo lugar.

Esto ha simplificado las operaciones y reducido errores. Troy puede centrarse en cuidar a los perros en lugar de en el papeleo. Financieramente, el uso de .NET ha ahorrado a la empresa una fortuna en costes de desarrollo. Construir aplicaciones nativas separadas habría requerido dos desarrolladores o costosas subcontrataciones, lo cual estaba fuera de su alcance. En su lugar, un desarrollador entregó todo el producto.

Mario estima que elegir .NET MAUI "redujo drásticamente los costes de desarrollo," lo cual fue crítico para el lanzamiento de Doggie Bus. A pesar de un presupuesto ajustado, la aplicación final logró una calidad pulida y profesional comparable a la de competidores mucho más grandes. La elección de tecnología también simplificó el mantenimiento futuro: se pueden agregar nuevas características una vez y aparecerán en ambas plataformas, manteniendo bajos los costes continuos.

Gracias a su sólida base técnica, Doggie Bus está listo para escalar. La arquitectura nativa en la nube de Azure puede soportar fácilmente más vehículos o nuevas ubicaciones, alineándose con los planes de Troy para franquiciar el servicio. El equipo ya está explorando la expansión a otras ciudades, sabiendo que la misma aplicación y backend se pueden extender con cambios mínimos. También están planeando un portal web para reservas (probablemente construido con Blazor WebAssembly), y gran parte del código existente de .NET se puede reutilizar para ello. Con .NET, la expansión está integrada, no es una idea posterior: la versatilidad de la plataforma significa que las plataformas móviles, web y futuras pueden compartir un solo código base y conjunto de habilidades.

A la hora de reflexionar sobre el camino recorrido hasta ahora, Troy y Mario destacan cómo .NET les ha permitido convertir una idea en realidad. \Mario hizo realidad mi sueño", dice Troy, agradecido por la tecnología y el talento que dieron vida a Doggie Bus. A su vez, Mario da crédito a las herramientas: \.NET hace realidad los sueños", afirma, y señala que la plataforma permitió a un pequeño equipo crear una aplicación que superaba sus expectativas iniciales. Mario continúa: "Esta no es solo una aplicación móvil - es una plataforma escalable, conectada a la nube, construida para el crecimiento. Con .NET MAUI y Azure, hemos creado una base preparada para el futuro, ágil, eficiente y diseñada para expandirse". El éxito de Doggie Bus, feliz con los dueños de las mascotas, un negocio próspero y una base para el crecimiento, es la prueba de ello. Con .NET en el asiento del conductor, este "Uber para perros" está empezando con confianza y el viaje acaba de empezar.

Con .NET y Microsoft, no solo está creando software, sino que está convirtiendo su visión en soluciones del mundo real. Es donde los sueños se convierten en realidad."

Mario DeLuca, CEO DeLuca Technologies

¿Listo para empezar?

Nuestro tutorial paso a paso le ayudará a ejecutar .NET MAUI en su equipo.

Introducción