Desarrollo de software - Proyecto, 1 programador - ¿Qué pasa si es golpeado por un autobús?

19

La compañía para la que estoy trabajando actualmente me tiene desarrollando un montón de software interno de misión crítica. Tengo otra persona que trabaja para mí, pero él es más un tipo de prueba y no realmente un desarrollador. La compañía está preocupada por algunos de estos proyectos y qué sucede si un autobús me atropella. ¿Cómo se recupera la empresa después de algo así cuando solo hay una persona que conoce el código base? Una persona que conoce el estado actual del proyecto.

Le expliqué que con mi documentación y con la documentación en el código que realmente solo necesitarían contratar a otro programador que entienda los lenguajes que se usaron y que podrían acelerar rápidamente.

Sugirieron una empresa externa que podría "mantenerse actualizada" mensualmente y que podría "hacerse cargo" en caso de que algo sucediera. Simplemente no veo cómo esto podría ser útil más allá de pagarle a alguien por pagarle. Peor aún, imagino que se desperdicia un día al mes discutiendo el proyecto con esta consultora. Veo cómo esto podría ser útil. Simplemente no lo veo como más útil que contratar a un programador después de mi fallecimiento prematuro.

Pensamientos? ¿Situación similar y cómo se maneja actualmente donde trabaja?

Ominus
fuente
3
Ellos obtienen seguro. Estoy seguro de que vales 1,000,000,000 de muertos para ellos.
Martin York
1
Es curioso que debas mencionar eso. También me están sacando una póliza de seguro.
Ominus
11
@Ominus Por cierto, también comenzaron las lecciones de manejo de autobuses: D
wildpeaks
2
¿Por qué te debe importar? ¿Qué hay para ti? Solo deles una buena documentación. No hay un reemplazo real para usted a menos que contrate a otro programador.
Trabajo
2
Me pagan muy bien, así que no es una cuestión de necesidad de tratar de obtener más dinero de ellos y el otro lado de esta conversación implicó un contrato de trabajo que me ofrece algunas protecciones, por lo que no me preocupa ser reemplazado. Al menos no tener que ver con su deseo de proteger su inversión. --- Actualización, vamos a contratar un segundo programador. Incluso utilicé el enlace a esta pregunta para mostrarles lo que pensaban las personas en el campo sobre cómo abordar sus inquietudes. Este es un sitio increíble.
Ominus

Respuestas:

21

Desafortunadamente, lo que están haciendo es "poner todos sus huevos en una canasta".

Es muy probable que trabajar con una empresa externa les proporcione ingresos, pero dudo mucho que valga la pena. La documentación siempre se ve bien y clara cuando la escribe. El problema es que solo sabes cuánto vale cuando alguien más intenta leerlo, alguien que apenas sabe algo (técnico) sobre el proyecto (dentro del proyecto).

De todos modos, es posible leer una base de código completa de la que no sabes nada, solo puede llevar mucho tiempo (mucho más de lo que la mayoría de las empresas pueden pagar).

Su mejor apuesta honesta es contratar a alguien para que trabaje con usted (estrictamente no bajo ninguna de sus indicaciones) durante un cierto período de tiempo, y probar cuánto tiempo le lleva llegar a un punto en el que pueda comprender y cambiar partes importantes de el proyecto.

Si lleva más tiempo del que podrían permitirse si se fuera, deberían considerar seriamente contratar a uno o más programadores permanentes (a tiempo completo o parcial), y nunca dejarlos tomar el mismo autobús. :)

De cualquier manera, los buenos programadores que se van de repente siempre empeoran las cosas.

Ñame Marcovic
fuente
+1 por dejar que alguien más lea los documentos. La mejor manera de escribir documentación es a menudo respondiendo las preguntas de un usuario o colega, no por su cuenta.
Fred Foo
12

¡Espero que no te atropelle un autobús! Tienes razón, no veo el valor de hacer esto. Primero, la otra compañía cobrará una cantidad más cercana a un desarrollador de tiempo completo y criticará las cosas y lo retrasará. Es posible que le pidan demasiada entrega y explicación. Además, no existe una garantía real de que puedan recogerlos, ya que no habrá posibilidad de que los pruebe antes de que se les solicite que se hagan cargo.

