¿Cómo cambiar efectivamente la mentalidad de un jefe sobre las opciones tecnológicas cuando seré yo quien construya un proyecto?

Puede pasar directamente a la Conclusión si no desea leer los Antecedentes y los Detalles del problema.

Nota: Trabajo de forma remota, lo que presenta sus propios desafíos para la comunicación.


Antecedentes rápidos:

Trabajo para una pequeña empresa (<10 personas) que tiene algunos proyectos internos misceláneos de FileMaker que han estado dando vueltas durante una década más o menos. La mayor parte de lo que tienen o hacen se basa en opciones y prácticas tecnológicas congeladas a mediados o finales de la década de 2000 (lo que en sí mismo no es algo terrible). Trabajo con clientes para crear, arreglar o cambiar sus aplicaciones C# o asp.net. Vengo de un lugar donde pude encontrar y resolver problemas a nivel organizacional con herramientas y software que yo y mi equipo crearíamos, con un control creativo y arquitectónico casi completo. Lo que ha llevado a que el "desarrollo basado en ventas" sea una existencia bastante aburrida y desmotivadora. Realmente no puedo flexibilizar mi conocimiento de desarrollo o hacer un trabajo muy satisfactorio.

Mi jefe (CEO) (Llamémosle Fred) ha expresado un gran interés en que use mi experiencia para construir una API REST para ingerir datos y análisis de redes sociales, y para vender el acceso a esos datos. También he expresado interés en esto, mencionando específicamente que necesito un proyecto con control creativo para poder hacer lo que mejor hago y tener cierta satisfacción laboral. Fred ha aceptado con entusiasmo que esto es algo que debemos hacer.

Sobre Fred:

Durante el tiempo que trabajé aquí, sé que Fred es muy obstinado en usar herramientas y marcos con los que está familiarizado. Incluso si son muy viejos y cuestan mucho tiempo. Hasta el punto de que Fred cree que una herramienta favorita puede hacer cualquier cosa, incluso si sus límites prácticos son muy claros. Esto incluye apegarse a viejas suposiciones e ideas sobre cómo manejar los datos del usuario, la seguridad y cómo y dónde almacenar y administrar su código (es decir, sin control de fuente, sin certificados HTTPS, sin validación de correo electrónico, credenciales de usuario en texto sin formato, cuentas de administrador con contraseñas de 123, solo necesitamos FTP para todo...etc)

Detalles del problema

Durante la última semana, Fred me hizo usar FileMaker, lo cual ha sido una experiencia dura y frustrante, por decir lo menos. Tengo dificultades para usar tales herramientas, ya que elimina casi todo el control de desarrollo y faltan innumerables "características" que podrían implementarse simplemente con casi cualquier marco web y RDBMS. He mencionado que esta herramienta es excelente en algunas cosas, pero pobre en otras, pero Fred cree que puede hacer cualquier cosa con FileMaker, sin importar la complejidad o el alcance.

Confesé que no sé por qué estamos haciendo estos ejercicios de FileMaker, y resulta que Fred ya está decidido a que cree toda la API web, el procesamiento de datos y la ingesta de datos en FileMaker. Lo cual, para mí, como desarrollador full-stack, suena como una idea terrible. Existen numerosos requisitos para un sistema de este tipo que FileMaker no puede proporcionar y, como RDBMS, no está a la altura de la tarea de manejar tablas con potencialmente miles de millones de filas. Sin mencionar que la creación y administración de una API REST no es algo que la herramienta admita.

He expresado estas preocupaciones, pero la respuesta que recibo es que "FileMaker puede hacer eso".


Conclusión

