Mi empleador anterior me pidió que corrigiera un error en el código que escribí para ellos.

Mi empleador anterior quiere que corrija un error en el código que escribí mientras trabajaba para ellos. ¿Debería brindarles asistencia, por contrato (pagado) o de forma gratuita, a pesar de que ya no estoy trabajando para ellos?

Antecedentes: El verano pasado trabajé como pasante para una gran empresa manufacturera. La duración de mi contrato se fijó en 3 meses. Me pagaron una tarifa por hora por mi trabajo. Mis responsabilidades laborales implicaban soporte de TI y desarrollo de software. El proyecto de software en el que trabajé era una aplicación de servidor bastante simple. Trabajé en el proyecto exclusivamente. Inicialmente, el proyecto parecía ser un éxito, el software funcionaba según lo previsto. Antes de que concluyera mi contrato y dejara la empresa, me aseguré de dejar una extensa documentación sobre cómo usar el programa y cómo editar el código fuente en caso de que lo necesitaran.

No firmé un contrato relacionado específicamente con este proyecto de software y cualquier asistencia posterior a la implementación que pueda requerir.

Desde entonces, comencé a trabajar para otra empresa como desarrollador de software a tiempo completo en otro país.

Problema: Recientemente, mi empleador anterior se puso en contacto conmigo (esto es más de un año después de que terminara mi contrato con ellos) y me dijo que hay un pequeño error en el software que escribí anteriormente y que necesitan mi ayuda para solucionar dicho problema. . Como mencioné anteriormente, ahora trabajo a tiempo completo en un país diferente. Esto significa que volver allí en persona está fuera de discusión. Aunque creo que será posible corregir el error de forma remota. Si tuviera que ayudar a solucionar este error, tendría que dedicar mi tiempo libre (tardes/fines de semana) para ayudarlos.

Me conviene corregir este error para poder seguir usando al empleador anterior como referencia para futuros empleos. No quiero que estén en malos términos conmigo.

Pregunta: ¿Debo negociar un nuevo contrato con mi empleador anterior y cobrarles dinero por esta asistencia adicional que les estaría brindando en mi tiempo libre? ¿O debo proporcionar la asistencia de forma gratuita ya que es mi responsabilidad moral, aunque no esté obligado contractualmente a hacerlo?

Actualización importante: mi empleador actual me ha dado permiso para trabajar para el empleador anterior, siempre que se cumplan ciertos criterios:

  • Les proporciono actualizaciones periódicas sobre la progresión y la duración estimada del proyecto.
  • Administro mi tiempo de manera que este trabajo adicional no tenga un impacto negativo en mi trabajo actual para ellos, es decir, no trabajo hasta altas horas de la noche antes de un día laboral.
  • Guardo silencio a nadie más de los trabajos que realizo actualmente para mi empleador actual.
Los comentarios no son para una discusión extensa; esta conversación se ha movido a chat .
¿Cuánto tiempo tomaría arreglar el error?
¿Hay alguna forma en que su empresa actual pueda asumir el proyecto (y su marcado correspondiente) y asignárselo?
Cuando dices que tienes un trabajo como desarrollador de tiempo completo, ¿qué significa tiempo completo? O más específicamente, ¿qué dice su contrato al respecto? Es bastante común que los desarrolladores de tiempo completo queden excluidos por trabajar para otra persona.

Respuestas (18)

Arreglar el error no es su responsabilidad.

debo proporcionar la asistencia de forma gratuita ya que es mi responsabilidad moral

No. No es su responsabilidad moral o legal brindar ayuda gratuita. Ya no eres su empleado.

Me aseguré de dejar documentación extensa sobre cómo usar el programa y cómo editar el código fuente en caso de que lo necesitaran.

¡Bueno! Ya has hecho lo que tienes que hacer para ayudar. Son conscientes del error y tienen los recursos para solucionarlo ellos mismos. Se espera que lo arreglen ellos, no usted.

También hay varias razones importantes por las que no deberías hacer el trabajo gratis:

  • Eres un profesional ahora. Realizar trabajo no remunerado no le beneficia.
  • Actualmente está empleado por una nueva empresa. Realizar trabajo fuera del horario laboral para su antigua empresa puede considerarse un conflicto de intereses o incumplimiento de contrato.
  • Ha pasado al menos un año desde que dejó la antigua empresa y es posible que sus sistemas hayan cambiado. No tiene idea de cuánto tiempo llevará completar esta solución.

¿Cómo debe responder a su solicitud?

La opción A es rechazar cortésmente y dirigirlos a la documentación que dejó atrás.

¿Debo negociar un nuevo contrato con mi empleador anterior y cobrarles dinero por esta asistencia adicional que les estaría brindando en mi tiempo libre?

La opción B es discutir esto con su empleador actual. Tal vez pueda negociar un contrato temporal para ayudar a la antigua empresa, pero primero debe obtener el permiso de su empleador actual. También asegúrese de preguntar cuánto tiempo esperan (la antigua compañía) de usted.

