¿Cómo te prepararías para el rol de científico de datos (Analytics) en Facebook?

Me entrevisté para el papel de Data Scientist (Analytics) en Facebook e hice entrevistas en el lugar en Menlo Park, pero no terminé recibiendo una oferta.

FWIW, Facebook ofrece a todos sus candidatos guías de estudio antes de la pantalla del teléfono y las entrevistas en el sitio para que puedan minimizar los falsos negativos al menos en lo que respecta a la habilidad técnica y de producto pura.

A diferencia de otros roles de ciencia de datos, la única codificación requerida es SQL. Las otras entrevistas se centran en el sentido del producto y la capacidad matemática. En cierto sentido, esto hace que la entrevista sea “más fácil”, pero en realidad no es fácil encontrar personas con habilidades SQL claras y un fuerte sentido del producto.

Para obtener más detalles, mire las reseñas de entrevistas que la gente deja sobre este papel en Glassdoor: las encontré bastante útiles.

Finalmente … siento que esta publicación de Quora podría ser eliminada por esto, pero aquí está la guía de estudio que Facebook da a sus solicitantes que la hacen en el sitio. De Verdad. No creo que haya información de propiedad aquí, y si ayuda a Facebook a reclutar mejores científicos de datos … ¿por qué no? Echale un vistazo:

Preparación de la entrevista en el sitio:

A continuación encontrará información para ayudarlo a prepararse para su próxima entrevista en el sitio.

Estamos buscando científicos de datos que puedan contar una historia convincente con datos, tomar decisiones basadas en datos e impactar el cambio a través del desarrollo y la optimización del producto. Este papel combina fuertes habilidades analíticas y técnicas con un sentido agudo del producto. Muchas de las preguntas a lo largo de su ciclo de entrevistas estarán en el contexto de los productos de Facebook, y considerar las diferentes métricas que usaría para medir el éxito de los diferentes productos de Facebook será una preparación útil para el ciclo de entrevistas.

Como discutimos por teléfono, se reunirá con 5 científicos de datos diferentes durante 30 minutos cada uno. La estructura de la entrevista es la siguiente:

1 Entrevista – Caso de análisis: Interpretación del producto
1 Entrevista – Caso de análisis: datos aplicados
1 Entrevista – Análisis cuantitativo
1 Entrevista – Análisis técnico
1 Entrevista – Transformación de datos

A continuación encontrará descripciones generales de cada entrevista, conceptos para revisar, ejemplos de preguntas y enlaces y recursos sugeridos.

1 Entrevista – Caso de análisis: Interpretación del producto: esta entrevista es un estudio de caso del producto centrado en la interpretación del comportamiento del usuario utilizando datos y métricas.

Los aspectos de estas preguntas incluyen:

Comprender las hipótesis para lanzar nuevas funciones: “¿Cómo puedo mejorar un producto?”

Considerar y cuantificar las compensaciones de una característica en términos de métricas

Diseñando experimentos para probar estas hipótesis

Interpretar resultados de experimentos

Comunicar la toma de decisiones a través de métricas

Pregunta de muestra: ¿Cómo evaluaría las recomendaciones de video de YouTube?

1 Entrevista – Caso de análisis – Datos aplicados: esta entrevista evalúa la capacidad de enmarcar y resolver un problema utilizando datos.

Los aspectos de estas preguntas incluyen:

Pensando en qué conjuntos de datos son los más adecuados para responder una pregunta de producto

Sacar inferencias de un conjunto de datos

Combinando múltiples señales en una declaración informada por datos

Mapeo de ideas analíticas de nuevo al impacto del producto

Enlaces y recursos sugeridos para entrevistas de análisis de casos:
Productos de Facebook
Noticias de Facebook
Vicepresidente de análisis, Charla de Alex Schultz en Stanford sobre crecimiento en Facebook

1 Entrevista: análisis cuantitativo: esta entrevista está diseñada para evaluar el razonamiento cuantitativo y las estadísticas aplicadas.

