¿Qué es 'FizzBuzz' para los administradores del sistema? [cerrado]

12

FizzBuzz es una prueba simple de capacidad de programación, a menudo utilizada por los empleadores para eliminar a las personas que realmente no pueden programar. ¿Existe una prueba equivalente para administradores de sistemas y personal de TI en general?

Aclaración Estoy buscando cosas que puedan probarse en una entrevista con cierta precisión. Obviamente, esto no va a determinar claramente a la persona adecuada, al igual que FizzBuzz no lo hace para los programadores. Solo estoy buscando eliminar a las personas que piensan que pueden trabajar como administrador de sistemas / persona de TI porque pueden navegar por la web.

baudtack
fuente
Si puede recibir su correo electrónico, probablemente esté seguro.
The Unix Janitor
1
@ user37899: ¿no quiere decir que si él o ella puede recibir su correo electrónico, probablemente esté seguro?
Bart Silverstrim
Entonces ... ¿Deberíamos contratar a alguien fuera de la calle y si aún podemos recibir nuestro correo electrónico, claramente contratamos al tipo correcto?
Baudtack
Bueno, para alguien que está haciendo una buena cantidad de secuencias de comandos, FizzBuzz tampoco es malo para los administradores.
Kyle Brandt
2
¿No debería ser esto Wiki de la comunidad? ¿Hay una respuesta a esta pregunta?
Richard Holloway

Respuestas:

11

No creo que se les ocurra una prueba única como esta para los administradores porque la definición de administrador (para los propósitos de este sitio) es demasiado amplia. La prueba FizzBuzz se puede implementar en cualquier lenguaje de programación, por lo que no importa si está contratando un desarrollador de PHP o alguien que esté haciendo C.

En el aspecto administrativo, podría estar contratando un administrador de red, administrador de almacenamiento, administrador de servidor (más dividido en Windows, Linux, * nix, mainframe), administradores / soporte de escritorio, servicio técnico o incluso administradores de aplicaciones específicas (Exchange, Lotus, SAP , etc.)

Claro, un área que podría tocar es TCP / IP y CIDR ya que la comunicación de red es una habilidad fundamental de la mayoría de las posiciones, pero incluso eso puede no ser necesario para las pociones de nivel de entrada (a diferencia de FizzBuzz para desarrolladores).

Personalmente, prefiero usar escenarios abiertos para ver el proceso de resolución de problemas de un solicitante y qué tan bien pueden analizar una nueva situación. Una extensión aún mejor de eso es que el solicitante trabaje directamente con un cliente interno en un problema real. No solo puede ver lo anterior en acción, sino también ver su actitud de servicio al cliente.

Doug Luxem
fuente
+1 buenos puntos. La entrevista y la metodología deben tomarse en el contexto del puesto solicitado.
John Gardeniers
2
+1 De mí también. Sysadmin es una descripción de trabajo extraordinariamente amplia. Si necesita un administrador de Unix, haga que compilen un paquete o instalen algunos parches. Si necesita un administrador de Windows, haga que agreguen una computadora al dominio o configure DNS o DHCP. Si está buscando un chico de escritorio, hágales preguntas estúpidas hasta que una persona normal reaccione.
Satanicpuppy
A partir de la descripción, el fizzbuzz para administradores sería una prueba del proceso de solución de problemas, ¿no? Creo que es algo que todas esas subcategorías tienen en común.
Bart Silverstrim
@Satanicpuppy ... la pregunta es, ¿la gente normal solicita un trabajo de soporte de escritorio?
Bart Silverstrim
1
@Bart Silverstrim Todas las cosas son lo mejor en este mejor de todos los mundos posibles.
Satanicpuppy
7

Creo que encontrarás que FizzBuzz es raramente utilizado y solo por entrevistadores muy pobres con un conocimiento mínimo de los principios de programación. Cualquier método de prueba común como ese es completamente derrotado porque las soluciones son ampliamente publicitadas y memorizadas por cualquiera que incluso se considere calificado para una entrevista. Cualquier prueba de este tipo para un administrador de sistemas sería igualmente inútil.

Las preguntas estandarizadas de los exámenes son y siempre han sido inútiles. No menos en una entrevista de trabajo que tener las mismas preguntas cada año en un examen escolar. Trabajan solo una vez.