Los comentarios no son para una discusión extensa; esta conversación se ha movido a chat .
Otro punto para agregar a esta (excelente) respuesta: asegúrese de estar configurado para pagar el impuesto correcto sobre cualquier trabajo de contrato ad-hoc que realice. Aquí en el Reino Unido, por ejemplo, los empleadores pagan impuestos sobre su trabajo a tiempo completo a través de PAYE, pero deben presentar cuentas para cualquier contrato. Si lo olvida, puede meterse en problemas con Hacienda.
"pero primero debe obtener el permiso de su empleador actual" explique por qué sería necesario dicho permiso. Que yo sepa, no se requiere tal permiso legal en la mayoría, si no en todos, los países occidentales.
@DavidMulder Muchos empleadores imponen dicho permiso como obligatorio en su contrato
@ nl-x En los EE. UU., dicha cláusula solo es legalmente aplicable para puestos ejecutivos si mi entendimiento es correcto. En la mayoría de las naciones de Europa occidental, al menos para puestos de trabajo normales, dicha cláusula sería inaplicable y, al menos, nunca he visto una cláusula de este tipo (tiendo a verificar los contratos de trabajo de amigos y conocidos con bastante frecuencia). Lo más parecido que se me ocurre es una cláusula de no competencia que probablemente ni siquiera se aplicaría aquí y no se puede hacer cumplir o solo se hace cumplir de forma extremadamente limitada. en la mayoría de los países (desde "tener que pagar compensación" a "máximo 1 año" a "intereses comerciales especiales".
Además del consejo en la respuesta, si OP considera hacer el trabajo, definitivamente considere pagar un seguro. Si rompes su sistema mientras eres su empleado, ellos asumen ese costo, si lo haces como un tercero (ya sea un contratista pagado o haciéndoles un favor), estás legalmente muy expuesto sin seguro. Y "romper su sistema" en este caso se trata más de lo que pueden probar razonablemente en la corte, independientemente de si realmente hizo algo mal, aún puede terminar siendo responsable.
Para el segundo comentario de Delinear, incluya el costo del seguro en el contrato y haga que un abogado lea el contrato (nuevamente, a cargo del empleador). Debe incluir cláusulas que establezcan que no pueden responsabilizarlo por daños al sistema.
@DavidMulder solo porque no lo hayas visto no significa que no sea normal. Como desarrollador en los Países Bajos lo he visto.
@IvoBeckers: tales tonterías no se pueden hacer cumplir en Europa. Ningún contrato puede limitar lo que puedo hacer fuera del horario de trabajo.
@Davor AFAIK, es una cláusula bastante estándar en los Países Bajos que le exige que informe al empleador sobre otros trabajos, proyectos paralelos, etc. De esa manera, un empleador puede determinar si puede estar en conflicto con sus responsabilidades para con su empleador, o si posiblemente podría tener efectos perjudiciales en su disponibilidad o riesgo de lesión/enfermedad. No necesita su permiso (excepto con cosas que entran directamente en conflicto con su empleador, por ejemplo, un proyecto de código abierto que compite con el producto de su empleador), pero pueden sugerirle encarecidamente que detenga las actividades que están en claro conflicto.
@Davor: Esa es una cláusula bastante estándar de los contratos de trabajo a tiempo completo en varios países europeos. Como empleado, incluso cuando no trabaja, tiene la responsabilidad de mantener su rendimiento laboral. Está bien establecido que los trabajadores bien descansados ​​se desempeñan mejor que los trabajadores con exceso de trabajo, estresados ​​o cansados. Si acepta trabajos adicionales más allá de las 35 a 45 horas o lo que se considere a tiempo completo en su país, reduce el tiempo restante para descansar y corre el riesgo de una disminución en el rendimiento laboral que afecta directamente a su empleador (principal).
@Davor & DavidMuller: Por ejemplo, en Alemania, el empleador tiene que permitir un trabajo secundario a menos que pueda demostrar buenas razones en contra. Sin embargo, un empleado que quiera tomar un trabajo adicional debe informar a su empleador. Extremadamente importante desde la perspectiva del empleador: son legalmente responsables de asegurarse de que los empleados no trabajen más de lo permitido, y esto se trata del total de horas de trabajo de todos los tipos de trabajo que realiza el empleado. Además, incluso para el software escrito fuera de tiempo, el empleador puede tener los derechos de autor (§69c UrhG), los valores predeterminados legales para las invenciones de los empleados son similares...
... por lo tanto, es posible que OP ni siquiera pueda vender (o regalar) la solución sin el permiso de su empleador "adecuado". E incluso los empleados que no pertenecen a la gerencia tienen deberes que no compiten entre sí* durante un contrato de trabajo continuo que no es necesario especificar en el contrato. * de grado variable: un conserje de 10 h/semana sí tiene derecho a buscar otros puestos, incluso de conserje. OTOH, un desarrollador de software a tiempo completo no tiene derecho a desarrollar para un competidor o cliente (potencial) como un proyecto paralelo (es decir, sin permiso).
¡¡Esta es una excelente respuesta!!
@cbeleites Eso es incorrecto. §69c UrhG no hace referencia al empleador, solo al titular de los derechos de autor (quien, en este caso particular, es el empleador anterior ). §69b especifica bajo qué circunstancias el empleador es el titular de los derechos de autor; el trabajo fuera del horario laboral no está incluido explícitamente.
+1 para No tiene idea de cuánto tiempo ... Esto puede arrastrar fácilmente a un trabajo de duración indeterminada por numerosas razones: especificaciones poco claras, solicitudes adicionales, etc. El OP necesitaría establecer un buen contrato para todo esto - lejos demasiada molestia
@carcosa Ni siquiera creo que esas cláusulas sean legales dentro de la UE
@KonradRudolph: gracias por detectar el error tipográfico: me refería a §69 b . Desafortunadamente, la ejecución de los deberes no se limita al reloj. Famosa decisión de OLG Köln (6 U 132/04): "Für den Rechtserwerb des Arbeitgebers ist es [...] unerheblich, ob der Arbeitnehmer das Computerprogramm in seiner Freizeit oder während der regulären Arbeitszeit geschaffen hat, sofern feststeht, dass er nur in Erfüllung seiner dienstlichen Aufgaben und Weisungen handelt [...] In diesem Fall ist es nämlich nicht sachgerecht, nach einem Schöpfungsprozess innerhalb oder außerhalb der Freizeit zu fragen."
@cbeleites Correcto, pero esto todavía no se aplica aquí. El término "fuera de horario" en mi uso no se refiere literalmente a la hora, sino más bien a si el trabajo pertenece a los deberes habituales del empleo. Este no es el caso en el escenario bajo consideración y, por lo tanto, el empleador de OP no tiene derechos legales hacia este trabajo.
@KonradRudolph: Pero no sabemos qué tan cerca están esa tarea y el empleador anterior del trabajo actual de OP. Puede muy bien ser el caso de que sean completamente diferentes, pero constelaciones tales como que el empleador actual sea una empresa que vende software personalizado, es decir, el empleador anterior pertenece a su mercado objetivo como cliente o el empleador actual y anterior como competidores podría desencadenar problemas legales de derechos de autor. (así como cuestiones sobre la lealtad al empleador actual) si OP y el empleador actual no lo acuerdan explícitamente. (Y en términos de lugar de trabajo, le aconsejo que se mantenga alejado del gris...
... zona y hacer un acuerdo abierto con el empleador actual. Esa zona gris entre lo que el empleador piensa que es su mercado y negocio y lo que el empleado piensa que es el mercado y el negocio de su empleador puede ser grande en mi experiencia, y ese tipo de problema legal no ayudaría ni al empleador ni al OP, solo lo hará enriquecer a los abogados...)
@DavidMulder Tales cláusulas probablemente no sean legalmente exigibles en muchos lugares de los EE. UU., pero muchos estados de los EE. UU. tienen "derecho a contratar", lo que también significa "derecho a rescindir sin causa". Puede ganar el caso legal en el punto que le preocupa, pero perder su trabajo porque se viste raro (en la opinión de otra persona).

¿Debo negociar un nuevo contrato con mi empleador anterior y cobrarles dinero por esta asistencia adicional que les estaría brindando en mi tiempo libre?

Sí, si te sientes profundamente con él. Estás escribiendo código para que puedan obtener ganancias. Aparte, es muy posible que su empresa actual no le permita trabajar. Consulte con su gerente si puede hacer esto antes de preguntar sobre el contrato. La mayoría de las empresas que he visto tienen cláusulas/reglas con respecto a trabajar para una empresa similar mientras se trabaja allí.

¿O debo proporcionar la asistencia de forma gratuita ya que es mi responsabilidad moral, aunque no estoy obligado por contrato?

No, no creo que tengas la responsabilidad moral de arreglar tu error. Si escribió un software que resolvió el hambre en el mundo, entonces sí, tal vez en ese caso. Sin embargo, dado que estabas ganando dinero y ellos estaban ganando dinero contigo, entonces no hay obligación moral o lo que sea.

Estoy de acuerdo, es la empresa la que tiene la responsabilidad, especialmente cuando decide contratar a un pasante de 3 meses en lugar de crear un trabajo real.
Es 120% responsabilidad de la empresa corregir este error. Si bien tiene la obligación moral de escribir el mejor software que pueda mientras trabaja para una empresa , esa obligación termina tan pronto como deja de trabajar para ellos. Y el código absolutamente siempre tiene errores. El hecho de que haya errores en el software que produjo para su antiguo empleador no significa que haya fallado mientras trabajaba para ellos. Significa que eres un ser humano que dio lo mejor de ti, que es todo lo que se te puede pedir.
@Bilkokuya esto puede depender de lo que dice el contrato y qué legislación se realizó este trabajo. Pero claro, para la mayoría de los contratos y lugares cuerdos, ¡deberías tener razón!

¿Debo negociar un nuevo contrato con mi empleador anterior y cobrarles dinero por esta asistencia adicional que les estaría brindando en mi tiempo libre? ¿O debo proporcionar la asistencia de forma gratuita ya que es mi responsabilidad moral, aunque no estoy obligado por contrato?

No hay obligaciones morales en los negocios.

Te pagaban por hora, no por resultado. Y por lo que describiste, la compañía está buscando tu ayuda desde una posición neutral, no están enojados ni te amenazan.

Lo más probable es que ya hicieron una estimación rápida y creen que pedirle que solucione el error será más rápido, más barato y posiblemente menos probable que introduzca otros errores que contratar a alguien nuevo que no esté familiarizado con el código.

Su petición es absolutamente racional. La persona que escribió el código suele ser la mejor persona para corregir un error. Llegar a usted con una solicitud de ayuda es una solución obvia. Lo más probable es que no se sorprendan si solicita el pago, y lo más probable es que no pierdan el sueño si se niega.

Así que , si lo desea, puede ofrecerles que corrijan el error a una tarifa por hora que considere justificada. Debe detallar todo lo que mencionó anteriormente: que está empleado a tiempo completo, que completaría este trabajo en su tiempo libre (¡importante para una estimación de los plazos!) y que solo puede hacer el trabajo de forma remota.

Y , deberías pedir una compensación por tu tiempo. ¿Por qué harías esto gratis? ¿Por qué asumirías que esperan que lo hagas gratis? ¿Harían algo gratis por ti?

Y eso es todo lo que hay que hacer. Me abstendría de las reflexiones filosóficas de algunas otras respuestas. Por qué encontraron el error ahora, ya sea que leyeron o no su documentación, si ya intentaron solucionar el error con personas internas, todo eso no tiene consecuencias para su pregunta.

No pienses demasiado en las cosas simples.

¡Pulgares arriba por la gran respuesta como esta! ¡Palabra!
Cuando responda, también debe decir que tendrá que pedirle permiso a su empleador. Suponiendo que este no sea un competidor, es muy probable que su empleador esté de acuerdo: he tenido casos en los que un empleador estuvo de acuerdo "si trae pastel para todos el lunes" :-)
@gnasher729 No estoy seguro de por qué deberías tener que alimentar a las personas por el privilegio.
@LightnessRacesinOrbit me recuerda el concepto de pagos Peppercorn. en.wikipedia.org/wiki/Peppercorn_(legal) La empresa está obligada a exigir que una transacción tenga algo en ambos lados de la ecuación para que no cuente legalmente como si le estuvieran haciendo un favor. Aunque probablemente esté muy equivocado.
@ Ruadhan2300 Hmm, tal vez, pero es un poco extraño "pagar al empleador actual para que haga un trabajo externo" en primer lugar. O su contrato lo permite o no lo permite.
Como digo, probablemente estoy completamente equivocado, puede haber sido más irónico por parte del empleador.
Es probable que su contrato tenga una cláusula de "no trabajar para otra persona", pero esas cláusulas son en su mayoría inaplicables y, a menudo, rotundamente ilegales. Sin embargo, es posible que no desee insistir en este punto.
Una excelente respuesta, pero, "No hay obligaciones morales en los negocios", parece ir un poco lejos para mí. Entiendo su significado, pero no es difícil tomar la declaración demasiado literalmente.
@ jpmc26: se entiende literalmente. Realmente no hay obligaciones morales en los negocios. Sin embargo, la existencia humana es más que un negocio.
Estoy bastante en desacuerdo. Todas las obligaciones morales normales se aplican a los negocios. Toda la moral de las promesas y los acuerdos se aplican a los negocios. Si alguien me paga por hacer un trabajo, tengo la obligación moral de hacer ese trabajo, o les estoy robando. Nuestra moral sobre la esclavitud se refiere exclusivamente a los negocios, y se aplica nuestra moral sobre la explotación, el engaño y el engaño. Al excluir la moral, estás diciendo que incluso robar es aceptable siempre que te salgas con la tuya. Realmente no puedes separar la moral de ninguna parte de la vida, ni siquiera de los negocios.
En los negocios, la gente te paga porque hiciste un contrato que especifica qué trabajo se hace por qué pago. Honras el contrato porque se puede hacer cumplir a través de un tribunal. No digo que la moral no se aplique a las personas que hacen negocios. Solo digo que se aplica a la parte de las personas, no a la parte comercial. Pero esa es una discusión filosófica y debería moverse allí.
No estoy de acuerdo con la afirmación de que no existen obligaciones morales en los negocios. Pero este no es uno de ellos. Posiblemente sentiría una obligación moral con un empleador anterior si hubiera sido muy negligente, por ejemplo, no dejarles un registro de la contraseña raíz en un servidor crítico. Pero los errores en el código que ha escrito no son negligencia, no hay culpa por parte de los OP y no hay obligación residual para el empleador.

