¿Cómo es ser ingeniero de producción en Facebook? ¿Cuán diferente es un rol de un rol de ingeniería de software? En términos de compensación, ¿cómo compararías los dos?

Llevo casi 2,5 años en Ingeniería de Producción @FB, así que intentaré agregar algunos detalles, pero Joe Gasperetti ya hizo un trabajo increíble con su respuesta.

Si hay una palabra importante que Joe omitió, diría que es esta: Linux.
Los ingenieros de producción viven y respiran en el mundo de Linux. Puede haber algunas excepciones, pero son, bueno, pocas. Si no disfruta tener que interactuar con el sistema operativo al menos una cantidad moderada, PE puede no ser para usted.

Los ingenieros de producción son muy holísticos en sus talentos e intereses; principalmente los PE son expertos en una combinación saludable de codificación, funcionalidad de Linux / OS y redes. Por lo general, está bien ser más débil en uno si eres bastante fuerte en los otros dos. Personalmente, conozco algunas personas con educación física que son ridículamente buenas en las tres.

Personalmente, les pregunto a los candidatos de la entrevista cómo les gustaría idealmente su tiempo dividido entre codificación / scripting, hacer cosas relacionadas con el sistema operativo y redes.
Los gerentes de educación física intentan, lo mejor que pueden, hacer coincidir el desglose porcentual ideal de un buen candidato con las necesidades del departamento y la empresa. Si le gusta codificar mucho, probablemente podamos acomodarlo. SIN EMBARGO –

¿Podrás pasar el 100% de tu tiempo haciendo desarrollo de software? No, definitivamente no. Escuché que hay algunas posiciones que llegan al 80%, posiblemente más altas para los pasantes. Si no tiene mucho interés en Linux y las redes, sugeriría que PE puede no ser una buena opción para usted. Si promediara todos los Ingenieros de producción en función del% de su tiempo diario dedicado a la programación, apostaría a que cae entre 40% y 60%. (Invito a otros PE a que intervengan si no están de acuerdo).

Sea honesto con su reclutador y con cualquier gerente de educación física sobre sus intereses y la cantidad de tiempo que le gustaría dedicar a la codificación. En particular, su pregunta ‘¿Cuáles son las perspectivas de obtener un rol de ingeniero de software en otra compañía después de dejar este rol en Facebook?’ me preocupa: si su interés es únicamente en el desarrollo de software, debe buscar un rol de ingeniería de software, no un rol de PE. Los ingenieros de producción en promedio son muy buenos programadores; tan bueno o mejor que muchos ingenieros de software a tiempo completo en la mayoría de las empresas de todo el mundo. Tendrá una gran oportunidad para mantener sus habilidades de programación afiladas. Pero la programación simplemente NO PUEDE ser su ÚNICA área de alto interés para tener éxito como PE.

Aunque diré esto. Si la Ingeniería de Producción termina siendo su primer trabajo, tendrá una ventaja sorprendente sobre, literalmente, el 99.99% de la comunidad tecnológica de todo el mundo. Obtendrá una experiencia valiosa y rara, y sus conocimientos se dispararán en muchas áreas a las que los ingenieros de software puro nunca están expuestos. Si tienes un profundo nivel de curiosidad tecnológica, si eres del tipo para jugar, o en algún momento instalaste Linux por diversión y experiencia, si alguna vez te has quedado despierto hasta las 3 de la mañana porque realmente querías imaginar para saber por qué su PC de escritorio se estaba deteniendo, PE definitivamente coincidirá con su personalidad tecnológica.

Simplemente mantenga el diálogo abierto con su reclutador. Y estoy seguro de que hay muchas personas con educación física que estarían felices de hablar con usted sobre el papel: es único, increíble y ha sido la mejor experiencia profesional de mi vida. (Además de todo un honor).

Palabra final: somos muy importantes para la ingeniería de FB: interactuamos con casi cualquier otro grupo / departamento de ingeniería. sobre una base regular. Somos un grupo sorprendentemente social dados nuestros niveles insanos de geekdom; si te gusta interactuar con toneladas de personas nuevas y súper inteligentes todos los días, encajarás perfectamente. Somos una multitud acogedora: harás amigos para toda la vida en educación física.