Lo que necesita es que el entrevistador sea experto y tenga la capacidad de "leer" a las personas. Hay más que aprender sobre cómo un candidato responde preguntas que sobre las respuestas en sí. No hay atajos. Al menos ninguno de ningún valor.

John Gardeniers
fuente
3
Obviamente, FizzBuzz no eliminará a todas las personas que no puedan programar. No se supone que lo haga. Se supone que elimina a aquellos que piensan que la programación suena como un trabajo divertido pero que nunca han escrito una línea de código. Va a ser bastante obvio si alguien está regurgitando algo que lee en línea sin entenderlo. Principalmente estaba usando FizzBuzz como ejemplo, sin sugerir que cualquiera que lo pasara pudiera programar.
baudtack
2
No puedo decir lo suficiente qué tan correcta es esta respuesta.
Jim B
2
Debo estar en desacuerdo. Le he dado a FizzBuzz como una pregunta de programación de entrevistas a muchos candidatos, y con frecuencia me sorprende la cantidad de candidatos que lo superan o fracasan directamente. Cualquiera que no pueda pasar FizzBuzz es rechazado rápidamente. Los que pasan FizzBuzz se someten a una evaluación más rigurosa. FizzBuzz es una excelente herramienta para eliminar a algunos programadores incompetentes.
abelenky
2
FizzBuzz no se trata de programar. No se trata de ser un programador competente. Se trata de un proceso de pensamiento. Los administradores de sistemas también necesitan esa calidad, descubriendo cómo resolver un problema. Básicamente, Fizzbuzz se trata de encontrar un algoritmo / solución para algunas matemáticas relativamente simples y traducirlo a un formato solicitado (ya que los blogs que leí al respecto dijeron que incluso ponerlo en pseudocódigo era demasiado difícil para muchos candidatos). Se podría argumentar que FizzBuzz es aplicable a cualquier trabajo que requiera un pensamiento metódico y lógico. Simplemente no es el único calificador, que de todos modos no era :-)
Bart Silverstrim
1
@John Gardeniers: estoy de acuerdo. Estoy decepcionado de que estos candidatos lleguen a la etapa de entrevista. Pero el hecho es que las personas mienten en currículums, los reclutadores tergiversan a sus candidatos y el personal de recursos humanos sin conocimientos técnicos a menudo organiza entrevistas. A los programadores como a mí les corresponde tratar de mantener un estándar mínimo para los candidatos y empleados.
abelenky
4

Todavía encuentro que el viejo "¿cómo elimino de forma segura y portátil un archivo llamado 'dash-eff-arr' (-fr)?" ser un predictor razonablemente bueno de qué tan bien le irá a alguien para preguntas más avanzadas. Lo recomiendo habitualmente como una pregunta de detección.

Las personas que se tambalean con sugerencias sobre problemas, citas y escapes son, en mi opinión, potencialmente peligrosas en la raíz de un sistema de producción. Aquellos que sugieren alegremente rm -- -frson solo marginalmente mejores. Aquellos que demuestran una comprensión real de cómo el shell analiza una línea de comando ... acerca de la diferencia entre lo que el shell analiza y lo que rmrecibe un comando (como ) en su vector de argumento, generalmente tienen una buena comprensión de otros materiales de administración de sistemas como bien.

Una pregunta mucho más interesante e involucrada:

Given a tape backup, a boot/root or rescue disc of your choice, and
a system with a freshly replace, blank, hard drive ... how would you get
that system back into production?  What other information do you need
before you can proceed?

(Yo por lo general proporcionar una específica tarde comandos y una fecha que la etiqueta en el caso de la cinta; e imprimir con el fdisk -ly df -kde salida, y por lo general les permita cambiar el tara cualquier similares cpio, afioo incluso paxde comandos; los detalles del archivo La utilidad no es el foco de mi pregunta).

Esta pregunta no es adecuada para la evaluación ... el entrevistador debe tener una comprensión sólida de la respuesta y debe poder marcar unos diez pasos en el proceso. Estoy muy indulgente de los problemas de secuencia de menor importancia, sobre todo si las capturas que respondieron ellos --- por ejemplo, darse cuenta de que él o ella habrían tenido que ejecutar fdiskantes de que la serie de mkfsy mountcomandos.

