¿Cuánto tiempo lleva aprender a crear una aplicación?

He trabajado en productos durante más de 5 años y dos de ellos eran mis propios proyectos personales. Daré una idea de ambos, lo que le dará una buena perspectiva en cuanto a la línea de tiempo de tomar una idea en su cabeza y convertirla en un producto funcional.

  1. El primer producto que construí fue un motor de reclutamiento que era una aplicación basada en la web que permitía a las empresas buscar candidatos, ver sus hojas de vida, publicar trabajos, permitir a los usuarios responder al trabajo mediante respuestas en video, entrevistas 1 a 1 en video y también tenía una función de registro para que las empresas la utilicen en sus ferias de empleo. Este producto tardó más de 18 meses en desarrollarse principalmente porque no tenía la visión completa del producto establecida desde el inicio. Diseñaría interfaces de usuario de una manera ad-hoc. Si tuviera una idea para una nueva característica, simplemente comenzaría a diseñar y desarrollar sin pensar en todas las dependencias que pueda encontrar. Esta no es la forma en que se debe desarrollar un producto y, en última instancia, hizo que el producto fallara en el mercado.
  2. El segundo producto que construí fue una aplicación móvil para el compromiso de los empleados que permitía a las empresas publicar anuncios, reconocer empleados, publicar videos / imágenes, crear y programar eventos, permitir a los empleados publicar ideas con una función de upvote y también tenía un mecanismo de encuesta. Ya que esta era la segunda vez, tenía muchas lecciones aprendidas en mi cabeza que me impedían cometer los mismos errores. Tenía la visión completa del producto establecida en términos de flujos de proceso, así como de tramas de cableado por adelantado antes de que se realizara cualquier desarrollo. También tuve un CTO muy informado que me ayudó, lo que hizo el proceso significativamente más fácil. El tiempo total para desarrollar este producto fue de aproximadamente 5 a 6 meses con un producto de trabajo completo al final.

La primera pregunta que haría sería “¿qué tipo de aplicación”?

Porque, a partir de ahí, habría muchos factores involucrados.

La primera es, ¿tienes alguna experiencia previa en programación, o estás empezando desde cero? Si ya conoce un lenguaje de programación como Java, su barra de entrada será mucho más baja. Si eres competente, thangs se vuelve aún más fácil.

El segundo factor es la complejidad de su aplicación. ¿Es, por ejemplo, un lector de noticias donde puede encontrar muchos ejemplos y tutoriales en línea, o es una plataforma compleja que necesita construir desde cero?

El tercer factor es la cantidad de investigación que necesita hacer para construir lo que desea. ¿Puede obtener tutoriales y documentación para crear su aplicación, o necesita averiguarlo usted mismo?

Y finalmente, ¿puede usar el editor de GUI, o necesita compilarlo todo con código en bruto?

Mi experiencia personal: estoy creando una aplicación que tiene todas las partes “malas”: es compleja, no puedo usar GUI y necesito descubrir muchas cosas por mi cuenta. Ya llevo un mes y ni siquiera estoy cerca de terminarlo, a pesar de mi amplia experiencia con Java. Me desarrollo y sigo aprendiendo.

Ahí vas…