El CEO quiere que lo convierta en una API REST para ingerir cantidades masivas de datos de redes sociales y proporcionar formas para que los clientes que pagan utilicen esta API para sus propias necesidades. Este es un proyecto bastante complejo, multifacético y grande. Y es algo que me ha estado dando ganas de hacer. Sin embargo, él insiste en que lo haga con FileMaker, a pesar de mi experiencia en el desarrollo completo de muchas variantes. Mi solución propuesta es usar Asp.Net Core y un RDBMS como MS-SQL, MySQL/MariaDB o PostgresSQL. Como estas son herramientas en las que puedo desarrollarme rápidamente, y otros en la oficina conocen C #, incluido el director ejecutivo. Me siento cómodo usando casi cualquier otro lenguaje principal y marco web para hacer el trabajo. Simplemente no FileMaker.

Me preocupa especialmente que no haya tenido participación en el proceso de toma de decisiones (viabilidad, opciones de tecnología o requisitos). Cuando seré yo el que cree esta aplicación.

Preguntas

  • ¿Cómo participo en el proceso de toma de decisiones que Fred parece estar haciendo solo?
    • ¿Hay alguna forma profesional de darle una pista de que está tomando decisiones sobre conocimientos y suposiciones incompletos o desactualizados?
  • ¿Qué puedo hacer para convencerlo de que esto probablemente paralizará el proyecto? Tanto desde el punto de vista tecnológico como desde el punto de vista de la motivación del desarrollador.
  • ¿Cómo comunico de manera efectiva que esta herramienta no proporcionará las características o la flexibilidad que necesito para hacer realidad este proyecto?
  • ¿Cómo comunico de manera profesional y cortés que no tengo ningún interés en invertir en FileMaker? Como no es una habilidad que encuentro útil en mis proyectos personales o es una habilidad que será transferible a otros trabajos/empresas que me interesen.

No creo que vaya a hacer un buen trabajo aquí tampoco. Como mi motivación e impulso por el proyecto casi se han evaporado en las circunstancias actuales.

Votante negativo, ¿le importaría explicarlo?
¡Guau! ¿Todavía existe FileMaker? Dudo que consiga muchas personas con buenos conocimientos de FM si gana la lotería.
¿Por qué trabajas allí? No veo ninguna razón para quedarme, así que debo estar perdiendo algo. Si estuviera trabajando para alguien así, encontraría otro trabajo.
@DavidThornley Porque es una molestia cambiar de trabajo, y si he aprendido algo es que la hierba rara vez es más verde del otro lado. Y estoy trabajando en mi propio producto personal que facilita el horario flexible aquí. Aunque se me ha pasado por la cabeza que podría querer empezar a buscar otro tipo de ropa, busco y aplico periódicamente.
Gracias por dejar en claro que "jefe" = CEO, por lo que convencer al jefe de los jefes no es una opción.
@ gnasher729 correcto! Estoy buscando métodos o información sobre cómo podría influir en el jefe/director ejecutivo para que cambie de opinión o al menos abra su punto de vista para ver que su elección en tecnología no está a la altura de la tarea. O cómo puedo participar en el progreso de la toma de decisiones que él está haciendo por su cuenta.
¿Estás dispuesto a arriesgar tu trabajo por esto? Cuando hayas aclarado eso, las opciones que se te abren son mucho más claras.

Respuestas (4)

Nota: no conozco FileMaker, pero asumiré que todas sus afirmaciones son correctas.

Si desea que consideren alternativas, todo depende de cómo las presente.

  • FileMaker puede ser capaz de hacerlo, pero ¿lo hará bien ? ¿Va a crear una aplicación competitiva en el mercado con un rendimiento aceptable para 2019?
  • ¿Hay alguna opción alternativa con la que pueda hacer el mismo trabajo en mucho menos tiempo?
  • Si su oficina le permite realizar investigaciones o si desea hacerlo en su tiempo libre, tal vez cree una demostración simple sobre puntos de referencia de rendimiento para tablas con millones o miles de millones de filas y demuéstrele a su jefe que FileMaker se dobla bajo grandes cargas.
  • ¿Hay alguna preocupación con respecto a la mantenibilidad de la aplicación en una etapa posterior?