Sugiero que la empresa invierta en otro desarrollador en su lugar. Este desarrollador no tiene que estar en su nivel de experiencia, pero el tiempo que pase con él / ella sería una inversión para el proyecto. Obtendrá varias oportunidades para poner a prueba su comprensión, ya que trabajará con usted.

Asegúrate de no viajar en el mismo auto cuando vayas a almorzar :)

Ninguna posibilidad
fuente
Qué gracioso, nuestras respuestas (publicadas aproximadamente al mismo tiempo) son en parte idénticas, incluso en cuanto al humor. :)
Yam Marcovic
obtener un desarrollador / pasante a tiempo parcial es una forma bastante barata de obtener un tipo de respaldo, definitivamente mejor que tratar de configurar un contratista de una manera que no sea una pérdida inútil de dinero.
Ryathal
@YamMarcovic, ¡tienes razón! ¿Cuáles son las posibilidades hombre?
NoChance
5

Una solución que realmente tendría valor es contratarle un mentor. Este es un servicio que proporciono para empresas de software que son locales para mí. Visito medio día a la semana o un día a la semana. Cada visita proporciona un valor inmediato, como asegurarse de que los desarrolladores estén utilizando las mejores prácticas, enseñándoles cosas nuevas que necesitan aprender, dándoles la oportunidad de exponerse a cosas nuevas, ya que generalmente están ocupados codificando y no van a lanzamientos y como resolver sus errores y obstáculos inmediatos, explicar cosas que no saben cómo hacer, etc. A veces, manejo tareas de codificación, especialmente para casos excepcionales en los que el personal necesitaría aprender mucho para realizar la tarea y nunca más tendría que volver a hacerlo. También puedo proyectar administrar cosas como redactar un Plan de recuperación ante desastres: necesita respuestas de los desarrolladores y la administración,

Es probable que dicho acuerdo sea más barato de lo que sugiere su jefe y tenga valor para usted. Tiene un efecto secundario de que el mentor aprenderá su sistema y probablemente podría entrenar a su reemplazo si fuera golpeado por una lotería .

Kate Gregory
fuente
Término interesante "golpeado por la lotería" :)
NoChance
plan de negocios inteligente (bueno, servicio, no sé qué más haces) de lo que nunca había oído hablar.
psr
@psr de ninguna manera es todo mi plan de negocios (especialmente dada mi ubicación) sino un servicio que ofrezco que ayuda a los clientes. Debe poder pensar en sus pies, conocer muchas tecnologías, aprender rápido y enseñar bien. ¡Lo disfruto!
Kate Gregory
Me alegro de que surgiera el término "golpeado por la lotería": un montón de dinero (lotería, oferta de trabajo, etc.) es mucho más común de lo que la mayoría de las empresas creen, y tan efectivo como el "gran autobús rojo".
mattnz
1

ISO 9001 en este negocio se trata de ser golpeado por un escenario de autobús . ¿Recibir servicios de esa compañía le permitirá a su compañía calificar para esa certificación? Esta puede ser una pregunta interesante para hacerles.

O para hacerlos dar vueltas en círculos en busca de respuesta. (eso probablemente sonará muy similar a "no")

ZJR
fuente
1

Estoy de acuerdo con el OP. Contratar a otro desarrollador es mejor. Si la base de conocimiento está en otra compañía sobre la cual no tienen control, entonces la situación es igual de riesgosa.

Para mí, parece que quieren reemplazarlo con mano de obra off-shore donde las personas pueden sobrevivir con $ 10 por mes.

Lord Tydus
fuente
¿Toda una respuesta cínica? El negocio quiere garantizar la continuidad, no reducir los costos. Si quisiera reemplazar la mano de obra costosa para ahorrar dinero, no contrataría a un consultor externo.
mattnz
+1, justo en. Si el dinero no fue un problema, entonces no tienen razón para no contratar a un desarrollador adicional.
GrandmasterB
@mattnz. ¿Las empresas no quieren reducir costos? ¿Dónde has estado durante los últimos 60 años de negocios con un cambio a mano de obra subcontratada? En palabras del OP, quieren contratar a una empresa externa para "hacerse cargo". Tener la base de conocimientos al aire libre no garantiza la continuidad, pero proporciona más manos por el mismo precio que 1 empleado con impuesto sobre la renta equivalente.
Lord Tydus
1