Razonamiento cuantitativo: prueba de conocimiento de conceptos matemáticos / probabilísticos / estadísticos relevantes y cómo se relacionan con el producto de Facebook.

Estadística aplicada: problemas extraídos de datos o estimaciones del mundo real.

Los aspectos de estas preguntas incluyen:

Estimación y razonamiento lógico en el contexto de un producto del mundo real.

Elementos de estadística descriptiva (valor medio / esperado, mediana, moda, percentiles,)

Distribuciones comunes tales como distribuciones binomiales o normales.

¿Cómo son los datos del mundo real?

Ley de grandes números, teorema del límite central, regresión lineal

Probabilidades condicionales, incluido el teorema de Bayes

NO se le preguntará lo siguiente:

Conceptos estadísticos / matemáticos avanzados: cálculo o modelos estadísticos / ML avanzados.

Distribuciones más complejas como la exponencial, Weibull, Beta, etc.

Rompecabezas

Problemas de estimación controlados (cuántas pelotas de golf caben en un 747, cuántos afinadores de piano en Nueva York)

Pregunta de muestra: ¿Cómo cree que es la distribución del tiempo que pasa por día en Facebook? ¿Qué métricas usarías para describir esa distribución?

Enlaces y recursos sugeridos:

La página de combinatoria en brilliant.org ofrece muchas preguntas sobre probabilidad y estadísticas. Tenga en cuenta que esta página puede conducir a un agujero de conejo de divertidas pruebas y preguntas de matemáticas. Estamos buscando solo los fundamentos aquí.

1 Entrevista: análisis técnico: esta entrevista evalúa la capacidad de pensar detenidamente sobre los datos y analizar los problemas de productos abiertos con código.

Los aspectos de estas preguntas incluyen:

Estructurar y articular una solución basada en datos cuando se presenta un problema abierto

Codificación de una solución ejecutable basada en el enfoque articulado

Identificar y abordar casos extremos

Adaptar o cambiar código basado en nueva información y / o restricciones

NO se lo evaluará en lo siguiente:

Eficiencia del código (cubierto en la entrevista de Transformación de datos)

La capacidad de codificar en un idioma específico o el sabor de un idioma (por ejemplo, cualquier tipo de SQL es aceptable)

Tenga en cuenta:

La mayoría de las preguntas están diseñadas con SQL en mente, pero debe sentirse libre de ejecutarlas en el idioma que elija. Informe al reclutador su preferencia.

Se le desaconsejará el uso de cualquier función “mágica” conveniente que resuelva trivialmente el problema.

Si bien algunos detalles de sintaxis que se pueden buscar fácilmente en Google pueden ser perdonados, no se acepta el pseudocódigo que le permite pasar por alto los detalles.

Preguntas de muestra:

Dadas las marcas de tiempo de los inicios de sesión, ¿cuántas personas en Facebook estuvieron activas los siete días de la semana en un teléfono móvil?

¿Cómo se determina qué producto en Facebook fue utilizado más por los usuarios no empleados durante el último trimestre? [Se darán los parámetros requeridos].

Enlaces y recursos sugeridos:

“Introducción a las bases de datos” por Jennifer Widom en Coursera

Siempre disponible para que los estudiantes no tengan que esperar a que comience una sesión y a su propio ritmo.

Recomendamos centrarse en los ejercicios, especialmente en las sesiones llamadas ‘SQL’, ‘Índices’, ‘Restricciones y disparadores’, ‘Transacciones’ y ‘Vistas’.

SQLZOO

Ofrece problemas de SQL y un tutorial personalizado

Los problemas que se ofrecen aquí son probablemente los más análogos a lo que se preguntará en la entrevista.

Escuelas W3

Ofrece un tutorial de ritmo lento y amplio alcance

Cubre más temas que SQLZOO pero es menos desafiante

SQL activo

Ofrece ejercicios SQL secuenciados de acuerdo a la complejidad.

1 Entrevista: Transformación de datos: esta entrevista se centra en la mutación de conjuntos de datos en formatos que son útiles para responder preguntas comerciales.