Yo diría que esto es, en espíritu, el más cercano a un escenario fizzbuzz.

Otro favorito:

You have just been given responsibility for a departmental server running Linux.
The former admin has been "hit by a bus" and no one knows the root password for
this system.  How do you proceed?

Este pretende ser un diálogo. En esencia, quiero que demuestren una comprensión de cómo iniciar un sistema en modo de usuario único y forzar un cambio de contraseña y cómo iniciar desde un disco de rescate y realizar la misma tarea. (Por lo tanto, revelo, por turnos, que el sistema está configurado con suloginy que hay una contraseña de gestor de arranque (GRUB o LILO) para evitar una tarea fácil init=/bin/sh). Esa es la parte puramente técnica de la respuesta deseada.

Sin embargo, generalmente también me interesan las consideraciones más amplias que deberían plantear. ¿Preguntan si alguien tiene sudoacceso suficiente para la tarea? ¿Cómo anticipan la organización de la interrupción del servicio? ¿Preguntan sobre la posibilidad de que el administrador anterior fuera hostil o que el sistema pudiera haber sido comprometido? ¿Ofrecen voluntariamente algunas opiniones o hacen sugerencias sobre cómo las contraseñas deben ser depositadas por la gerencia?

Jim Dennis
fuente
3
La recuperación de contraseña no tiene valor como prueba de administrador. Realmente tiene que plantear un problema que ningún niño de la escuela con acceso a Internet no pueda resolver fácilmente. Además de lo cual, una demostración de técnicas de piratería de ninguna manera indica que el candidato tiene habilidades administrativas valiosas.
John Gardeniers
@John Gardeniers: La recuperación de contraseña no es realmente una "demostración de piratería". Pero cambiemos esta crítica y preguntemos: ¿considerarían a alguien que NO sabía cómo forzar un cambio de contraseña del sistema como un administrador de sistemas UNIX / Linux verdaderamente calificado? Tenga en cuenta que el proceso de forzar un cambio de contraseña de root es casi idéntico al que se usaría para solucionar una variedad de problemas de configuración de arranque (particularmente cuando se usa un disco de rescate o arranque de red).
Jim Dennis
3
Soy realmente un administrador de Windows, así que no puedo comentar demasiado sobre los principios a los que se refiere, solo que alguna vez he necesitado recuperar contraseñas en Windows y Mac, pero definitivamente contrataría a alguien que no sepa cómo recuperarlas. - siempre que esté satisfecho de que sepan aprender a hacerlo si es necesario. ESA es la habilidad única que quiero más que cualquier otra cosa, la capacidad de encontrar las respuestas.
John Gardeniers
1
Teniendo en cuenta la cantidad de trabajo de administrador de sistemas con el que me he encontrado proviene de tener que investigar en línea y "conectarme en red" con otros administradores ... Cuestiono cualquier cosa que juzgue a los posibles administradores con curiosidades sobre el terreno, especialmente porque las técnicas cambian con el tiempo (fsck a conducir con un "toque" de un nombre de archivo particular en el arranque funciona para Ubuntu ... pero para todos los sistemas Linux? ¿Qué pasa con el arranque desde un disco y verificarlo allí? ¿O las diferencias en el manejo del sistema de archivos montado en las versiones de Linux? Una gran cantidad de la solución de problemas consiste en encontrar respuestas en lugar de conocerlas, parece.)
Bart Silverstrim
@ John y Bart: los principios básicos de cómo "rescatar" un sistema Linux han sido consistentes en su historia. Algunos detalles han cambiado por buenas razones. Muchos de ellos también se aplican a otras formas de UNIX (en sistemas muy antiguos cargó un entorno "mini-root" fuera de la instalación del sistema o la cinta IPL; similar a la ejecución desde un disco RAM en la actualidad). Si estuviera entrevistando para un puesto de nivel de entrada o pasantía, estaría encantado de proporcionarle una computadora portátil / navegador y hacer que busque las respuestas allí mismo. (Normalmente solo se me pide que dé entrevistas técnicas para candidatos muy importantes).
Jim Dennis
3

