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


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/dormitorio, 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 realmente a la versión 1.0 de muchos de nuestro software, a menos que el el cliente es lo suficientemente grande. En este caso, no tiene sentido para los negocios 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 asumimos un trabajo complicado por muy poco dinero. He mejorado mucho en la gestión del cambio y mantener las especificaciones ajustadas, etc. Todavía es difícil.

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

Casi 3 años después de este post y puedo enumerar algunas lecciones importantes que he aprendido desde entonces.

Por favor, vea a continuación mi respuesta

Author: Chris Barry, 2008-10-15

9 answers

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

Tal vez usted puede intentar un enfoque de dos fases en su lugar. Tener un compromiso inicial muy corto donde los entregables son documentos de requisitos muy específicos que se convierten en propiedad del cliente. Usted corre el riesgo de tener que competir por el desarrollo real, pero se quita el riesgo de fijar el precio del proyecto demasiado bajo porque ya se comprenda cómo es trabajar con el cliente, 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, lo que reduce el costo en el que incurre.

 9
Author: Ed.T,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-15 13:35:32

Lo que describiste en tu post, (no tu pregunta), creo que es una pregunta de ventas, administración y marketing en primer lugar.

Usted dice que sus clientes no tienen una mentalidad técnica, esto requerirá tener una estrategia cohesiva de ventas, consultoría y comunicaciones, esto 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 entrega productos de baja calidad, tarde o temprano será atrapado en un agujero. Atraerá 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 se gana el trabajo a buen precio'? Las personas son animales sociales, hablan entre sí. Si hay una percepción del mercado de que eres una empresa poco confiable, las personas y los futuros clientes tarde o temprano lo sabrán. A los clientes no les importa si les ofreciste un producto a un precio realmente bajo, en un horario demasiado apretado - No es realmente su error, eres tú quien lo aceptó. Así que, una vez más, creo que todo el calvario es una mala práctica comercial.

Descubrí que realmente tienes que definir especificaciones ajustadas en trabajos con presupuestos bajos, definir lo que quieres y puedes entregar, decirles el precio, evitar que tu jefe ofrezca demasiadas etiquetas de precios de descuento para clientes a largo plazo porque tienen demasiado miedo de perder al cliente. Comunícate temprano y con frecuencia cuando las cosas empiecen a descontrolarse. Escriba ofertas precisas para características adicionales. Anote esto con precisión, no confíe en conversaciones telefónicas (usted: "eso es 4 horas adicionales de trabajo", cliente:"ok"... 4 meses más tarde, cliente " ¿qué fue eso de nuevo??? ¿por qué se supone que debo pagar por esto").

Ahora, por supuesto, una forma de mantener los precios bajos es no contratar idiotas completos que podrían ser inicialmente más baratos que los programadores mejor calificados. Esto es miope. se aproxima y fallará miserablemente.

 5
Author: kitsune,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-15 13:55:03

Es la relación con su cliente que le ganará negocios adicionales. Un desarrollador dio un paso adelante y detuvo un proyecto porque su asesor de ventas básicamente nos mintió con respecto a un conjunto de soluciones. El desarrollador entonces ofreció una solución simple y sencilla dentro del mismo presupuesto y la entregó a tiempo.

Este tipo y su equipo han estado asesorando en mi empresa por más de 6 años. Su integridad y seriedad, naturaleza trabajadora ha sido un inmensa ventaja, y ha encontrado gente de calidad para trabajar para él a medida que su reputación ha crecido. Su honestidad vale más que cualquier ahorro que pudiera obtener enviando los activos intelectuales de mi compañía al extranjero.

 3
Author: David Robbins,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-05-29 01:11:21

"tanta competencia de equipos de programas offshore/dormitorio" - suena como que ustedes necesitan poner algo de tiempo en la creación de redes. Al final del día, a la gente le gusta hacer negocios con la gente, no con las empresas. Si eres bien conocido y te gusta en tus comunidades de clientes, serás el favorito y obtendrás un mejor precio de la confianza que has construido. Y las referencias le darán una ventaja poderosa: pídalas.

"nuestra empresa no tiene el dinero para bajar trabajo" - muchas empresas tienen esto como punto de partida, pero en última instancia, usted tiene que conseguir más allá de este enfoque El tiempo que pasa en este tipo de puestos de trabajo se interpone en el camino de ser exitoso. Necesitas tomar decisiones sobre qué tipo de trabajo quieres hacer (y quiénes serán los clientes) y lo que es igual de importante lo que no haces.

 2
Author: John Mac,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-19 23:23:24

Como consultor, personalmente me he mudado a un modelo de tarifa por hora solo por esta razón. He sido quemado por demasiados contratos descontrolados, y siento tu dolor.

Al final, las personas que solo van con la propuesta de menor precio será un problema para su empresa. Si bien no puede ser tan exigente, de modo que nunca obtenga proyectos, definitivamente desea mantenerse alejado de los contratos cuya administración de soporte es tan agnóstica sobre el proceso real de desarrollo de software que solo miran el precio inicial de algo. Por lo general, son las cosas que no están en el contrato o la especificación las que cambian los márgenes de beneficio y los plazos.