Personalmente, descubrí que el enfoque de "demostración simple" tiende a funcionar bien en casos como este. Tiendo a ejecutar algunas pruebas y convertir los resultados en métricas tangibles para gerentes no técnicos (principalmente tiempo o dinero, según el tema). El objetivo aquí es resaltar las diferencias entre el enfoque elegido y el preferido, y hacer que las diferencias sean fácilmente digeribles.

Por ejemplo, me enfrenté a un gerente que quería evitar la refactorización como la peste. Un problema consistía en enviar 5Kb de datos innecesarios en cada carga de página. Así que hice los cálculos. Realicé un seguimiento de las cargas de página durante dos semanas, lo multipliqué por 26 (para llegar a un año), lo multipliqué por 15 kb y lo multipliqué por el costo del ancho de banda (esta era una aplicación de Azure). Eso sería un costo por año . El costo de refactorizar el problema, incluso para mi (relativamente caro) salario de contratista, fue <20 % del costo anual del ancho de banda.
Y esta aplicación estaría alojada durante al menos 10 años. Ver las diferencias de precio convenció de inmediato a mi gerente de escuchar la sugerencia que estaba haciendo. ¿Técnicamente hice su trabajo por él? Seguro. Pero ahora está haciendo análisis de costos similares por sí mismo, algo que no hacía antes. Solo lo ayudé en el camino.

Aunque no puedo decir que este sea definitivamente el caso, apegarse a las tecnologías más antiguas a menudo proviene de un miedo a las incógnitas más nuevas. Al crear un resumen de información digerible de las diferencias, reduce el umbral para alejarse de FileMaker.

Al final, es la elección de tu jefe y no puedes cambiar eso. Si deciden que se utilizará FileMaker, entonces se utilizará FileMaker. Todo lo que puede hacer es trabajar en el proyecto de la manera en que se le indicó que lo hiciera. O renunciar.


Sin embargo, si surgen problemas significativos que no puede resolver fácilmente, hable con su jefe. Definitivamente decidió usar FileMaker, por lo que puede conocer formas de solucionar este problema. Para citar al tío Ben:

Con un gran poder viene una gran responsabilidad

Si su jefe fuerza una decisión en particular, entonces asume inherentemente la responsabilidad de las consecuencias de esa decisión que tomó. Los malos jefes evitarán las consecuencias de sus decisiones y empujarán los problemas a otra persona, pero un buen jefe realmente ayudará a abordar cualquier problema que surja de la decisión que forzaron.

Incluso si no puede o no quiere ayudar, está destacando problemas difíciles de resolver con FileMaker que tal vez no ocurrirían con otras bibliotecas o herramientas, lo que puede influir en su opinión para el próximo proyecto.

Gracias Flatler. Aprecio el esfuerzo que pones en esto. Estoy de acuerdo en que un enfoque de demostración puede funcionar bien. Este individuo es muy capaz técnicamente, y en un momento se desarrolló a sí mismo (incluso enseña en una universidad, sobre diseño de software de todas las cosas). Un resumen de cambios bien pensado y fácil de leer probablemente funcionará bien junto con algunos ejemplos y métricas. Definitivamente tendré esto en cuenta cuando planifique mi enfoque.

Dices que harás el proyecto, pero no en FileMaker.

Pero antes de comenzar la discusión, prepárese. Asegúrese de poder explicar por qué hacer esto en FileMaker es una muy mala idea. Enfatice el punto de que usted fue contratado por su experiencia. eres el experto.

Y mientras lo hace, elimine las horribles prácticas relacionadas con la seguridad que mencionó.

Por supuesto, esto puede tensar su relación con el director ejecutivo y, según las leyes locales, hacer que lo despidan. Pero si eso sucede, no deberías querer trabajar allí de todos modos.

Realmente no puedo flexibilizar mi conocimiento de desarrollo o hacer un trabajo muy satisfactorio.

Durante el tiempo que trabajé aquí, sé que Fred es muy obstinado en usar herramientas y marcos con los que está familiarizado.