No se me ocurre nada formalmente utilizable, pero aquí hay algunos consejos generales más.

Pregúnteles sobre las copias de seguridad. Si no dicen algo como "el propósito de la copia de seguridad es restaurar", no los quiere.

Debes tener una idea de cómo reaccionan cuando el Sr. Sh-t conoce al Sr. Fan y decide tener una relación hermosa. Fingir una situación de emergencia durante la entrevista y ver si se ocupan al menos de manera sensata o corren en círculos como si estuvieran en llamas.

Necesitas eliminar a los evangelistas tecnológicos. Nunca es bueno tener a estas personas a bordo, ya que siempre querrán usar su tecnología favorita, independientemente de si es adecuada o no. Algunas preguntas principales deberían llevarte allí.

También debe eliminar los tipos de "torre de marfil". Un administrador de sistemas siempre debe estar preparado para arremangarse y ensuciarse las manos donde sea necesario. Esa situación de emergencia falsa podría ayudar aquí.

Maximus Minimus
fuente
2

Pídales que expliquen lo que significa 10.13.216.41/18. La respuesta no tiene que ser bastante como se detalla como éste, pero cualquier SysAdmin debe ser capaz de explicar direcciones, redes, máscaras.

Ward - Restablece a Monica
fuente
OMI cualquiera que use una computadora debería, pero eso no va a suceder en el corto plazo
PostMan
2
@PostMan: Comprender CIDR es mucho más que necesario para el usuario promedio de computadoras.
brent
@PostMan: es como decir que cualquier persona que vuela en un avión debe comprender los algoritmos de control del tráfico aéreo para dirigir los aterrizajes. Los administradores de sistemas existen porque las herramientas que los ignorantes no pueden utilizar terminan en la basura.
sh-beta
2

Pídales que presenten un árbol de solución de problemas para SSL. La mayoría de los nuevos sistemas informáticos actuales dependen de servidores web, y SSL depende de una serie de tecnologías. Comience con "Un usuario se queja de que el sitio web dice que el certificado de seguridad no es válido" y pídales que empiecen a enumerar las cosas que deben buscar.

Lo que quieres buscar son tres cosas:

  • recopilación de información, que culmina en la reproducción del problema
  • Procedimiento experimental; cambiar una cosa y solo una cosa y comparar resultados
  • comprensión de los mecanismos de seguridad SSL y las tecnologías subyacentes; DNS, configuración del servidor web e incluso configuración del navegador

Puntos de bonificación si realmente puede obtener una descripción vaga inicial del problema desde su rastreador de problemas existente. Encontrar la causa raíz de un problema puede ser difícil; como dice Torvalds :

Alguien encuentra el problema y alguien más lo entiende. Y dejaré constancia diciendo que encontrarlo es el mayor desafío.

jldugger
fuente
No di el voto negativo (odio cuando las personas votan negativamente pero no dejo una razón para que las respuestas puedan mejorarse) ... pero acabamos de recibir un informe de usuario que no podían acceder a la página de inicio. La tecnología va en el sitio. La computadora no se prendía. "Página de inicio" significaba pantalla de inicio de sesión, aparentemente.
Bart Silverstrim
Buen punto. Aclararé un poco la última oración.
jldugger
1

Habiendo entrevistado a algunas personas para roles en nuestro lugar durante los últimos años, diría que un cuestionario técnico que involucra algunas preguntas similares a MCP funciona bastante bien para un examen en papel. El resto (como el enfoque y la resolución de problemas) se descubren mejor a través de una entrevista individual y una discusión técnica.

¡He preparado algunos cuestionarios para las personas que parecían estar en la pelota y tienen todos los trozos de papel correctos solo para que la recepcionista llorara al tomar el examen! Entonces, aunque los certificados son un buen indicador, no puedes confiar en ellos.

usuario32285
fuente
1

Un administrador del sistema debería poder darle instrucciones detalladas paso a paso para configurar la red en al menos un sistema operativo común, y debería poder hacerlo sin ver ni tocar una computadora.


@Ben, darles una computadora derrota el punto de la prueba. Creo que la configuración de la red es una habilidad muy básica que cada administrador de sistemas debería haber dedicado a la memoria.

