FizzBuzz 2.0: preguntas pragmáticas para programadores



El año pasado, más de 100,000 programadores completaron el cuestionario Triplebyte. Las estadísticas a continuación muestran que cinco preguntas de opción múltiple distinguen fácilmente a los ingenieros de software reales del resto (las preguntas se seleccionan mediante aprendizaje automático basadas en programadores previamente marcados como "exitosos" y "no exitosos" - aproximadamente por persona).

Como la infame prueba Fizz BuzzHace diez años, estas preguntas son triviales para cualquiera que esté profesionalmente involucrado en el desarrollo de software, pero que generalmente desconcierta a cualquier otra persona. Las siguientes preguntas son las primeras cinco de nuestra prueba, y el 98% de los ingenieros exitosos responden correctamente al menos cuatro de cada cinco. Estoy seguro de que si usted es un ingeniero gerente que realiza una entrevista, no hará una oferta a nadie por debajo de este nivel.

resultados


Antes de ver las preguntas, aquí están los datos sobre el éxito de los ingenieros basados ​​en el número de respuestas correctas:



llamamos a un programador "exitoso" que ha recibido al menos una oferta para trabajar en una empresa que coincida con sus preferencias personales. Estadísticas normalizadas para el grupo 5/5. Juntos, el grupo de ingenieros que respondieron correctamente 4 o 5 preguntas constituyen el 98% de todos los usuarios exitosos de nuestra plataforma. En contraste, 3/5 o menos indica una falla casi segura.

Preguntas


Aquí están las primeras cinco preguntas del cuestionario "universal" más popular. Si realiza una de nuestras pruebas especializadas para ML, Data Science, DevOps, Front-End, iOS o Android, habrá otras preguntas, pero el principio es el mismo.

Pregunta 1


¿Qué instrucción SQL recupera datos de una tabla?

Elija la respuesta correcta:

○ BUSCAR
○ LEER
○ FETCH
○ SELECCIONAR

Esta pregunta básicamente pregunta: "¿Alguna vez has visto una consulta SQL antes?" El 80% respondió correctamente .

Pregunta 2


Agregue la línea de código que falta.



Elija la respuesta correcta:

max_num += num
max_num += 1
num = max_num
max_num = num

Lógica imperativa básica. Respondió correctamente el 76% .

Si le preocupa lo que pedimos en la sintaxis de Python, entonces este es solo un pseudocódigo conveniente para este ejemplo, y cualquier programador puede elegir la respuesta correcta, incluso si nunca ha visto Python.

Pregunta 3


¿Por qué se utiliza el almacenamiento en caché para mejorar el rendimiento de lectura?

Elija la respuesta correcta:

○ Acelera la segunda lectura y las siguientes
○ Acelera las lecturas pares
○ Acelera las lecturas impares
○ Acelera la primera lectura

El almacenamiento en caché surge en tantos contextos que es básicamente un concepto universal de informática e increíblemente práctico en el desarrollo de software cotidiano. El 89% respondió correctamente . ¡Guauu! La pregunta más simple de cinco.

Pregunta 4


¿Cuál de los siguientes se utiliza para mantener una sesión iniciada cuando un usuario ve varias páginas en un sitio web?

Elija la respuesta correcta:

○ Cookies HTTP
○ HTTP keep-alive
○ Objetos Javascript globales
○ WebSockets

"¿Sabes cómo funcionan los sitios?" El 80% respondió correctamente.

Pregunta 5


¿Cuál es el valor de z después de ejecutar el siguiente código?



Elija la respuesta correcta:

'foo'
'baz'
undefined
'bar'

"¿Puedes leer el código?" Presentado aquí en sintaxis de JavaScript, el concepto de un diccionario / hash / matriz / mapa asociativo es familiar para cualquiera que haya trabajado con algo más avanzado que Basic.

Solo el 62% respondió correctamente . Esta es, con mucho, la más difícil de las cinco preguntas. Personalmente, estoy muy sorprendido de que esta pregunta sea más complicada que la pregunta No. 2, pero se obtuvo un resultado estadísticamente significativo (p <0.001). Si tiene alguna idea de por qué estamos perdiendo tanta gente en esto, háganoslo saber.

Datos


De los más de 100,000 ingenieros de software que aprobaron esta prueba el año pasado, aquí está la distribución de los resultados reales del examen: ¡



Sorprendentemente, solo el 42% de los participantes respondieron todas las preguntas correctamente ! El 67% superior respondió correctamente al menos cuatro preguntas (y este 67% representa el 98% de los usuarios exitosos en nuestra plataforma).

El éxito en cada una de las cinco preguntas no es un factor independiente. Si simplemente multiplicas las probabilidades de las preguntas individuales, obtienes el 27%, pero el 42% realmente responde todas las preguntas. Esto es una vez y media más de lo esperado si cada pregunta fuera una variable aleatoria independiente. De hecho, un modelo simple, considerando todos los problemas como independientes, implica un pico de 4/5, así como más peso en una celda de 3/5 de lo que vimos en datos reales:



Califíquese


Si respondió correctamente al menos cuatro de las cinco preguntas anteriores sin ninguna ayuda, ha aprobado FizzBuzz 2.0 y probablemente debería probar la prueba de Triplebyte (si el resultado es 3/5 o inferior, es poco probable que lo ayudemos con algo )

Después de pasar la prueba, verá sus resultados y podrá crear un perfil que permitirá que las compañías de tecnología se comuniquen con usted cuando tengan oportunidades que coincidan con sus preferencias, por ejemplo, "tamaño de la compañía 500+", "solo trabajo remoto", "lugar de trabajo inclusivo" , "Salario mínimo X", "Se admiten mascotas en la oficina", lo que sea. El empleador actual está bloqueado por defecto para ver su perfil.

All Articles