Buena suerte lo que decidas!

Primero, un descargo de responsabilidad: hice una pasantía como PE el verano pasado y disfruté lo suficiente como para volver después de la graduación. Además, no soy de ninguna manera un portavoz oficial de nada más que mis propias opiniones. Sería bueno si alguien con más experiencia laboral también aportara sus dos centavos. ( Tos , las personas que siguen esta pregunta).

Como disfruté el papel, sería fácil para mí dar un “sí, deberías” sin reservas, pero intentaré darte una respuesta un poco mejor. Esto es lo que hice a diario: vivir con una gran infraestructura. Eso puede sonar un poco trillado, pero PE abarca una variedad de cosas mucho más amplia que un rol tradicional de ingeniería de software. A diferencia de un SWE tradicional, generalmente no es trabajo de un ingeniero de producción tomar listas de características y convertirlas en líneas de código. (Aunque hice un poco de eso este verano, dada mi experiencia en ingeniería de software). Si está buscando la seguridad de las especificaciones o le gusta pasar largas horas juntando bloques de código monolíticos, esto podría no ser lo que está buscando. para. Esto no significa que no esté constantemente escribiendo código. Siempre es el trabajo de un PE pensar en cómo funcionan los sistemas construidos y por construir en, bueno, la producción. Eso significa comprender los aspectos básicos de los servicios que ‘posee’. Cuando algo falla, un PE suele ser la mejor persona en un equipo para entender por qué, incluso si no escribieron el código en primer lugar. Si te gusta hurgar en los sistemas y arreglar cosas sobre la marcha, lo disfrutarás. Si esto suena aterrador, no serás feliz. Si suena aterrador y todavía quieres hacerlo, eres ingeniero de producción.

Si no está sacando características, ¿qué está haciendo?
La necesidad de un rol como PE en Facebook o SRE en Google surge de un problema de operaciones: ¿cómo ejecuta algún software en alguna máquina para proporcionar algún servicio? En la escala de una o unas pocas máquinas, este trabajo implica que un administrador realice una gran cantidad de configuración manual y mantenimiento ejecutando un montón de comandos. En la escala de muchos centros de datos con miles de máquinas que atienden a mil millones de personas, el problema del software operativo se convierte en un rompecabezas interesante por sí mismo. No puede resolverlo de manera fragmentaria que funciona bien en una computadora. Los PE escriben el código que manipula estos sistemas.

Incluso en los pocos meses cortos de mi pasantía, gané una tonelada al ser arrojado a un rollo de educación física. El trabajo es una excelente educación sobre cómo funcionan los servicios de software, y a veces no funcionan, a escala. Solo hay un puñado de lugares en el mundo donde puedes ver que el software funciona a esa magnitud, y Facebook es uno de ellos. En mi opinión personal, la experiencia operativa que puede obtener como PE es una excelente manera para que un SWE más tradicional complete su conjunto de habilidades. Si no sabe ahora cómo operar realmente una pieza real de software en un centro de datos, lo hará en su marca de 6 meses.

Sobre el pago: el salario en FB se basa, por supuesto, en el rendimiento. Se utilizan las mismas escalas en todas las divisiones de ingeniería. Debes hablar con tu reclutador, porque podrán darte una respuesta mucho mejor. (Además, espere que sea honesto. Nunca tuve la sensación de que el reclutamiento de FB diría algo sincero para persuadir a alguien).

Al cometer un error: he tratado de darle una respuesta más indirecta que describe lo que vi hacer a los PE a mi alrededor durante mi tiempo en Facebook. Si te parece interesante, entonces diría que no estás cometiendo un error. Además, es bastante fácil moverse en esta industria tanto dentro de una empresa como FB como fuera de ella. Como cualquier trabajo, este tiene sus altibajos. Algunos podrían decir que el trabajo de operaciones es una decepción. Le digo que si está haciendo demasiado trabajo de operaciones, es hora de que escriba un software para que lo haga por usted.

No esperaba escribir tanto, así que voy a parar ahora.