¿Cómo puede una agencia de software entregar software de calidad / ganar proyectos? [cerrado]

StackOverflow https://stackoverflow.com/questions/204572

  •  03-07-2019
  •  | 
  •  

Pregunta

Actualmente trabajo para una agencia de software a medida. ¿Alguien tiene alguna experiencia de cómo ganar un trabajo a buen precio?

Parece que hay tanta competencia de los equipos de programación offshore / bedroom, que el costo es extremadamente competitivo en estos días. Creo que es muy diferente en comparación con una empresa de productos de software o un departamento de TI interno en términos de presupuesto.

Como alguien dijo antes, solo llegamos a la versión 1.0 de muchos de nuestros programas, a menos que el cliente sea lo suficientemente grande. En este caso, no tiene sentido comercial pasar años haciendo que el software sea lo mejor que podamos. Es como si estuviéramos haciendo la misma calidad de trabajo que el personal interno de TI. Además, muchos de nuestros clientes no tienen una mentalidad técnica y, por lo tanto, no pagarán por cosas que no entienden.

Como nuestra empresa no tiene el dinero para rechazar el trabajo, a menudo se trata de que hacemos un trabajo complicado por muy poco dinero. He mejorado mucho en la gestión del cambio y el mantenimiento de especificaciones estrictas, etc. Todavía es difícil.

Editar -----------------------

Casi 3 años después de esta publicación, puedo enumerar algunas lecciones importantes que he aprendido desde entonces.

Por favor vea abajo para mi respuesta

¿Fue útil?

Solución

Si está preocupado por hacer demasiado trabajo por muy poco dinero, entonces trabaje cada hora. Sí, eso es más difícil de vender en la mayoría de las situaciones.

Tal vez puedas probar un enfoque de dos fases en su lugar. Tener un compromiso inicial muy breve en el que los entregables sean documentos de requisitos muy específicos que pasen a ser propiedad del cliente. Se arriesga a tener que competir por el desarrollo real, pero elimina el riesgo de que el proyecto tenga un precio demasiado bajo porque ya entenderá cómo es el cliente para trabajar, así como los requisitos de la aplicación.

Una vez que gane el trabajo a un precio justo, utilice las mejores prácticas sugeridas por mathieu para ayudar a garantizar la calidad y la productividad, que reducen el costo en que incurre.

Otros consejos

Lo que describió en su publicación (no su pregunta), creo que es una cuestión de ventas, administración y marketing, ante todo.

Usted dice que sus clientes no tienen una mentalidad técnica, esto requerirá tener una estrategia de ventas, consultoría y comunicación coherente, no se trata de habilidades de programación.

Además, si su empresa acepta constantemente proyectos que son demasiado complejos o costosos para su equipo, y si entrega productos de baja calidad, tarde o temprano quedará atrapado en un agujero. Atraerá a los clientes que no desea, y los clientes existentes se apagarán por su "incompetencia" y, tarde o temprano, encontrarán otra compañía en la que intentarán jugar el mismo juego de precios. Esos clientes no valen nada en mi opinión.

Usted pregunta '¿cómo gana un trabajo a buen precio'? Las personas son animales sociales, hablan entre ellos. Si hay una percepción del mercado de que usted es una empresa no confiable, tarde o temprano lo sabrán las personas y los futuros clientes. A los clientes no les importa si les ofreció un producto a un precio realmente bajo, en un horario demasiado apretado: no es realmente su error, es usted quien lo aceptó. Así que, una vez más, creo que la dura prueba es una mala práctica comercial.

Descubrí que realmente tiene que definir especificaciones estrictas en trabajos con presupuestos bajos, definir qué puede y qué puede ofrecer, decirles el precio, evitar que su jefe ofrezca demasiadas etiquetas de precio de descuento a largo plazo para los clientes porque tienen demasiado miedo perder al cliente. Comunícate temprano y con frecuencia cuando las cosas se vayan de las manos. Escribe ofertas precisas para características adicionales. Escríbalos de forma precisa, no confíe en las conversaciones telefónicas (usted: " son 4 horas adicionales de trabajo " ;, cliente: " ok " ... 4 meses más tarde, cliente " ¿qué fue eso otra vez? ¿Por qué? se supone que debo pagar por esto ").