¿Debo negociar un nuevo contrato con mi empleador anterior y cobrarles dinero por esta asistencia adicional que les estaría brindando en mi tiempo libre? ¿O debo proporcionar la asistencia de forma gratuita ya que es mi responsabilidad moral, aunque no estoy obligado por contrato?

Eso depende de cómo vea su responsabilidad moral, cuánto valore su relación con ellos, cuánto tiempo cree que llevará corregir el error y cuánto valora este tiempo.

Simplemente podría indicar que está demasiado ocupado y, por lo tanto, negarse a ayudar a solucionar el error.

Podría ofrecer echar un vistazo rápido al problema, luego darles una estimación de cuánto tiempo y a qué velocidad se necesitaría para solucionar el problema.

O simplemente puede aceptar participar y ayudar a solucionarlo.

Si fuera yo, y no pensé que ocuparía demasiado de mi tiempo libre, simplemente haría lo último.

De hecho, he ayudado a empleadores anteriores. Muchas veces.

Una vez dejé un puesto de administrador de sistemas. Mi reemplazo terminó eliminando archivos críticos del sistema en una unidad principal y, sin darse cuenta, eliminó su única copia de seguridad en el proceso. Aunque no tuve nada que ver con la causa, trabajé con mi reemplazo toda la noche para reconstruir la unidad del sistema operativo y crear una copia de seguridad viable, luego fui a mi trabajo habitual por la mañana. Recibí una bonita carta de "Gracias" a cambio. Para mí, era lo correcto.