Los aspectos de estas preguntas incluyen:

Transformar y estructurar conjuntos de datos en resúmenes útiles

Utilizando técnicas básicas de lenguaje de datos para llevar a cabo la transformación de datos a gran escala, incluyendo mecanismos simples como filtros, agregaciones, uniones y subconsultas, así como mecanismos más avanzados como funciones de ventana y expresiones de tabla comunes.

Prueba de eficiencia del código:

Seleccionar y / o revisar estructuras de datos para minimizar y / o compensar los requisitos de CPU y almacenamiento

Mejorando un modelo de datos dado y optimizando el esquema

Articulando la lógica y el proceso de pensamiento detrás de tu código

NO se lo evaluará en lo siguiente:

Traducir una pregunta abierta al código (cubierto en la entrevista de Tech Analysis)

La capacidad de codificar en un idioma específico o el sabor de un idioma (por ejemplo, cualquier tipo de SQL es aceptable)

Ejemplo de pregunta: en muchos servicios de redes sociales (es decir, Twitter, Facebook, Quora, etc.), hay una manera para que un usuario siga otra cuenta para escuchar sus actualizaciones de estado. En particular, muchos usuarios siguen a los deportistas. Queremos entender cuántos usuarios siguen a los deportistas.

El esquema: una tabla que enumera todas las cuentas de interés de los deportistas. Segunda tabla que enumera toda la información básica de los usuarios de Instagram. La tercera tabla que registró todo sigue entre las cuentas. (Follower_id y target_id son referencias de user_id).

cuentas_deportivas (
cadena de nombre de usuario, por ejemplo, ‘michaelphelps’, ‘peyton_manning’
cadena sport_category – por ejemplo, ‘NBA’, ‘NFL’
)

dim_all_users (
user_id int,
cadena de nombre de usuario,
cadena de registro_fecha,
active_last_month boolean
)

follow_relations (
follower_id int,
target_id int,
cadena de fecha_siguiente
)

Parte 1: ¿Cuántos usuarios totales siguen las cuentas deportivas?

SELECCIONAR
COUNT (DISTINCT t3.follower_id) AS cnt_all_sports_followers
DE
sport_accounts t1
ÚNETE INTERIOR dim_all_users t2
ON t1.user_name = t2.user_name
UNIR INTERIOR follow_relations t3
ON t2.user_id = t3.target_id;

Parte 2: ¿Cuántos usuarios ACTIVOS siguen cada tipo de deporte?

Maro: para hacer esto un poco más difícil, también incluye 0s; entonces tienen que usar una unión IZQUIERDA correctamente.

SELECCIONAR
t1.sport_category,
COUNT (DISTINCT t4.user_id) AS cnt_sports_category_followers
DE
sport_accounts t1
ÚNETE INTERIOR dim_all_users t2
ON t1.user_name = t2.user_name
UNIR INTERIOR follow_relations t3
ON t2.user_id = t3.target_id
ÚNETE INTERIOR dim_all_users t4
ON t3.follwer_id = t4.user_id
Y t4.active_last_month
AGRUPAR POR
1;

Enlaces y recursos sugeridos:

Preguntas de la entrevista SQL de Jitbit: http://www.jitbit.com/news/181-j…

ProgrammerInterview: http: //www.programmerinterview.c…

Contiene tanto contenido educativo como preguntas prácticas para entrevistas.

Los recursos relacionados con SQL presentados para la entrevista de Tech Analysis también serán útiles para la práctica de la entrevista de Transformación de datos.

O

1 Entrevista: Ingeniería de software técnico: a diferencia de la entrevista de Tech Analysis (que está diseñada para evaluar su capacidad para realizar manipulaciones básicas de conjuntos de datos de muestra), el SWE de tecnología está destinado a profundizar y probar la base de programación técnica de un candidato. Esta entrevista se verá y se sentirá muy similar a una entrevista tradicional de ingeniería de software, y el candidato debe estar preparado para responder preguntas sobre / relacionadas con:

Estructuras de datos básicos y sus operaciones clave.

Tiempo de ejecución vs compensación de memoria (¿puede comparar soluciones para optimizar para uno sobre el otro).

Aprovechando algoritmos comunes y estructuras de datos para resolver eficientemente el problema dado.

Generalmente escriba código limpio.

Pregunta de muestra:

Dadas dos matrices de enteros, escriba un algoritmo que genere una matriz que contenga la unión de estos enteros y una matriz que contenga la intersección de estos enteros.

Dado un gráfico dirigido, verifique si el gráfico contiene un ciclo o no. Su función debe devolver verdadero si el gráfico dado contiene al menos un ciclo, de lo contrario, devolver falso. Por ejemplo, el siguiente gráfico contiene tres ciclos 0-> 2-> 0, 0-> 1-> 2-> 0 y 3-> 3, por lo que su función debe devolver verdadero.

¿Posee las habilidades enumeradas a continuación?

  1. Programación
  1. Programación R
  2. Programación de Python
  3. Hoja de cálculo de Microsoft Excel o Google
  4. HTML, CSS y JavaScript
  • Estadística
    1. Estadísticas descriptivas
    2. Estadística inferencial
    3. Diseño experimental
  • Matemáticas
    1. Álgebra universitaria
    2. Funciones y gráficas
    3. Cálculo multivariable
    4. Álgebra lineal
  • Aprendizaje automático
    1. Aprendizaje supervisado
    2. Aprendizaje sin supervisión
    3. Aprendizaje reforzado
  • Lucha de datos
    1. Pitón
    2. Sistemas de bases de datos
    3. SQL
  • Comunicación y visualización de datos
    1. Codificación Visual
    2. Presentación de datos
    3. Conociendo a tu audiencia
  • Intuición de datos (pensar como un científico de datos)
    1. Gestión de proyectos
    2. Conocimiento de la industria

    Fuente: Lista de verificación de habilidades del analista de datos: guía electrónica gratuita

    La respuesta a la pregunta anterior es NO, entonces este nanodegree analista de datos creado por @Udacity en colaboración con @Facebook (compañía) y @MongoDB. Por favor encuentre el siguiente enlace.

    Analista de datos Nanodegree

    Este podría ser el primer paso en la preparación para el trabajo de científico de datos en Facebook.

    Espero que esto ayude.

    More Interesting

    Como Data Scientist, ¿alguna vez tienes miedo de las decisiones importantes que tomas para una empresa?

    ¿Puede el curso de aprendizaje automático ayudarme a convertirme en científico de datos?

    ¿Cuál es el papel de un científico de datos en robótica?

    Como científico de datos, ¿debería concentrarme en un conocimiento más profundo de Python o Java?

    ¿Cuáles son las posibilidades de que Australia incluya posiciones relacionadas con la ciencia de datos en SOL en un futuro cercano?

    ¿Pueden algunos científicos de datos aquí encontrarnos con el trabajo real y los pros y contras involucrados en los trabajos de proyectos de Big Data y guiarnos con qué cursos, paquetes de pago, etc., elegir?

    ¿Es demasiado tarde para convertirse en un buen científico de datos?

    Cómo convertirse en un científico de datos profesional y totalmente equipado con la ayuda de cursos oficiales como CCNA para redes de computadoras

    ¿Cómo debo cambiar mi carrera de desarrollador de iOS a científico de datos?

    Cómo convertirse en un científico de datos con una licenciatura en CS

    ¿Puede un ingeniero industrial convertirse en científico de datos en India?

    ¿Cuál es una oferta base razonable para un científico de datos que acaba de graduarse de la universidad con una licenciatura?

    ¿Qué habilidades tienen la mayor influencia en el salario del científico de datos?

    Quería ser microbiólogo, con suerte en Cornell. Pero ni siquiera soy tan atractivo. ¿Se enfrenta la materia para convertirse en científico?

    ¿Los científicos de datos trabajan necesariamente con big data?