Necesitan un desarrollador adicional. Es realmente así de simple. Ambos deberían trabajar en toda la base de código. O al menos estar lo suficientemente familiarizados con el trabajo del otro para intervenir para solucionar problemas en una emergencia. Si los presupuestos son ajustados, en teoría podrías incluso contratar un temporizador parcial, eso probablemente sería suficiente. Alguien que podría dedicar algunas horas cada semana a aprender el código realizando tareas de mantenimiento y arreglos. Eso los familiarizaría lo suficiente.

¿Contratando una empresa externa? Estoy con ustedes allí; también podrían tirar ese dinero por el inodoro. El hecho de que estén pensando en contratar a una empresa externa para conocer su sistema me dice que no están realmente preocupados por el escenario del autobús (porque, como se señaló, la solución es obvia) y solo necesitan una razón para lanzar la frase de moda 'golpeado por un bus alrededor mientras juegan golf con sus compañeros gerentes, o ... que están buscando externalizar su trabajo. Después de todo, si una compañía externa puede aprender todo su código base por un precio más bajo que un empleado, en algún momento los de pelo puntiagudo preguntarán ¿por qué lo necesitan?

Gran maestro B
fuente
0

Es más común de lo que piensas que las empresas tengan un plan para si un autobús golpea a algún empleado crítico.

Por lo general, aunque combina el talento clave con alguien interno (a quien no se le permite viajar en los mismos vuelos ... o autobuses) para evitar que las ventajas competitivas y las ideas se filtren fuera de la competencia.

hotpaw2
fuente
0

Primero, la persona que prueba su código no debe trabajar 'debajo' de usted; Es un conflicto de intereses.

En su ausencia, deben evaluar el riesgo de quedarse atrás en las áreas de: depuración y adición de nuevas funciones. Pueden poner a alguien a la velocidad para ser un depurador rápidamente, a menos que haya escrito un código incorrecto. Por lo general, agregar nuevas funciones puede esperar hasta que tenga un nuevo programador listo. No siempre es el caso cuando hay promesas a los clientes existentes o en un mercado en el que está tratando de mantenerse al día con la competencia.

Trabajé en una empresa donde era el único desarrollador. No me reemplazaron con otro programador, sino que cambiaron drásticamente las instrucciones y se conformaron con una aplicación de terceros. Se han tomado decisiones comerciales más extrañas. Esto les impide separarse drásticamente de la competencia y tener una tremenda influencia para hacer crecer su negocio. Tal vez ese ya no era su objetivo?

JeffO
fuente
0

De hecho, hay un término llamado número de bus de proyectos. Si el número de autobús es uno, tiene un gran problema. FEMA en los Estados Unidos está pidiendo a las compañías que estén mejor preparadas para los desastres.

No es solo la pérdida de un desarrollador clave. Es el impacto de un desastre natural o la falta de copias de seguridad fuera del sitio. Hay muchas preguntas en este sitio que preguntan si necesitan usar el control de fuente como desarrollador en solitario. La capacidad de un nuevo desarrollador de obtener la versión más reciente del software y ver qué partes son nuevas les ayudará.

Hay más información sobre PS-Prep en http://www.fema.gov/privatesector/preparedness y http://readyrating.org/ .

mhoran_psprep
fuente
0

Conozco tu dolor La compañía para la que trabajo tiene más de 20 desarrolladores, y todos tienen su conocimiento.

Los bits superpuestos son realmente ... bits, así que si alguien desaparece (vacaciones, enfermedad, etc.) y algo le sucede a las herramientas que están administrando, estás jodido.

El problema es que conocen la situación y no les importa mucho, tal vez todavía no se han golpeado la cara.

Albireo
fuente
0

Me gusta la cita que dice algo así como "Los cementerios están llenos de personas que antes se consideraban indispensables". Dicho esto, su empresa tiene el deber de minimizar los riesgos, actualmente se lo percibe como uno. He estado allí en ocasiones, es mejor no solo no resistir, sino hacer un esfuerzo adicional. No entrene a una compañía externa, recomiende la mejor compañía de la ciudad, es decir, en la que tenga más confianza. También considere que si está haciendo un trabajo mejor que cualquier otra persona, por definición, es insustituible.

Rolyh
fuente