Pasar toda la noche sin pagar es mucho, mucho más de lo que esperaría de alguien. (De hecho, creo que el extremo de la historia daña su respuesta). Pero +1 por la sugerencia de citarles una estimación o arreglarla si es pequeña.
Joe, eres demasiado bueno para tu propio bien. Solía ​​ser así, pero ahora me doy cuenta de que la amabilidad "gratuita" (o demasiada amabilidad) no siempre tiene un impacto positivo en la tierra y, a veces, tiene un efecto negativo.
La amabilidad está bien, siempre y cuando no se dé por sentado o se explote.
@JoeStrazzere aunque estoy de acuerdo en que ser amable es a menudo su propia recompensa, creo que existe una línea en la que ser amable se convierte en sinónimo de ignorar el abuso
Esto se está convirtiendo en una discusión extensa y es probable que se convierta en una sala de chat si continúa. Es justo decir que todos estamos de acuerdo en que ser amable es algo bueno, pero también hay límites en lo que es sensato hacer por otra persona sin recompensa. , y la actitud de la persona que interfiere con su tiempo también importa si está actuando de mala fe, "oh, eso es caro, le preguntaremos a Jim, lo hará gratis si se lo pedimos amablemente", "Puedo No te molestes, haremos que Jim lo haga, no le importará". En última instancia, siempre sea amable, ¡pero no permita que se abuse de su buena naturaleza!
@JoeStrazzere Si un empleado viniera a usted y le dijera "Vaya, jefe, hoy estoy cansado, estuve trabajando en otro trabajo durante la noche", ¿cuál sería su reacción como gerente? Está tomando efectivamente de su empleador actual para dárselo a su empleador anterior. Y eso, aunque sea bien intencionado y "gratis", no está bien.
@JoeStrazzere ¿Pero estabas cansado? ¿Estás diciendo que está bien venir a trabajar muy cansada, siempre y cuando no digas nada? En última instancia, estás dando algo que no es tuyo para dar. Su empleador actual le está pagando para que venga a trabajar renovado y recuperado, y "por la bondad de su corazón" está tomando eso de su empleador actual para dárselo a su empleador anterior.
@JoeStrazzere Tal vez "toda la noche" es una forma de hablar, en cuyo caso no lo he entendido bien. Si realmente hubiera trabajado toda la noche, sin dormir, no hay forma de que pueda decir que fue completamente efectivo al día siguiente. Pero como digo, quizás el término tenga un significado diferente para ti.
@JoeStrazzere Estoy impresionado. De acuerdo con ncbi.nlm.nih.gov/pmc/articles/PMC1739867 , 29 horas de privación de sueño genera un deterioro mayor que el límite de conducción bajo los efectos del alcohol. Pero, genial para ti que pareces haberlo superado bien. Personalmente, no esperaría que alguien viniera a trabajar sin haber dormido nada.