No creo que vaya a hacer un buen trabajo aquí tampoco. Como mi motivación e impulso por el proyecto casi se han evaporado en las circunstancias actuales.

El director ejecutivo quiere que use FileMaker para una aplicación para la que no fue diseñado. No quieres.

Ya ha intentado convencer al director ejecutivo de que no tiene ningún sentido utilizar FileMaker, utilizando argumentos razonables. Sin embargo, el CEO dice que solo "FileMaker puede hacer eso". Como escribiste, sigue siendo "obstinado en apegarse y usar herramientas y marcos con los que está familiarizado".

Por lo tanto, ha decidido, según sus propias palabras, que no hará un buen trabajo, no está motivado y no tiene impulso.

Si todo eso es cierto, parece que es hora de encontrar un nuevo trabajo; uno que no requerirá que uses FileMaker de esta manera, supongo.

Por supuesto, las cosas tienen más matices de lo que intentas reducir. Hago un buen trabajo, estoy motivado y tengo un exceso de motivación. Solo que no para este elemento específico, y sé que estar desmotivado como desarrollador a menudo conduce a un trabajo deficiente. Esa es la realidad de las cosas. En lugar de tirar la toalla, estoy tratando de resolver esto y estoy buscando consejos, y proporcioné todo el contexto que pude sin ser demasiado detallado. No creo que find a new jobcuando las cosas se ponen feas sea una actitud saludable para llevar.
@DouglasGaskell Hay momentos en los que tienes que usar esa ruta. Personalmente, he hecho mucho con FileMaker. Es una pequeña plataforma fantástica, pero cuando golpeas su techo, lo golpeas fuerte y no se mueve. El alcance que describe el cartel excede claramente las capacidades de FileMaker. No querría que se adjuntara mi nombre, por lo que alguien intentó meter una palanca/MacGuyver en él como este proyecto.
@WesleyLong Gracias. Estoy de acuerdo en que siempre llega un punto en el que ese es el camino a seguir. Sin embargo, creo que todavía hay algunos métodos que podría usar para influir en esta persona. Espero obtener información de otras personas que han estado en situaciones similares, para poder saber cómo seguir adelante mientras permanezca en esta empresa.
Creo que esta respuesta simplifica demasiado la situación. Si bien hay un lugar para seguir una orden directa; también hay un lugar para el discurso significativo y respetuoso. OP está intentando lo último y su respuesta sugiere implícitamente que la primera es la única opción. Usted está argumentando efectivamente que ningún empleado debería hacer una sugerencia significativa y, en cambio, debería simplemente renunciar.
Además, la intención de OP de influir en el gerente no es una señal de falta de impulso o motivación. Es todo lo contrario, OP está impulsado a mejorar el trabajo. Los trabajadores desmotivados tienden a dejar de agitar el barco o cuestionar las cosas, y simplemente continúan con su día.
@Flater Alguien debe haber pirateado su cuenta. Nunca había visto una respuesta tan troll.
@Flater Creo que Joe está tomando en cuenta la declaración del OP de "mi motivación y mi impulso por el proyecto casi se han evaporado"
@Flater y él no está "argumentando que ningún empleado debería hacer una sugerencia significativa" porque el OP ya ha hecho tales sugerencias, existe la posibilidad de darse cuenta cuando está azotando a un caballo muerto
@motosubatsu: la pregunta de OP deja abierta si comunicó/apoyó correctamente el motivo del cambio. Particularmente, no seguiría ciegamente una sugerencia cuando no está respaldada por alguna forma de argumentación tópica. Hay un punto de flagelar a un caballo muerto, pero esta respuesta omite esa parte y sugiere que la única opción es renunciar, según "El director ejecutivo quiere que use FileMaker. Usted no quiere".

Debe preguntarle a su jefe por qué eligió el creador de archivos sobre todas las otras tecnologías que sugirió. Claramente no estás entendiendo algo muy importante.