Es a menudo en su mejor interés para ser exigente por adelantado en lugar de bajar los precios con el fin de recibir una ola de lo que terminan siendo problemas-clientes de todos modos. 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 cotizaciones iniciales deben entenderse como estimación general basada en el nivel de claridad de la solicitud de propuestas.

Y definitivamente estoy de acuerdo con kitsune, que si su empresa está aceptando consistentemente contratos que no se ajustan a la experiencia de desarrollo o ancho de banda de su empresa, todo lo que resultará es gastos generales y mala reputación.

 2
Author: Peter Mortensen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-08-01 22:15:06

Esto podría verse como una guía rápida para el 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 debe ser más informal que eso.

Documento presupuestario

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

  2. Agregue una columna para probar, y hágalo un porcentaje del tiempo de desarrollo (20-30% es normal)

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

  4. Establezca una tarifa por día para su empresa. Puede ser más complejo y tener diferentes tarifas para diferentes usuarios funciones, pero como mínimo establecer una tasa que significará que tendrá un buen margen sea cual sea el trabajo que se está realizando.

  5. Calcule cuál es el valor para el total de días que se ha registrado hasta ahora. A continuación, añadir una cantidad de contingencia en la parte superior de esto (para el trabajo de precio fijo) 10-20% es normal aquí, pero puede cambiar en función de la experiencia con el cliente y la cantidad de cambio que está acostumbrado a con ellos.

  6. En este punto se puede descontar el importe total, que es mejor que bajar cualquier otra parte de este documento, ya que mostrará al cliente que no está haciendo que los trabajos vayan más rápido, sino que está eliminando parte de su margen. Por lo tanto, no deben esperar que reduzca el plazo del proyecto.

**Importante: Analice el presupuesto y el negocio de su cliente al desarrollar un costo. No tiene sentido que usted entregue un costo diseñado para una gran empresa a su compañero que quiere una aplicación hecha de manera rentable. Del mismo modo, asegúrese de que cobra correctamente a una organización que se utilizará para las tarifas de freelancer de alta gama.

Piensa como un analista de negocios. No solo le ayudará a hacer feliz al cliente cuando vean sus costos, sino que probablemente le dará una mayor visión de su negocio. Si van a ganar dinero usándote, entonces probablemente estés en un ganador. Si no puede preguntar directamente cuánto dinero tienen que gastar con usted, averíguelo preguntando cuántos clientes tienen tener, lo que cobran, cuántos empleados tienen, etc. Entonces usted debe ser capaz de averiguar si lo que está proponiendo va a ser rentable para ellos.**
  1. Vuelva a su documento de 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. Está ahí como una copia de seguridad, sin embargo, y no sólo escupir un numero.

Cronología del documento

  1. Toma la lista de tareas de diseño y desarrollo del presupuesto y ponla en una nueva hoja (o Proyecto si eres elegante como yo). Ponga en las fechas de inicio y fin de cada sección añadiendo aproximadamente 30-50% extra en la parte superior.

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

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

Etapa de la propuesta completada

  1. Envíe o presente su propuesta a su posible cliente. Esperemos que estén entusiasmados con lo que han propuesto y felices de proceder a la siguiente etapa, la reunión de requisitos completos. En proyectos posteriores con el mismo cliente puede ser capaz de ir directamente a los requisitos.

Etapa de requisitos

  1. Enumere cada requisito con un id separado, ya sea 1,2,4,5 o 1.1,1.2,1.3. Realmente no importa, pero el segundo puede ayudar con listas grandes.

  2. Hay algunas pruebas para los requisitos y puede intentar seguirlos, pero a veces no se aplican (algunos requisitos pueden ser led de diseño, por ejemplo). Algunos de estos son: Es el requisito comprobable, es singular, es claro? Intentaré encontrar una conexión con esto en alguna parte.

 2
Author: Chris Barry,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-08-01 22:20:48

Este es mi punto de vista de desarrollador:

  • Prácticas recomendadas de control de versiones: Mantener el tronco limpio, no confirmar código que no compile, y confirmar con frecuencia
  • integración Continua
  • Pruebas unitarias (con cobertura de código)
  • Despliegue automático en servidores de prueba
  • Embalaje automático de la solicitud
  • Automatice todo lo que pueda:)

También, contratar buenos desarrolladores , y tratarlos bien :)

 1
Author: mathieu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-08-01 22:12:06

Vender precio fijo, trabajo de alcance fijo, no trabajo por hora. Eso mitiga el riesgo de su cliente de un exceso (usted absorbe todo el riesgo, pero lo está haciendo de todos modos), y enmarca el proyecto en términos del valor del software, no de la calidad del esfuerzo que se realiza.

 0
Author: Tim Howland,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2008-10-20 00:56:02

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 todavía 4-5 veces más altos que en la India.

Hasta ahora, el mejor resultado es conseguir dos nuevos clientes, que necesitan una solución similar, para que podamos ofrecer mejores precios y tengamos más confianza en nuestro presupuesto.

POR cierto, me fui whywaitdigital.com, y parece que tenemos un producto que sus clientes podrían necesitar. Hacemos portales-editorial, B2C, catálogos de productos habilitados geográficamente y utilizamos ASP.NET MVC también. Puede encontrar información de contacto en nuestro sitio web, www.socialtalents.com.

 0
Author: st78,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-08-01 22:16:37