IANAL.

Suponiendo que ayudar a la empresa anterior no constituye un incumplimiento de contrato o un conflicto de intereses según su contrato actual (¡marque esto primero!):

  1. No debe hacer el trabajo gratis. Es de suponer que esta empresa todavía crea software. Es de suponer que tienen desarrolladores en el personal. Presumiblemente, esos desarrolladores tienen más experiencia que algunos pasantes de nivel inferior que trabajaron allí durante 3 meses (no quiere decir que usted sea de nivel inferior ahora, pero usted mismo en ese momento probablemente tenía menos experiencia que su personal de tiempo completo en la actualidad). Pueden pagar a sus empleados para que lo hagan, o usted puede hacerlo por ellos. Lo que esperan hacer es que usted haga el trabajo por menos de lo que tendrían que pagar a sus empleados para que lo hicieran. Lo que esto significa presumiblemente es:

    En primer lugar, su gente no ha mantenido su código en un año. No han leído su documentación, realizado actualizaciones, ajustes, etc. Ese es su problema, no el suyo. "Su" código es en realidad "su" código, y no conocen su propia base de código, por lo que el costo de tener que aprender su propia base de código se tiene en cuenta en su cálculo.

    En segundo lugar y por el contrario, conoces el código. Por lo tanto, debería poder tomar menos tiempo para corregir el error (o eso creen). Por lo tanto, pueden pagarte menos para arreglarlo (porque tiempo = dinero y menos tiempo = menos dinero, o eso creen), o nada si apelan a tu sentido de la responsabilidad.

    Entonces, lo que debe hacer es cotizarles una tarifa exorbitante para arreglar el código. El cálculo que debe seguir es, si espera que le tome X horas arreglarlo y estima que les tomará Y horas aprenderlo, y pagan $ Z / hora a sus empleados (debe tener una idea aproximada de Z si trabajaste allí como pasante, o al menos si conoces el mercado de la zona), debes pedir (X+Y)*Z para arreglar el bug (o ((X+Y)*Z)/ X por hora). Ese es el costo que estima que pagarán a sus propios empleados para corregir el error, y no debe cambiarse a sí mismo.

  2. Debe dejarles en claro que este trabajo se realizará en su horario, no en el de ellos, porque tiene un trabajo de tiempo completo en otro lugar y hará este trabajo para ellos fuera del horario de trabajo. Esto es para establecer expectativas. Deben entender que después de un día completo de trabajo de 9 a 5, no está interesado en trabajar en un trabajo de 5 a 1, y que solo trabajará en él durante un par de horas por día. Necesitan entender esto, porque de lo contrario será un problema para ti.

  3. Debe dejarles en claro que se trata de un acuerdo de una sola vez, y una vez hecho esto, no deben contar con usted para mantener este código para ellos para siempre. Proporcionó documentación (¡buen trabajo!) sobre el código que escribió, y ahí es realmente donde debería terminar su responsabilidad, pero está brindando este servicio con la bondad de su corazón, y no deberían tentar su suerte. Una vez más, poniendo expectativas.

  4. Y esta es la parte más importante, por lo que está en negrita y cursiva: Obtenga esto por escrito. Redactar y firmar un contrato. No hagas que sea él-dijo-ella-dijo, porque así es como te joden de tu trabajo. Probablemente (IANAL) no debería necesitar un abogado para que haga esto por usted; una simple declaración de los términos anteriores (y cualquier otro término que desee) en un correo electrónico, con una respuesta de "reconocimiento" o "confirmación" de ellos debería ser suficiente (IANAL).

Otro punto a mencionar es que esta es una solicitud inusual de un ex empleador. Esto no es normal. El cartel dijo que dejó instrucciones detalladas sobre cómo continuar el desarrollo y que de alguna manera no pueden seguirlas. Huelo problemas aquí. Si el anunciante decide seguir adelante, mi mejor consejo sería organizar el pago por adelantado, o al menos escalonar sus pagos de tal manera que la última facturación no sea por mucho. Suenan como una operación de cinco y diez centavos tratando de obtener algo gratis, y apuesto a que al final intentan evadir el pago.

Es bastante normal que los desarrolladores hagan trabajo independiente. Si desea hacerlo, solo asegúrese de que no haya conflictos, legales o prácticos, entre sus arreglos de trabajo a tiempo completo y a tiempo parcial. Asegúrese de que ambas partes tengan muy claro lo que está y no está de acuerdo en hacer por ellos, incluido el compromiso de tiempo. Investigue la creación de su propia corporación para protegerse. No trabaje sin un contrato justo, debidamente escrito y firmado .