Ahora, por supuesto, una forma de mantener bajos los precios es no contratando a imbéciles completos que podrían ser inicialmente más baratos que los programadores mejor calificados. Este es un enfoque miope y fracasará miserablemente.

Es la relación con su cliente la que le hará ganar más negocios. Un desarrollador realmente dio un paso adelante y detuvo un proyecto porque su asesor de ventas básicamente nos mintió con respecto a un conjunto de soluciones. Luego, el desarrollador ofreció una solución simple y simple dentro del mismo presupuesto y lo entregó a tiempo.

Este chico y su equipo han estado consultando en mi compañía por más de 6 años. Su integridad y su naturaleza seria y trabajadora han sido una inmensa ventaja, y ha encontrado personas de calidad para que trabajen para él a medida que su reputación ha crecido. Su honestidad vale más que cualquier ahorro que pueda obtener al enviar los activos intelectuales de mi empresa al extranjero.

" tanta competencia de los equipos de programas offshore / bedroom " - Parece que ustedes necesitan dedicar algo de tiempo a la creación de redes. Al final del día, a las personas les gusta hacer negocios con personas, no con empresas. Si eres conocido y querido en tus comunidades de clientes, serás el favorito y obtendrás un mejor precio de la confianza que has construido. Y las referencias te darán una ventaja poderosa: pídelos.

" nuestra empresa no tiene el dinero para rechazar el trabajo " - muchas empresas tienen esto como un punto de partida, pero en última instancia, debe superar este enfoque. Debe tomar decisiones sobre qué tipo de trabajo desea hacer (y quiénes serán los clientes) y, lo más importante, qué no hace.

Como consultor, me he mudado personalmente a un modelo de tarifa por hora solo por este motivo. Me han quemado demasiados contratos, se han vuelto salvajes y siento tu dolor.

Al final, las personas que solo van con la propuesta de precio más bajo serán problemas para su empresa. Si bien no puede ser tan selectivo, de manera que nunca obtenga proyectos, definitivamente querrá mantenerse al margen de los contratos cuya administración de soporte sea tan indiferente sobre el proceso real de desarrollo de software que solo se fijan en el precio inicial de algo. . Por lo general, es lo que no está en el contrato o especificación lo que cambia los márgenes de beneficio y los plazos.

Por lo general, lo que más te conviene es ser exigente desde el principio en lugar de bajar los precios para recibir una ola de lo que, de todos modos, serán clientes problemáticos. En su caso, si bien siempre existe la disputa entre una RFP que no es tan concisa como una especificación de requisitos técnicos, las citas iniciales deben entenderse como una estimación general basada en el nivel de claridad en la RFP.

Y definitivamente estoy de acuerdo con kitsune, que si su empresa acepta constantemente contratos que no se ajustan a la experiencia de desarrollo o ancho de banda de su empresa, todo lo que se obtendrá será una sobrecarga y una mala reputación.

Esto podría verse como una guía rápida del problema anterior.

Documento de propuesta

  1. Comience con un documento de propuesta que explique su comprensión de las necesidades de los clientes lo mejor posible. Esto se puede hacer en 1-2 páginas de escritura como mínimo. Puede comenzar a dirigirse hacia los requisitos, pero debería ser más informal que eso.

Documento de presupuesto

  1. Ahora vaya a Excel y enumere todas las tareas en el proyecto que cree que tendrá que hacer. Anote los tiempos en días, ninguno más grande que 2 (0.25, 0.5, etc.).

  2. Agregue una columna para la prueba y hágala un porcentaje del tiempo de desarrollo (20-30% es normal)

  3. Ahora agregue una columna para administración (proyecto + cuenta) y agregue un% de tiempo para eso (en las dos columnas anteriores). 20-40% es normal. (70-30 split pm / am)

  4. Establezca una tarifa diaria para su empresa. Puede ser más complejo y tener diferentes tasas para diferentes funciones de usuario, pero como mínimo, establezca una tasa que signifique que tendrá un buen margen independientemente del trabajo que se realice.

  5. Calcule cuál es el valor para el total de días que se ha registrado hasta ahora. Luego agregue un monto de contingencia además de esto (para el trabajo de precio fijo) 10-20% es normal aquí, pero puede cambiar según la experiencia con el cliente y la cantidad de cambio a la que está acostumbrado.

  6. En este punto, puede descontar el monto total, lo que es mejor que reducir cualquier otra parte de este documento, ya que le mostrará al cliente que no está haciendo los trabajos más rápido por arte de magia, sino que está eliminando algunos su margen Por lo tanto, no deben esperar que reduzcas el plazo del proyecto.

