Los entrevistadores me dicen que mis habilidades de programación en C ++ son buenas, pero no lo suficientemente buenas. ¿Qué métricas / herramientas usan los entrevistadores al evaluar el desempeño?

Es la experiencia y la intuición, sí. No hay forma de establecer una métrica sólida para la calidad del software.

He sido rechazado en mi tiempo, y también he recomendado que rechacemos a los candidatos con los que hice un par de ejercicios de programación.

En un caso, el candidato entregó el código de trabajo. Recomendé que rechazáramos esa.

¿Por qué?

Era una combinación de cosas.

Estaba tratando de evaluar si su estilo les permitiría trabajar con el estilo de nuestros equipos, ya que estarían trabajando en nuestra base de código.

Usamos TDD. No escribió ninguna prueba, a pesar de haberlo sugerido.

Usamos OOP. Escribió una sola función, por elección.

Nos encargamos de hacer nombres legibles. Esto tampoco estaba presente.

Colaboramos mucho y nuestra prueba utiliza el emparejamiento. Hizo un par de preguntas, lo cual fue bueno, pero no pensó en voz alta, lo cual fue menos bueno en contexto. Un punto menor; No soy fanático de emparejarme.

Entonces, escribió un código que ‘funcionó’, que no sería adecuado para registrarse en nuestra base de código. Estaba bien para trabajar vale la pena. Bastante marginal.

Como mínimo absoluto, necesitaría aprender a escribir exámenes. Y por experiencia, no hay forma de que lo haga tan rápido, dado que no dividió su código de ninguna manera.

¿Entendería algunos de nuestros patrones y expresiones idiomáticas? No de su código, y no de más preguntas.

Por cierto, esta era una aplicación para desarrolladores senior.

En este punto, pensé ‘tal vez’. Tal vez, con retroalimentación y entrenamiento, podría llegar allí. Lo cual es más nuestra expectativa de desarrolladores junior. Pero tenía dudas.

En este punto, me hizo un favor y comenzó a decirme que estaba molesto por lo fácil que fue la prueba y lo poco que debo haber aprendido de ella. Sintió que no se le había dado la oportunidad de mostrar lo que podía hacer.

Espero que pueda ver que un ojo experimentado no necesita ver mucho de su código para determinar eso.

Entendí que solo estaba tratando de sonar “determinado”, en lugar de arrogante o agresivo, pero me empujó al límite.

Mi informe, además de la hoja de puntaje estándar escrita del observador de la prueba, fue ‘Puede codificar, pero no codificó según nuestro estándar. Parecía sentirse a la defensiva ‘.

El estándar ‘repasarnos a través de su historial de trabajo’, realizado por dos personas separadas, me informó similar: ok, pero realmente no tenía experiencia relevante para nuestro trabajo ‘

Entonces, en general, lo rechazamos. Pensamos que estaría bien en otro lugar, pero la brecha era demasiado grande para nosotros.

¿Tomamos la decisión equivocada? Quién sabe

¿Habría florecido si hubiera tenido una oportunidad? En realidad, tal vez. Pensé que eso era posible.

¿Limitamos nuestro riesgo al descubrirlo? Usted apuesta.

Espero que te ayude a ver el otro lado del escritorio

El error común es que los candidatos no tienen idea de cómo trabajar con punteros. Por ejemplo, se les dieron datos de origen:

const int array [3,5] = {{1, 2, 3, 3, 3}, {4,5,5,6,6}, {7, 7, 8, 8, 8}};

Y tuvo que hacer una operación específica con los datos (compresión de datos muy primitiva). Solo unos pocos sabían que se suponía que debían hacer algo como esto:

función DoSomething (int * sourceData, int sourceDataLength)

{

para (int i = 0; i <15; i ++)

{

DoSomethingWithIt (i);

}

}

DoSomething (array, sizeof (array))

Intentaban trabajar con datos como array [i, j] incluso si no es necesario en absoluto.

Yo diría que el problema más común es que candicate aprende pocas sintaxis de c o c ++ y no conoce ninguna de las prácticas comunes más básicas. Estas prácticas comunes generalmente no están escritas en ningún libro, necesita ver pocos proyectos reales.

Hasta donde yo sé, no existe un estándar para medir las habilidades de programación en C ++, sus entrevistadores juzgaron sus habilidades haciendo sus preguntas, pidiéndole que bosqueje un código, etc.

Por lo general, los entrevistadores no buscan que conozca todos los detalles de un código de C ++, sino que buscan evidencia de que tiene las habilidades de C ++ que alguien de su experiencia debería tener. Debería revisar honestamente su entrevista, qué preguntaron y cómo respondió, ¿por qué no fue adecuado para ellos? (presumiblemente hacen preguntas que son relevantes para el tipo de programación que realizan en sus negocios, por lo que algo indica que no era adecuado).

Hay 3 tipos de conocimiento:

– reconocible

– reproducible

– creativo

La empresa siempre busca un tercer tipo de programador, pero el entrevistador solo puede evaluar primero y parte del segundo tipo de conocimiento del programador.

La decisión final del entrevistador se basa principalmente en su impresión, por lo tanto, no se decepcione.

More Interesting

¿Qué tipo de preguntas de entrevista hace MICA para el programa CCC?

¿Qué tipo de preguntas se hacen en una entrevista en Google para el rol de ingeniero de software, para un candidato con un año de experiencia laboral?

Cómo usar el hash para el problema de la suma de tripletas

Cómo prepararme para limpiar la entrevista para Amazon India como WDE (Ingeniero de desarrollo web)

¿Cómo podemos cubrir un área MxN con un costo mínimo, a partir de un conjunto de mosaicos que tienen diferentes dimensiones y diferentes costos?

¿Cuál es el mejor material de estudio para prepararse para las preguntas de diseño de software en entrevistas técnicas?

¿Cuál es la respuesta perfecta durante una entrevista para saber por qué no lo intentas en otras compañías?

Cómo quejarme de mi compañero de cuarto que está engañando en sus entrevistas telefónicas de Google

¿Cuál es la mejor manera de prepararse para las entrevistas de Google, Amazon, Facebook, Oracle y Microsoft?

¿Cómo podemos implementar intentos usando matrices 2 D?

Además de la búsqueda binaria, ¿hay otros ejemplos de código que tengan un tiempo de ejecución de O (log n)?

¿Qué hace que las entrevistas técnicas de MemSql sean difíciles?

¿Qué tan común es que se le pida que implemente la correspondencia de expresiones regulares en la entrevista?

¿Cómo y cuándo implementas Comparator en Java?

¿Por qué no debo incluir la edad, el estado civil o la nacionalidad en una solicitud para un puesto de trabajo en los Estados Unidos?