Pero según su descripción, esto no es, en realidad, "un error en su código". Es un error en su código y ya no trabajas para ellos. Si no quiere tomar el nuevo contrato, no tiene que hacerlo. Simple como eso.

Lo más probable es que, en ausencia de dicho contrato, no se le permita corregir, ni siquiera acceder, al código. Y por lo tanto, usted no podría ser responsable de ello.

No diría que es bastante normal tener un trabajo secundario. No es inusual tener pasatiempos relacionados o ayudar a alguien, pero el trabajo secundario es inusual.
La mitad de los desarrolladores senior que conozco han hecho un trabajo paralelo con una startup en algún momento de sus carreras.
@gnasher729 Soy un desarrollador de tiempo completo, y literalmente me arruinaría si no tuviera trabajo adicional. Un solo salario de desarrollador a menudo no es suficiente para sobrevivir en ciudades grandes y caras.

Hay puntos buenos y malos en todas las respuestas aquí, así que estoy recopilando las mejores partes en una sola respuesta.

Arreglar el error no es tu responsabilidad, pero eso no significa que debas negarte. Debe sentirse libre de trabajar en esto si lo desea, después de considerar las siguientes condiciones.

Debe consultar con su empresa actual para asegurarse de que se le permite realizar trabajos externos. Es normal que los desarrolladores hagan trabajo externo, pero también es bastante normal que las empresas lo restrinjan.

No debe realizar un trabajo no remunerado, pero no es necesario que solicite una tarifa exorbitante, solo una que lo compense de manera justa por su trabajo. Generalmente, el trabajo por contrato paga una tarifa más alta que el empleo regular, tal vez hasta el doble.

Debe tener un contrato que especifique el trabajo a realizar, ya sea una tarifa de pago o un precio total del contrato, y un cronograma para el trabajo, según lo negociado entre usted y la empresa. Si elige utilizar un contrato de precio fijo, asegúrese de que la compensación sea lo suficientemente alta como para compensar el riesgo de que pueda llevar muchas más horas de las que espera completar el trabajo. Asegúrate de no comprometerte con un cronograma que te exija trabajar más horas en un día o semana de las que deseas.

No hay razón para que esto deba ser una cosa de una sola vez. Puede continuar manteniendo su código anterior según sea necesario, si así lo desea. Sin embargo, cada instancia debe ser un contrato por separado, sin obligación de aceptar ningún contrato adicional en el futuro.

Un punto importante que no se ha planteado: cuál será su relación con ellos y cómo le pagarán.

Hay dos opciones: lo consideran un empleado (a tiempo parcial, con contrato de duración determinada) o lo consideran un contratista. No pueden simplemente "enviarle dinero".

  • En el primer caso, esto puede ser un poco complejo porque ya no estás en el país, especialmente en lo que respecta a impuestos, contribuciones a la seguridad social, etc. Si no sabes de antemano cuánto tiempo tomará, también puede ser bastante dolor de cabeza para ellos en términos de contrato, a menos que se acuerde una cantidad fija.

  • En el segundo caso, tendría que facturarlos. Pero eso significa estar registrado como comerciante individual (o una empresa), declarar esos ingresos y pagar impuestos y contribuciones sobre esos ingresos. Esto es turno significa:

    • un poco de sobrecarga en términos de tiempo que lleva hacer todo eso. El tiempo que tarda varía mucho de un país a otro. Por lo general, existen regímenes simplificados para situaciones de bajos ingresos como este, pero sigue siendo una carga.

    • dado que usted es quien paga todos los impuestos y contribuciones, debe tener eso en cuenta al decidir cuánto cobrará.

En algunos países, hay empresas que harán la interfaz por usted: le facturarán a la empresa de destino y le pagarán (menos impuestos, contribuciones y su comisión) como empleado. Debe elegir una empresa de este tipo en el país en el que reside actualmente para evitar los problemas mencionados anteriormente.

En todos los casos, verifique su contrato con su empleador actual y cuáles son las reglas en su país de trabajo actual. Es posible que deba notificar o incluso obtener una aprobación formal de su empleador actual antes de poder trabajar para otra persona al mismo tiempo.

@Dan, ¿de dónde sacaste eso? No encontré tal mínimo mencionado en la publicación 17 o las instrucciones para 1040 o el programa C.
@prl Bueno, me alegro de que me hayas llamado por eso. ¡Resulta que estaba equivocado! Los pagos de menos de $600 simplemente no requieren que el empleador presente un 1099-MISC, pero aún debe informar esos ingresos en su declaración. He borrado mi comentario anterior.

¿Debo negociar un nuevo contrato con mi empleador anterior y cobrarles dinero por esta asistencia adicional que les estaría brindando en mi tiempo libre?

Sí, podría (no "debería"), aunque tenga cuidado con las posibles implicaciones fiscales y de conflicto de intereses. Si decide hacerlo o no, depende de usted.

¿O debo proporcionar la asistencia de forma gratuita ya que es mi responsabilidad moral, aunque no estoy obligado por contrato?

No. No tienes una responsabilidad moral aquí. A todos los efectos, es imposible escribir código no trivial que sea perfecto tanto ahora como en el futuro para siempre; si todos tuviéramos que admitir, de forma gratuita, el código que escribimos hace años, para empleadores anteriores, entonces después de algunos años de acumulación de tales "obligaciones", no tendríamos tiempo para hacer nuestros trabajos actuales (por los cuales nos pagan).