A lo largo de los años, probablemente recibí una docena de llamadas en las que alguien más había ayudado a uno de los usuarios de mi computadora portátil a establecer una dirección estática o proxy para que funcionara en alguna red extranjera. Cuando se mudaron a otra red, me llamaron para preguntarme qué necesitaban para arreglar su computadora. Estas llamadas siempre parecen ocurrir cuando no estoy frente a una computadora, y la persona que llama generalmente tiene suficiente influencia política que requiere ayuda inmediata. No digo que tenga que conocer todos los detalles, como el nombre exacto de los elementos del menú, pero creo que debería poder guiar a alguien a través de la resolución de problemas y la fijación de la configuración de red en las computadoras sin estar frente a esa computadora.

revs Zoredache
fuente
En una nota similar. Si les pide que configuren algo común (como redes), no deberían leer cada pantalla. Las pantallas deben ser lo suficientemente familiares como para que simplemente sepan dónde hacer clic en el siguiente deslizamiento sobre las pantallas.
Chris S
2
Tendré que estar en desacuerdo con este. En mi opinión, preguntarle a alguien cómo hacer algo de memoria es simplemente cruel. Estoy seguro de que no memorizo ​​todos los aspectos de Windows (y es aún peor ya que Vista / 7 cambió por completo muchas cosas importantes) y tampoco esperaría que los candidatos lo supieran de memoria. xkcd.com/627 no lo sabes! Personalmente, les daría una computadora portátil y les pediría que lo hicieran e intentaran evaluarlo.
Ben Pilbrow
@Ben, actualizado para abordar su punto. En varias ocasiones tuve que proporcionar este nivel de ayuda a mis usuarios. Creo que un administrador de sistemas debería conocer mejor la configuración básica de la red que el dorso de su mano.
Zoredache
@Zoredache: en mi opinión, no es tan simple, ya que a veces cambia radicalmente. Deberían poder aprenderlo y navegarlo, pero al mismo tiempo no necesariamente funcionaría en todos nuestros sistemas (ejemplo: a la utilidad inalámbrica de Dell le gusta robar la administración de red de Windows en nuestros portátiles XP). Se perdería una nueva tecnología si no estuvieran familiarizados con eso, pero no los hace incompetentes. Prefiero tener a alguien a quien le guste aprender y adaptarse a estos problemas en lugar de memorizar a la persona con viñetas.
Bart Silverstrim
@Ben & Bart: Te estás perdiendo el punto. No tienen que ser 100% precisos. Pero deberían saberlo como si fuera su trabajo . Las preguntas deben basarse en una tarea simple para ese trabajo en particular. Si tiene que poner excusas para la persona antes de contratarla, es hora de buscar a otra persona.
Chris S
-1

Es una pregunta simple, cuando haces tus tareas de administrador de sistemas, usas la línea de comando o el mouse.

Si decían ratón, les mostraría la puerta.

El conserje de Unix
fuente
Ambos. El mouse se usa principalmente para cambiar de una ventana a otra y operar mi navegador (a pesar de que poco a poco me estoy acostumbrando a Vimperator para Firefox). En mi sistema de trabajo, he estandarizado en 132x52 Terminal.app (computadora portátil Mac OS X ... generalmente usando el modo de monitor dual en la oficina). Por lo general, tengo 4 o 5 ventanas de término de este tipo ... todas en mi escritorio y compartiendo una screensesión GNU persistente de múltiples usuarios que un promedio de 20 shells mantienen el estado en varias conexiones a otros sistemas, IRC, etc.
Jim Dennis
66
No me gusta esta respuesta. Hay muchas situaciones y soluciones perfectamente manejables con el mouse, y muchas que no se pueden manejar sin una. También me gusta la CLI, pero no hay necesidad de ser un snob al respecto.
quux
Creo que esto es demasiado contundente y estrecho, pero es cierto que un número sorprendente de profesionales de TI, incluso personas de treinta años, profesan una aversión declarada por usar la línea de comando, con la consecuencia de que son completamente incapaces de automatizar cualquier cosa sin algún tipo de solución preempaquetada. Estas personas realmente no merecen ser mostrado la puerta, a menos que están siendo contratados para un trabajo sin futuro.
Skyhawk