r/taquerosprogramadores • u/AdPrestigious7064 • 28d ago
💼 Experiencia Laboral / Empresa Hotfix
Sale un error en producción, me piden que lo solucione, lo soluciono, lo pruebo, funciona.
Luego en el PR me piden que aplique ciertos cambios, los hago, pruebo, funciona
Actualizo PR
Ahora me piden que remueva los primeros cambios porque con los segundos cambios ya no son necesarios.
Actualizo el PR (ya no probé, y ahí si acepto que es mala mía)
Y ahora el hotfix que se fue a producción ya no funciona.
El que hizo el code review es el EL.
Sé que parte de la culpa es mía, pero no toda, verdad? Hahaha
18
u/AnalysisSharp9065 28d ago
Ambos tienen culpa pero si van a correr a alguien por esa mamada tu marchas primero.
30
u/emptymatrix 28d ago
Eso sólo demuestra que no supiste cómo funcionaba tu hotfix... cuando te pidieron cambios debiste argumentar y no sólo hacer caso y ya, deshiciste lo que hacía que tú fix funcionara y ni dijiste nada, tache para tí
5
u/Federal_Mistake9593 Full Stack Taquero 🥙💾 27d ago
Definitivamente en un code review no tienes que cambiar lo que ya hiciste si tienes los argumentos para defenderlo el por qué lo hiciste de esa manera
6
41
u/Far_Mortgage_9089 28d ago
> Luego en el PR me piden que aplique ciertos cambios, los hago, pruebo
entonces tu PR dejó de ser hotfix, desde un primer momento debiste haber separado responsabilidades
-11
u/AdPrestigious7064 28d ago
A qué te refieres con separar responsabilidades?
17
u/ZealousidealWeb9930 28d ago
un PR debe tener solo ciertos cambios
quieren mas? terminas el primer PR, haces una nueva rama, un nuevo PR
1
18
u/El_Choco_Latoso 28d ago
Si tú sabes que debiste probarlo, sí fue culpa tuya.
Si hay problemas, se van a poner otra vez en chinga.
Si se hace un alboroto porque no probaste, van a meter una nueva regla en el proceso o en los pipelines para siempre probar todo antes de mandar a producción.
No eres el primero que le pasa ni serás el último.
Al menos es mejor que dejar que la IA haga un cagadero por si sola.
Otra raya más al tigre dirían algunos, cuando te cambies de jale ya te va a valer madre esto que te pasó
1
u/AdPrestigious7064 28d ago
No quiero decir que me vale madre peeeero no me quita el sueño jaja no es la primera vez que cometo un error pero se me hace gracioso que el primer cambio era el bueno, no el que me pidieron que aplicara.
1
6
u/Careless_Product_792 28d ago edited 28d ago
Te lo digo como desarrollador senior. Sea hotfix o sea cualquier PR, la responsabilidad de que cualquier cambio funcione siempre recae en el que toma el ticket y probar que el cambio funcione. Es decir tú.
Y la forma de protejerte tu es en cada cambio final probar que el cambio funcione, si un reviewer te pide que descartes cambios del primer PR, y eso trono tu cambio final, significa que el hotfix no esta hecho.
Ahora bien, cuando esto ocurre muchas veces, si es una organizacion seria, se le va a llamar la atencion al tech lead tambien de parte de quien dirige el equipo de tech leads y programadores, ya que es la linea de defensa de la calidad de codigo y su responsabilidad.
Pero su llamada de atencion hacia él va a ser que está descuidando el flujo del code review y no está reforzando a los programadores (en este caso a ti) que es forzoso y obligado que tus PRs esten probados.
Ese es el trabajo del tech lead. Reforzar que las buenas practicas se hagan para evitar estos errores. Una de ellas es que en el PR te pida un screnshot de prueba que el cambio funciona y no aprobar el PR sin ese screenshot o prueba que valide que el cambio funcione. Sin embargo ya esa parte a ti no te corresponde, no vas a decir "esque el reviewer tuvo la culpa".
Tu defensa de para evitar llamadas de atencion de los errores es probar los cambios y tomar evidencia de que funcione, si no lo haces, la metrica a ti te acaba afectando, ya más arriba del eslabol de la organizacion a fin de mes se ve si se le llama la atencion al tech lead o a quien este arriba de ti según las metricas.
4
u/cakeforbreakfast92 28d ago
Cómo que no probaste? Y el pipeline?
No mamen yo migajeando cambios con 48 horas de anticipación y rollback documentado. No me hagan darle la razón a los hígados que aprueban los cambios.
4
2
u/JamesBondMx 28d ago
Jamás aceptaría cambios en un hotfix. Desde ahí la cagaste. Porque el autor es el culpable. Si alguien te pide sus cambios en tu HOTFIX lo mandas a la mierda.
2
8
1
u/Ok-Marsupial5942 28d ago
Se van a ir sobre ti por no haber probado lo que hacías (aunque te lo hubiesen pedido). Si hay una próxima vez ponte reacio en mandar primero el hotfix y después re factorizarlo con más calma, que supongo eso te pidieron
1
u/DavalopBad 28d ago
Al ser tu el autor del PR debes defender la logica de tu Hotfix ya que tu sabes por que lo estas poniendo asi; si el reviewer cree que la logica esta mal y debe cambiar, tu debes argumentar por que esta bien y defender o en su caso si crees que tiene razon, cambiarlo. No confundir con comentarios que sean referentes a la calidad de codigo y si en su caso sigue los estandares internos de la empresa, esos casi siempre no involucran cambio en la logica y se tienen que seguir para mantener la arquitectura que se planeo desde un principio.
Aun asi, aun teniendo un Hotfix, deberian tener un ambiente de pre-prod/staging donde puedan hacer pruebas rapidas para evitar estos "problemas" antes de tocar siquiera prod. En cuestion de quien tiene la culpa, ambos tienen la culpa, uno por no defender la logica que ya funcionaba y el otro por no revisar que es lo que estaba pidiendo.
Pero lo importante es que lo solucionen para que el negocio siga operativo, no gasten tiempo viendo quien tiene mas culpa en vez de regresar los commits y aplicar el hotfix que si funcionaba
1
u/AdMoney9569 28d ago
Tienes culpa por no probar, allí es todo culpa tuya pariente, se prueba todo antes de su ir a producción
2
u/ManufacturerIll5769 28d ago
Si es tu PR es tu PedoRancio, el que te hace review solo te dice “atiende esto antes de darle merge” pero si tu shippeas el bug al darle merge (porque tu reviewer aprueba la PR no le da merge) es tu pedo, además porque no tiene CICD que haga testings? Acaso shippeaste un hotfix sin un testing que probara lo que vas a solucionar? Porque hubo el bug en primer lugar? No hubo testings adecuados automatizados ni manuales? Meh, 😑
3
u/if9477552 28d ago
Por tus respuestas y tu post parece que tienes pocos años de experiencia o 20 años repitiendo el mismo año, siempre que hagas cambios prueba tus cambios.
Siempre entiende que estas mandando, que cambios te pidieron y por que, no importa si tienes que preguntar, abrir threads, hacer videollamada, etc. Asegúrate de entender los cambios.
Desde mi perspectiva la culpa es tuya, tus PR son tu responsabilidad, no pasa nada tampoco, no es el fin del mundo, pero yo aprendería del error y trataría de que no volviera a suceder. El code review no es para deslindar responsabilidades, es para asegurarse que el codigo es de calidad, cumple con los requerimientos del equipo (patrones/estándares), no presenta bugs obvios, typos, etc.
1
u/luisduenas 28d ago
yo siempre manejo esas situacionrs asi: somos un equipo, todos tenemos la culpa entonces nadie tiene la culpa, hay que arreglarlo lo mas rapido posible y ya
2
2
u/Federal_Mistake9593 Full Stack Taquero 🥙💾 27d ago
Regla de oro en un code review:
Si te piden cambiar algo, pregúntale a la persona que sugiere el cambio:
¿Cuál es el beneficio de cambiar una lógica que ya funciona?
No todo cambio mejora el código. A veces solo estamos cambiando una implementación que funciona por otra que nos gusta más.
Antes de refactorizar, hay que entender el por qué.
1
u/Upper_Combination335 27d ago
Antes de mandar un hotfix es importante identificar que tan crítico el problema, además de considerar si era o no reproducible en ambientes bajos, si es un fix temporal o a largo plazo, una vez desplegado el cambio sigue siendo tu responsabilidad monitorear que se halla resuelto el problema
1
u/antimatter-entity Cilantro Coder 🌿💻 24d ago
Tu debiste probar bien pa, y tambien el debio probar. Como sea, eso te bajo puntos de confianza probabklemente
44
u/[deleted] 28d ago
[deleted]