Un experimento mental interesante sería: si el código que escribiste hace un año resultó fundamental para que tu antiguo empleador consiguiera un gran contrato con un nuevo cliente, ¿tendría la obligación moral de enviarte una gran bonificación por escribirlo, aunque no lo hayas hecho? ¿Ya no trabajas allí ? ¿Y realmente lo harían? Pocas personas responderían "sí" a cualquiera de las preguntas. Entonces, ¿por qué la expectativa inversa debería venir con tal obligación moral?

Hiciste el trabajo (presumiblemente) lo mejor que pudiste en ese momento, y te pagaron (presumiblemente) un salario justo a cambio. Esa era la relación comercial que tenía con su empleador en ese entonces. Ahora se acabó. Si lo desea, puede decidir entablar otra relación comercial con ese empleador, pero sería una tontería que esa nueva relación implicara trabajar gratis.

Por supuesto que 'puedes' hacer esto. Como han dicho otros, debe consultar con su empleador actual antes de hacer esto.

Yo me haría varias preguntas:

  • ¿Qué pasaría si encuentran otro 'error' en el futuro? ¿Harías lo mismo la próxima vez? ¿El tiempo después de eso?
  • ¿Haría lo mismo por su empleador actual si deja su puesto actual?

A mi me ha pasado algo esto. Yo era el SME (experto en la materia) en varios sistemas cuando me despidieron hace 28 meses. Recibí algunas llamadas meses después de que mi puesto fuera eliminado, varias de los usuarios y el resto de la gente de operaciones (ambos tenían mi celular). Le expliqué amablemente que ya no trabajaba allí (no fue mi elección) y que lo mejor que podían hacer era ponerse en contacto con mi antiguo gerente (responsable de los sistemas). Podría asignar al desarrollador ahora asignado al sistema.

Y no, no tienes una obligación moral con tu antiguo empleador.

Déjame comenzar diciéndote que el título de tu pregunta puede cambiarlo todo. ¿El código es TUYO ? Entiendo que no había firmado un contrato con ese empleador en ese momento, pero creo que es seguro asumir que, como en todo contrato de desarrollador de software, el código no es suyo, sino de su empleador. Claro, usted lo escribió, pero si tuviera un contrato al que volver, encontraría una cláusula que establece que todo el código que escriba para la empresa es propiedad de la empresa, y no de su propiedad.

Si estamos de acuerdo en que es el código de su empleador, entonces las otras respuestas brindan muy buenos consejos, y espero que esta le brinde un poco de perspectiva sobre cómo proceder. Les estaba vendiendo su tiempo y esfuerzo, y cumplió con esa obligación. Es posible que desee venderles su tiempo y esfuerzo nuevamente, si tiene algo de sobra.

Si tiene alguna razón para creer que el código es suyo , debe consultar con un abogado.

Mi regla general es que para un empleador anterior, proporcionaré ayuda trivial/fácil como cortesía, es decir, gratis. Eso es tal vez 5 minutos de trabajo o hablando con alguien.

Después de eso, estoy feliz de operar bajo contrato con ellos, siempre que la ley y mi situación personal lo permitan. (Sin conflicto con mi otro empleo/no competencia, etc., legal para trabajar en ese país, etc.)

En particular, debe pensar en la ley de inmigración y la cuestión de trabajar para ellos. Las leyes de inmigración varían (p. ej., el Reino Unido ni siquiera permite que un extranjero que visite por turismo trabaje a distancia para la empresa de su país de origen, ¡así que no se atreva a consultar ese correo electrónico!), pero a menudo, trabajar es trabajar. Si realizó el trabajo anterior con una visa que ya no tiene, debe revisar la legalidad de trabajar para ellos ahora .

Por último, recuerda el viejo cuento del trabajador especialista.

La poderosa y antigua máquina de forjar estaba caída. No podíamos forjar cigüeñales, y habían llamado al fabricante (no era Ingersoll-Rand) y su mejor gente tampoco podía resolverlo. Algunos de sus veteranos y algunos de los nuestros estuvieron de acuerdo, era hora de llamar a Bill.

Bill era un genio con estas máquinas. Ayudó a diseñar este sistema y se había retirado de la empresa.

Bill caminó arriba y abajo de la gran máquina. Miré aquí, miré allá, olía un poco de aceite. Bill pidió prestado un martillo. ¡PANECILLO EN ESCOCIA! "Pruebalo ahora." La gran máquina cobró vida.

¡Gracias Bill! Sí, envíenos una factura.

La factura volvió, $10,000!!?? Pedimos un desglose. volvió

  • Llamada de reparación en el sitio ----- $ 199
  • Golpear máquina con martillo ---- $1
  • Saber dónde golpearlo ---- $ 9,800

Una vez tuve un antiguo empleador que me hizo esto. Estas son sus opciones básicas:

  1. Hazlo gratis.
  2. Diles que vayan a pescar.
  3. Envíales tu estimación de tiempo y tarifa por hora. Oferta para arreglarlo por un precio.

Esta es una buena manera de ponérselo; no dices que no y estás dispuesto a trabajar con ellos, pero no eres un tonto.

Evitaría (2), que prácticamente quema el puente, y recomendaría (1) o (3).

Si la referencia/relación es muy importante para ti, entonces tal vez hágalo gratis esta vez, pero si le piden otro favor, dígale un tiempo y un costo.

Si trabajas gratis, te pierden el respeto.

Elegí (3). Ellos dijeron no.

De acuerdo, estas son las únicas opciones que veo. Esto es único. No trate de establecer un "contrato" para el futuro. Y mencione un precio que sea lo suficientemente alto como para que valga la pena y para pagar las facturas telefónicas remotas y para pagar cualquier seguro que considere necesario y para no alentarlos a volver otra vez, pero no tan alto como para que sea claramente ridículo. Y esté preparado para que miren su precio y cambien de opinión y traten de arreglarlo sin usted. Ese es su problema, asegúrate de que no sea el tuyo.
Si dijeron que no, entonces probablemente no era un trabajo muy importante después de todo.

