Los profesionales de TI son expertos de confianza con los activos de TI de una empresa u organización. Como profesionales confiables, tenemos responsabilidades que se extienden más allá de las cosas que se espera que un cliente que no sea de TI entienda o tenga en cuenta. Entonces, creo que la relación adecuada entre un profesional de TI y sus clientes internos / externos es más parecida a la de un médico y un paciente que un servidor y un maestro. Estoy en lo cierto?
Aquí hay una analogía para pensar. Un paciente insiste en que su pierna necesita ser amputada. Su médico no está de acuerdo, pero el paciente no puede ser persuadido. ¿Debe el médico amputar la pierna solo para satisfacer al paciente?
Otra analogía Un cliente quiere que un ingeniero civil construya un puente hacia un diseño inseguro. Incluso cuando el ingeniero explica que no es seguro, el cliente no le cree. ¿Debería el ingeniero construir el puente de todos modos?
Creo que la respuesta correcta en ambas analogías es NO. Se supone que el profesional médico y el profesional de ingeniería deben estar en una posición de confianza y deben ejercer su propio criterio, incluso ante la desaprobación del paciente / cliente. ¿No debería aplicarse lo mismo a los profesionales de TI cuando el profesional de TI está calificado para tomar la decisión pero su cliente no?
Respuestas:
Es un poco más complicado que en tus ejemplos. Esto se debe a que, en muchos casos, el desarrollador de software es un experto en asuntos relacionados con TI (es decir, programación, diseño de bases de datos, etc.), pero el cliente comercial es un experto en el dominio del problema. En tales casos, la relación adecuada es la de dos expertos en diferentes campos que trabajan juntos para crear una buena solución.
De todos modos, como cualquier buen artesano, el desarrollador de software está obligado a advertir al cliente cuando el cliente quiere cosas inapropiadas. Si le pide a su pintor y decorador que empapele el baño, también está obligado a advertirle que esto no funcionará bien. Pero cuando el cliente insiste obstinadamente en su mala idea, está bien que firme un formulario de "se le ha advertido explícitamente" e implemente lo que quiere (siempre y cuando no exista riesgo para la salud, riesgo legal, etc.).
fuente
Tanto en el médico como en el ingeniero, el profesional es un consultor que se niega a realizar un servicio. En una tienda de TI, no lo eres.
Somos empleados, no consultores, así que estamos sujetos a la regla de oro: el que nos da las reglas de oro. Los programadores que ignoran eso son arrogantes y tontos. He escuchado innumerables quejas sobre eso por parte de empresarios que están hartos del personal de TI que no explicarán sus decisiones a nadie fuera de su sacerdocio insular y que rechazan las solicitudes que todos los que están fuera de su organización consideran perfectamente razonables. He visto a gerentes de TI despedidos por ese tipo de cosas.
Como empleado, su equivalente a un consultor que se niega a prestar un servicio está cubierto por una cita de Napoleón Bonaparte:
Tienes que elegir tus batallas. ¿Es lo que le han pedido que haga tan atroz y poco ético que preferiría renunciar? De lo contrario, explique el problema a las partes interesadas y negocie algo razonable, o simplemente hágalo.
Y no vayas a hacer cosas en las que no has comprado nada. Las personas que hacen eso se llaman "cañones sueltos".
Por cierto, renuncié a un trabajo porque mataron un proyecto y pensé que era un movimiento realmente estúpido. Un par de meses después de que me fui, llegaron a un acuerdo conmigo y me pidieron que volviera como contratista para hacer el proyecto, pero ya estaba comprometido en otro lugar.
fuente
Los médicos hacen un juramento de "no hacer daño" y están legalmente obligados a poner primero el mejor interés del paciente . Un médico que realizara una operación innecesaria y dañina (incluso si el paciente lo exigiera) se abriría a un juicio por negligencia y podría perder su licencia.
Del mismo modo, un ingeniero civil, responsable de un proyecto de construcción, tiene la obligación legal de garantizar que cumple con todos los códigos de construcción aplicables. Al igual que con el médico, un ingeniero que hace lo que se sugiere en la pregunta, probablemente enfrentaría acciones legales.
Esto es muy diferente de la situación de un desarrollador de software al que se le pide que haga algo que sabe que no es práctico. No hay ramificaciones legales para asumir un proyecto, incluso si sabe que es esencialmente una pérdida de dinero.
Dicho esto, un desarrollador de software siempre debe brindar su mejor consejo en cualquier proyecto. Sin embargo, si las personas que pagan las facturas no están dispuestas a escuchar e insisten en un curso de acción imprudente, el desarrollador no tiene la obligación moral o legal de negarse.
fuente
En mi opinión, ¡SÍ!
Si va a tener una larga relación con su cliente.
fuente
Mi sugerencia en esta situación será advertir al cliente por comunicación escrita y conservar una copia de la misma (correo electrónico, aceptar cualquier cosa). Si el cliente lo insiste, continúe y hágalo (esto a veces se conoce como desacuerdo y compromiso). Solo asegúrate de que si sucede algo malo, puedas defenderte adecuadamente.
fuente
La diferencia clave es la licencia. Los médicos y los ingenieros civiles tienen licencias profesionales, y los necesitan para realizar su trabajo y ganarse la vida, y también tienen la responsabilidad personal legal de más cosas.
Esto puede ejercer más presión sobre los médicos e ingenieros, cuando se los empuja a hacer algo que puede causarles riesgos personales y profesionales, pero les da más empuje, ya que pueden argumentar que no pueden hacer algo debido a la ética profesional, y que perderán sus licencias si lo hacen. Una amenaza de despedir a un ingeniero civil por negarse a firmar un plan pierde fuerza cuando la consecuencia de la firma es que el ingeniero perderá su licencia y no podrá trabajar en el campo de todos modos.
Esto está relacionado con los requisitos legales. No puedo recetar muchas drogas, y si le hago ciertas cosas a alguien que un médico puede hacer legalmente, estaría cometiendo un delito. De manera similar, la mayoría de los gobiernos de aquí no permitirán que una compañía construya un puente sin un ingeniero civil con licencia que apruebe el diseño.
Ha habido propuestas para otorgar licencias a los programadores, pero ninguna que conozco ha ido a ninguna parte. Probablemente sea necesario tener un requisito legal para tener programadores con licencia para trabajar en proyectos primero, y eso no sucederá pronto. Hay organizaciones profesionales con códigos de ética comparables a los códigos médicos o de ingeniería, pero sin ninguna fuerza legal son más como guías de códigos de ética personales.
fuente
No estoy pensando en la dimensión ética, pero la relación adecuada con la base de clientes / usuarios puede ser bastante variable dependiendo del tipo de mercado. Donde trabajo, tenemos un producto altamente técnico y usuarios altamente técnicos, y el ingreso promedio por cliente es bastante alto. Por lo tanto, nuestros límites comerciales son un poco confusos: tenemos clientes y revendedores de valor agregado que actúan como consultores, que ayudan en la verificación del código e incluso pueden enviar módulos para su inclusión en el software. Si estuviéramos vendiendo una aplicación de mercado masivo, este modelo no tendría ningún sentido.
fuente