Escuchamos mucho sobre olores de código, olores de prueba e incluso olores de proyectos, pero no he escuchado ninguna discusión sobre "olores" de empleadores fuera de la Prueba de Joel . Después de mucha frustración al trabajar para empleadores con un ramo de olores desagradables de cultura corporativa, creo que es hora de que busque activamente un entorno de desarrollo más maduro.
Comencé a armar una lista de preguntas para ayudar a los empleadores a identificar los problemas durante una entrevista de trabajo, y estoy buscando ideas adicionales. Supongo que esta lista podría ser modificada fácilmente por un empleador para examinar a un empleado también, pero responda desde la perspectiva del entrevistado.
Creo que sería importante hacer muchas de estas preguntas a varias personas para averiguar si se dan respuestas consistentes. En su mayor parte, traté de poner las preguntas en cada sección en el orden en que podrían hacerse. Una respuesta no deseada a una pregunta temprana a menudo hará que los seguimientos sean discutibles.
Valores
- ¿Qué constituye el software "bien escrito"?
- ¿Qué atributos tiene un buen desarrollador? La misma pregunta para el gerente. ¿Quiénes son sus empleados / gerentes más valorados y por qué?
Proceso
- ¿Tienes un proceso de desarrollo?
- ¿Cuán rigurosamente lo sigues?
- ¿Cómo decides cuánto proceso aplicar a cada proyecto?
Describa un ciclo de vida típico del proyecto. Pregunte lo siguiente si no aparecen de otra manera:
- Cascada / iterativo: ¿Cuánto tiempo se dedica a la recopilación de requisitos por adelantado? diseño inicial?
Pruebas
- ¿Quién desarrolla pruebas (desarrolladores o ingenieros de prueba separados)?
- ¿Cuándo se desarrollan?
- ¿Cuándo se ejecutan las pruebas?
- ¿Cuánto tardan en ejecutarse?
- ¿Qué hace una buena prueba?
- ¿Cómo sabes que has probado lo suficiente?
- ¿Qué porcentaje de código se prueba?
revisión
- ¿Cómo es el proceso de revisión?
- ¿Qué porcentaje de código se revisa? ¿Diseño?
- ¿Con qué frecuencia puedo esperar participar como revisor de código / diseño / revisor?
- ¿Cuáles son los criterios aplicados a la revisión y de dónde provienen los criterios?
Mejora
- ¿Qué nuevas herramientas y técnicas ha evaluado o implementado en el último año?
- ¿Qué cursos de capacitación han impartido sus empleados el año pasado? ¿Qué haré durante los primeros seis meses en su empresa?
- ¿Qué cambios en su proceso de desarrollo se han realizado en el último año?
- ¿Cómo mejora y aprende de sus errores como organización? ¿Cuál fue el mayor error de su organización en el último año y cómo se abordó?
- ¿Qué comentarios le has dado a la gerencia últimamente? ¿Fue implementado? Si no, ¿por qué?
- ¿Cómo utiliza su empresa las "mejores prácticas"? ¿Cómo los busca desde afuera o desde adentro, y cómo los comparte entre sí?
Ética
- Hábleme de un problema ético que usted o sus empleados hayan experimentado recientemente y cómo se resolvió.
- ¿Utiliza software de código abierto? ¿Qué contribuciones de código abierto has hecho?
Seguimientos
Me gustó lo que @ jim-leonardo dijo sobre esta pregunta de Stack Overflow :
Realmente es algo que debe preguntarse: "¿Parece que esta persona está tratando de reclutarme y hacer que me interese?" Creo que este es uno de los bits más importantes. Si parecen estar adoptando la actitud de que el único entrevistado eres tú, entonces probablemente te tratarán mal. Los buenos entrevistadores entienden que tienen que vender el puesto tanto como el candidato necesita venderse.
@SethP agregó:
Glassdoor.com es un buen sitio web para investigar posibles empleadores. Contiene información sobre cómo empresas específicas realizan entrevistas ...
fuente
Respuestas:
Mira de cerca el producto que crearás. Trabajo para un buen jefe ético, pero realmente no me gusta la industria en la que estamos. Ojalá hubiera pensado en eso antes de aceptar el puesto. Ahora estoy tratando de hacer la transición, pero la mayoría de las empresas no entienden el nicho lo suficiente como para evaluar mi trabajo.
fuente
No te conformes con las respuestas de una palabra
Es ridículo intentar tomar una decisión informada basada en que el empleador usa "Agile" o "SVN".
Huele
fuente
Infórmese sobre las personas que trabajan allí .
Los procesos son agradables y todo, pero los procesos son implementados y seguidos por (o ignorados) por personas. Si tiene las personas adecuadas, puede ajustar los procesos según sea necesario.
Para cada una de sus preguntas, agregaría meta-preguntas, por ejemplo:
Etcétera.
fuente
Agregaré una advertencia a esto después de varias malas experiencias: muchas compañías lo mentirán o lo engañarán acerca de sus respuestas, especialmente en situaciones en las que no puede verificarlo fácilmente sin mirar su código (lo cual nunca le permitirán hacer).
Por ejemplo, si pregunta sobre el Control de versiones, puede decir que usa Subversion, por lo que cree que está bien que usen SVN. Excepto que no tienen repositorios configurados correctamente, o todos tienen su propio repositorio, o no entienden la ramificación / fusión en absoluto . No puedes verificar ese tipo de cosas.
Lo mismo ocurre con las prácticas de codificación reales. Si les pregunta sobre los estándares de codificación, podrían decirle que siguen, digamos, las "convenciones normales de Java". Al tomar el trabajo, descubres que usan la notación húngara (odio elegir la notación húngara pobre tanto como yo, pero es lo primero que aparece en mi mente todo el tiempo), rehúsa tocar ningún paquete de código abierto fuera de Java en sí mismo, y básicamente escribe código muy mal en comparación con el "estándar" de escritura Java. Una vez más, no puede verificar eso sin decir realmente "Muéstreme su código", que rechazarán.
Claro, puede averiguar si están mintiendo acerca de las pruebas preguntando qué software de prueba de unidad utilizan ("The Visual Studio Debugger" no es una aplicación de prueba de unidad ...) o si no usan el control de versiones en absoluto, pero no sabrás si el código es malo.
En el lado no codificador de las cosas, una vez más, es muy difícil saber qué está embellecido. Pueden decirte una cosa (todos hacen que su compañía parezca increíble en las entrevistas) y aceptar el trabajo resulta ser mentiras completamente diferentes u obvias. Odio decirlo, pero muchas empresas se basan en un enfoque de "humo y espejos" y ese hedor impregna cada rincón del lugar. Como siempre, hay excepciones, pero todavía tengo que encontrar una manera buena y sólida de evaluar el valor de un empleador hasta que realmente tome el trabajo y, si es necesario, me vaya inmediatamente al descubrir que no es bueno.
fuente
Una cosa que SIEMPRE hago es pedir que me muestren las áreas de trabajo / oficina de las empresas (en lugar de las agradables salas de juntas corporativas donde te entrevistan). Esto le da una idea de las condiciones de trabajo, el equipo utilizado, la demografía de sus colegas y el ambiente general del lugar.
... Y sí, aprendí esta lección de la manera difícil :(
NWS.
fuente
Otra cosa en la que pensé: si le preguntas al entrevistador qué le gusta / disgusta del trabajo, ten en cuenta esta advertencia:
La respuesta "buena" es aquella que menciona las partes buenas y malas del trabajo.
Si el entrevistador es vertiginoso y le dice lo increíble que es la compañía y lo excelente que es el trabajo, tenga cuidado, ya que podría significar que el entrevistador es un "Smithers" y es solo un hombre de compañía y un besador de culos: muchas personas, especialmente aquellos complacientes en su trabajo (léase: fueron promovidos debido a la tenencia sin habilidad, por lo que no podrían encontrar trabajo fuera de esta compañía) tienden a "comprar en la línea de la compañía" y nunca podrían ver ningún problema incluso si hay problemas Este no es siempre el caso, pero si obtiene una respuesta que huele a alguien ebrio en Kool-aid corporativo, debe investigar más para asegurarse.
Por otro lado, si el entrevistador comienza a irrumpir en la empresa, es una gran señal de alerta porque, obviamente, no están contentos con su trabajo y, lo que es más importante, no pueden comunicar estas preocupaciones a nadie en la empresa, ya que tienen que hacerlo. desahogarse con alguien que no los criticará por no ser feliz; Una vez más, por experiencia, he visto lugares en los que si los ejecutivos piensan que no estás contento (por razones legítimas o de otro tipo), te despedirán de inmediato, por lo que todo el mundo solo pretende ser feliz todo el tiempo porque no pueden decirle a nadie que no lo hacen. No me gusta X sobre el trabajo o se les mostrará la puerta.
fuente
Movería las revisiones de código a su propia sección o como su propio punto de mejora (no prueba). También preguntaría qué tipo de revisiones hacen: ¿Fomentan la programación de pares (generalmente NO ES UNA OPORTUNIDAD INMEDIATA de mi parte;))? ¿Hacen revisiones antes de cada compromiso? ¿Hacen revisiones grupales trimestrales (esto también podría incluirse en la tutoría)?
Para mí, al evaluar una empresa, hago algunas preguntas específicas, principalmente relacionadas con la prueba de Joel, pero en lugar de concentrarme en ellas ( especialmente con una empresa más pequeña), prefiero concentrarme en la persona con la que estoy hablando y su pasión y empuje. Incluso en grandes empresas, la mayoría de las veces, encontrará características personales y profesionales similares en toda la base de empleados. Por lo tanto, lo más probable es que si la persona que te está entrevistando no está motivada y apasionada por lo que está haciendo, otra tampoco lo estará. Para mi la pasión es mucho es más fácil determinar cómo disfrutaré trabajando para una empresa que revisar una lista de preguntas, incluso por teléfono (recientemente hablé con un CEO de una startup cuya pasión y entusiasmo eran absolutamente contagiosos, así que sé que es posible :)).
La pasión determina una compañía sólida mucho más que una lista de preguntas en blanco y negro. Puede alentar y ayudar a dirigir el cambio en una empresa apasionada con un proceso de desarrollo interrumpido (descubrirá que si aman lo que hacen, siempre están dispuestos a cambiar para mejor). Sin embargo, una empresa (o liderazgo) con falta de pasión pero el mejor proceso del mundo siempre será un lastre para trabajar.
fuente
Glassdoor.com es un buen sitio web para investigar posibles empleadores. Contiene información sobre cómo empresas específicas realizan entrevistas y qué salario puede esperar para ciertos puestos.
Toda su información proviene de miembros de la comunidad, por lo que puede ser un tamaño de muestra pequeño.
A pesar de eso, parece un gran lugar para que las personas discutan sus experiencias de entrevista.
fuente
No has mencionado ninguna pregunta sobre la calidad de vida. Los problemas especialmente frecuentes en las empresas de desarrollo de software son problemas con la programación y el horario, por lo que preguntaría con qué frecuencia vienen las personas cada semana y cuánto tiempo están allí. Aunque trataría de encontrar una forma más sutil de decirlo, para no implicar que no quiero ir a trabajar.
fuente
Solicite reunirse con alguien familiarizado con el proceso automatizado de implementación de software. Si dicen, claro, puedes reunirte con Joe o Mike, entonces está bien. Si son vagos, entonces tienes tu respuesta.
fuente
Además de las preguntas técnicas, también incluiría algunas preguntas relacionadas con los negocios. Como...
1) ¿Cómo va a apoyar su negocio mi empleo?
2) ¿Cuál es el modelo de negocio que utiliza su empresa?
etc.
fuente
Dependiendo de cómo vaya la entrevista y de la relación que haya establecido con su entrevistador, creo que está bien preguntar '¿Por qué no debería trabajar aquí?' después de que todas las personas generalmente no se van debido a los puntos de venta de la compañía, se van debido a los puntos negativos, pero si sabe de antemano cuáles son, puede evaluar si puede tratar con ellos de antemano.
fuente
Algunos han tocado esto, pero no específicamente: pide cosas que odias como si te gustaran. Por ejemplo, si no le gusta la idea de programación emparejada (para tomar un ejemplo de Demian Brecht), pregunte al respecto.
Finalmente. siempre pregunte: "¿Qué es lo más frustrante de su trabajo?"
fuente
Intenta encontrar algunas de las cuentas de Twitter de los empleados. Si ve que mencionan muchas horas extras o largas horas de trabajo, sería aconsejable investigar un poco más o incluso evitar la compañía.
fuente
Siempre recomendaría tratar de averiguar cómo es una empresa antes de decidir si trabajar allí. Hay lugares donde puede encontrarlo, sitios web como http://www.whataretheyreallylike.com , donde los empleados revisan a sus propios empleadores. No pueden contarte todo, pero valen la pena intentarlo, ¿eh?
fuente
Las empresas a menudo contratan las recomendadas por sus empleados. Si se conecta en su propia área geográfica asistiendo a campamentos de código y otras reuniones relacionadas con el desarrollo, puede averiguar por parte de los empleados de otras compañías cuáles son sus condiciones en lo que es más probable que sea una moda honesta que en una entrevista. Entonces sabes a quién postularte. Y también tienes personas que trabajan allí que te recomendarán.
fuente
Asegúrese de asociarse con personas de calidad que están bajo gestión que reconoce que son personas de calidad. Sé que es subjetivo y también lo es tu preferencia por el lugar donde quieres trabajar. Tendrás que determinar qué crees que es importante. Puede tener una larga lista de preguntas, pero probablemente podrá descubrir a las personas por su cuenta. Tendemos a poder oler nuestra propia especie.
Es posible que no estén implementando las mejores prácticas, pero son capaces de hacerlo y están en proceso de mejora. ¿Vas a elegir una empresa que gane en la prueba de Joel por un par de puntos solo para descubrir que todos están en su camino y no desean mejorar? Yo personalmente tendría un problema con eso. Incluso una puntuación perfecta no durará para siempre si no pueden seguir atrayendo a personas de calidad.
fuente