No le debes nada a la antigua compañía. Escribió lo que parece ser un código satisfactorio y bien documentado. No estaba obligado a escribir código libre de errores. ¡Eso sería imposible!

Te han pedido que hagas más trabajo para ellos. Su empleador actual está de acuerdo. La única pregunta es cómo cobras por este trabajo.

Obtener una descripción precisa del problema. Estime el número de horas necesarias para arreglarlo. Calcule la escala de tiempo en la que podrá asignar esta cantidad de horas de su tiempo libre. Cotiza una tarifa por hora. Luego tienen la opción de contratarlo para que haga el trabajo o no.

Ni siquiera les respondas. Cualquier cantidad de dinero que pueda cobrarles no vale la pena por los problemas que causará. Están buscando a alguien que haga un trabajo para ellos a quien puedan arreglárselas para no pagar. Dejame decirte como funciona esto. Primero, solo tienen "un pequeño cambio: estoy seguro de que puedes hacerlo en quince minutos". Entonces es "mientras tenemos su atención, ¿podría hacer un cambio más para nosotros? Con sus grandes habilidades, esto no le llevará nada de tiempo". Muy pronto pasará todo su tiempo libre, tardes y fines de semana trabajando para esta empresa en FarAwayLandistan. ¿Y cuándo llega el momento del pago? ......... ( grillos )

Hazte un favor, ahórrate algo de tiempo y molestias, e ignóralos. Si quieren que se haga este trabajo, encontrarán a alguien local para hacerlo.

El OP mencionó que le gustaría seguir usando esta empresa como referencia para trabajos futuros. Esto requiere mantener algún tipo de relación con ellos. Ignorarlos no es compatible con esto.

Me sorprende que ninguna de las respuestas hasta ahora mencione que usted era un "interno".

La realidad es que abusaron de tu presencia como pasante para hacer un trabajo de calidad de producción y ahora te preguntan si sigues apoyando sus operaciones. En pocas palabras: la pasantía ha terminado y no les debes nada. Un interno es un interno, después de todo. Ej. Debiste haber tenido un mentor en ese momento guiándote y familiarizándote con el trabajo que dejaste atrás, y no es tu responsabilidad que no haya sucedido.

Sin embargo, es una buena idea mantenerlo para no quemar ese puente.

Si aún está dispuesto a ayudarlos, trataría de tener una estimación aproximada del tiempo que llevaría hacerlo, o simplemente para estar seguro, díganos que trabaja entre 100 y 200 euros por hora con un mínimo pago inicial de 3-4 horas.

De lo contrario, el dinero no valdrá la pena por la interrupción que crea en su vida profesional y privada.

Como dicen otros, sea también muy consciente de las leyes fiscales locales. Rechacé trabajos/conciertos cortos en el pasado que en el papel se veían muy bien, sin embargo, después de impuestos no valían la pena, por varias razones que no son relevantes para su pregunta.

PD Tenga también en cuenta las leyes de excepción/precedencia. Tenemos una excepción para un par de años que no demanda mucho papeleo, sin embargo si quemamos esa oportunidad con trabajo de un par de cientos de euros, no podemos beneficiarnos de ella si surge otra oportunidad.

No corrige errores de forma gratuita a menos que esté creando/distribuyendo software gratuito.

Hay 2 formas de corregir errores "gratis" en otros casos:

(A) usted es un empleado y reparar sus errores es parte de su trabajo, en cuyo caso el "gratis" en realidad se paga con su salario;

(B) tiene un contrato como proveedor de software con el cliente que establece que durante X meses después de la venta del software corregirá los errores de forma gratuita, en cuyo caso la "gratis" se incluye en el precio inicial que paga el cliente .

Usted estaba en la posición A cuando realizó la entrega, por lo que la posición B no se aplica y ya no se le puede solicitar que corrija errores de forma gratuita como proveedor de software después de que finalice el período de soporte gratuito inicial.

Por lo tanto, el único curso de acción normal es ser como un proveedor en la posición B después de que finaliza el "soporte gratuito" y ofrecer (1) hacer un trabajo único para solucionar el error u (2) ofrecer un contrato de servicio para mantener el software actualizado.

En esta posición, se aplican las advertencias habituales mencionadas en otras respuestas: asegurarse de que su empleador actual esté de acuerdo con eso y ser muy específico sobre lo que le pagan.

Las fallas típicas en este caso son por un precio fijo único que se suscribe para seguir corrigiendo errores eternamente o aceptando corregir errores que en realidad no son suyos (es decir, mantener su código actualizado con cambios en otros programas o requisitos).

Además de los excelentes consejos ya proporcionados por otros, le insto a que tenga en cuenta lo siguiente:

  1. El software, como cualquier otra cosa construida por el hombre, requiere mantenimiento y, por lo tanto, si quieren confiar en él, deben planificar y presupuestar el mantenimiento, independientemente de quién lo realice.
  2. La diferencia de costo entre una prueba de concepto escrita por un pasante y un software de calidad de producción mantenible escrito para realizar aproximadamente la misma tarea puede oscilar entre el 1 % y el 99 %, y suele estar mucho más cerca de este último.

Pensar en el mantenimiento como "solo una pequeña cosa más" no hace que el costo desaparezca, solo les impide planificarlo y presupuestarlo.

Es posible que deba aclararles esto antes de aceptar cualquier trabajo adicional. No lo digas así, por supuesto; eso sería pedante. Pero no entre en ninguna negociación en la que su posición se base en ignorar o malinterpretar esto.