Básicamente, está solicitando el curso completo de Ingeniería de Software. Déjame decirte que hay un cuerpo de conocimiento muy grande y en constante evolución.
Olvídate de las anécdotas. “Debería emparejar el programa”, “debería escribir documentación con estilo X”, “debería usar RUP”, “debería usar Agile” … Eso es más como aprender sobre nutrición al conocer la dieta Southbeach y Atkins de Oprah.
Si no sabe cómo hacerlo, contrate a alguien que sí lo haga. Es como pedir consejos sobre cómo hacer una cirugía cerebral sin tener que ir a la escuela de medicina.
- ¿Está Scrum, en la práctica, yendo en la dirección opuesta del Manifiesto para el Desarrollo de Software Ágil y sus Doce Principios?
- ¿Cuál es la diferencia entre los tres tipos de ingeniería: informática e ingeniería, informática e ingeniería de software?
- ¿Es 'ágil' fundamentalmente opuesto a cómo operan las grandes empresas?
- ¿Cuál es la diferencia entre regresión, cordura y prueba de humo?
- ¿Qué papel en un proyecto de software cree que le conviene más: PM, SA, TL, Dev, Tester? ¿Por qué?
Otro problema, si está preguntando esto aquí, no tiene ningún buen desarrollador de software con buenos antecedentes y trayectoria exitosa. Entonces, mi consejo es que inicialmente subcontrate el trabajo a una empresa de consultoría que lo haga. Si se encuentra en los EE. UU., Busque Pivotal Labs, Relevance, Thoughtbot y muchos otros con credibilidad y experiencia.
No intente reunir su propio equipo si no tiene suficiente experiencia trabajando con la gestión de proyectos, recursos humanos. La mejor manera de no perder el tiempo contratando freelancers con los que no sabes cómo lidiar es externalizar mientras buscas un líder de equipo lo suficientemente bueno que construya tu propio equipo interno con una buena combinación de desarrolladores senior y junior (no, tú no quiero que todos sean adultos mayores, créanme).
Entonces, la compañía de outsourcing puede ayudar a hacer la transición de su trabajo a su nuevo equipo para continuar.
Es lo mismo para los otros aspectos de su empresa: no haga contabilidad por su cuenta, contrate a una CA. No escriba contratos por su cuenta, contrate a un abogado. No haga campañas por su cuenta, contrate una agencia de publicidad. Y finalmente, no escriba software por su cuenta, contrate una consultoría o, si tiene suerte, encuentre un desarrollador muy experimentado con muchos años desarrollando software en muchas tecnologías, con habilidades de comunicación probadas, habilidades de gestión de proyectos, una red de personas lo suficientemente grande y credibilidad en el mercado.
Si tiene los recursos, ese es el mejor curso de acción. Si no lo hace y prefiere ir “más barato”, es probable que tenga que aprender cometiendo errores. Y créanme, lo más probable es que repitan cientos de los mismos errores que todos los profesionales que describí anteriormente ya saben cómo resolver.
Moraleja de la historia: no es ciencia espacial, pero si no eres un ingeniero de la NASA, no intentes ir a la luna.