** Importante: analice el presupuesto y el negocio de su cliente cuando desarrolle un cálculo de costos. No tiene sentido que entregue un costeo diseñado para una gran empresa a su compañero que desea que una aplicación se realice de manera rentable. Del mismo modo, asegúrese de cobrar correctamente a una organización que se utilizará para tarifas freelancer de gama alta.

Piensa como un analista de negocios. No solo lo ayudará a complacer al cliente cuando vea sus costos, sino que probablemente le dará una mejor perspectiva de su negocio. Si van a ganar dinero al usarte, entonces probablemente tengas un ganador. Si no puede preguntar directamente cuánto dinero tienen para gastar con usted, averigüe cuántos clientes tienen, qué cobran, cuántos empleados tienen, etc. Entonces debería poder calcular si Lo que propones será rentable para ellos. **

  1. Regrese al documento de su propuesta y agregue una tabla con secciones para diseño, desarrollo, administración, etc. Puede mostrar al cliente su hoja de costos en ciertas circunstancias, pero es mejor evitar la complejidad en la mayoría de los casos. Sin embargo, está ahí como respaldo, y no acaba de expulsar un número.

Documento de línea de tiempo

  1. Tome la lista de tareas de diseño y desarrollo del presupuesto y colóquela en una nueva hoja (o Proyecto si es elegante como yo). Coloque las fechas de inicio y finalización de cada sección, agregando aproximadamente un 30-50% extra en la parte superior.

  2. Agregue una representación gráfica de los días como bloques en Excel o use un Plantilla de Gantt como esta .

  3. Vuelva a su documento de propuesta y agregue hitos clave del documento de tiempo.

Etapa de propuesta completada

  1. Envíe o presente su propuesta a su posible cliente. Esperamos que estén entusiasmados con lo que ha propuesto y que estén felices de pasar a la siguiente etapa, reuniendo todos los requisitos. En proyectos posteriores con el mismo cliente, puede ir directamente a los requisitos.

Etapa de requisitos

  1. Enumere cada requisito frente a una ID separada, ya sea 1,2,4,5 o 1.1,1.2,1.3. Realmente no importa, pero la segunda puede ayudar con listas grandes.

  2. Hay algunas pruebas para los requisitos y puede intentar cumplirlas, pero a veces no se aplican (por ejemplo, algunos requisitos pueden estar guiados por el diseño). Algunos de estos son: ¿Es el requisito comprobable, es singular, está claro? Intentaré encontrar un enlace a esto en alguna parte.

Este es mi punto de vista de desarrollador:

  • Prácticas recomendadas para el control de versiones: mantenga limpio el tronco, no confirme el código que no se compila, y confirme con frecuencia
  • Integración continua
  • Pruebas de unidad (con cobertura de código)
  • Implementación automática en servidores de prueba
  • Embalaje automático de la aplicación
  • Automatiza tanto como puedas :)

También, contrate buenos desarrolladores , y los trata bien :)

Venda el precio fijo, el trabajo de alcance fijo, no el trabajo por hora. Eso mitiga el riesgo de que su cliente ejerza una sobrecarga (usted absorbe todo el riesgo, pero lo hace de todos modos), y enmarca el proyecto en términos del valor del software, no de la calidad del esfuerzo realizado.

Estamos tratando de construir un producto y reutilizar la experiencia existente. En comparación con el Reino Unido en Ucrania (donde trabajo), los salarios son más bajos, pero siguen siendo 4-5 veces más altos que en la India.

Hasta ahora, el mejor resultado es obtener dos nuevos clientes, que necesitan una solución similar, por lo que podemos ofrecer mejores precios y tenemos más confianza en nuestra estimación.

Por cierto, verifiqué en whywaitdigital.com, y parece que tenemos un producto que sus clientes podrían necesitar. Hacemos portales: editorial, B2C, catálogos de productos con habilitación geográfica y usamos ASP.NET MVC también. Puede encontrar información de contacto en nuestro sitio web, www.socialtalents.com.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top