Asistí al proceso de entrevista en VMware para el puesto de Sr. MTS en abril de 2020 en medio del período de cierre. Presenté mi solicitud a través del portal en línea de VMware y la próxima semana recibí una llamada de Recursos Humanos preguntando sobre mi disponibilidad para las entrevistas.
Ronda 1 (videollamada Zoom + editor en línea HackerOne):
La entrevista comenzó con mi introducción y mis experiencias/proyectos anteriores, todas las tecnologías, el lenguaje de programación en el que he trabajado y preguntas relacionadas.
Luego, el entrevistador comenzó a hacer preguntas principalmente relacionadas con los conceptos del sistema operativo y la estructura de datos. El entrevistador esperaba el conocimiento profundo del Sistema Operativo en todos y cada uno de los escenarios. Como lo que sucede en el espacio de usuario, lo que sucede es el modo kernel.
Ejemplo: ¿qué sucede cuando haces un malloc (4)
qué tipo de dirección devuelve malloc()? dirección virtual o dirección física?
¿Cómo se asigna la memoria con malloc?
¿Malloc falla alguna vez?
Diseño de memoria virtual e internos de VMM, TLB, necesidad de TLB, traducción de direcciones de página. ¿Qué es un fallo de página? cómo se manejan las fallas de página.
Interrupciones y procesamiento del contexto del kernel.
Creación de procesos usando fork(), lo que sucede en la llamada fork(). diferentes entre hilos y procesos. mecanismo de sincronización, sus escenarios de uso. ¿Cuál es la diferencia entre mutex y semáforo, mutex y spinlock?
Explique una llamada al sistema, el cambio de contexto y el «contexto del proceso» frente al «contexto del núcleo».
escribir un programa de subprocesos múltiples para acceder a un conjunto de variables de datos globales. que tipo de cuidado hay que tener?
Preguntas de estructura de datos incluidas:
1. ordenar una array de 1 y 0.
2. ¿Cómo almacenará y encontrará un elemento máximo de un flujo infinito de números enteros entrantes?
3. Encontrar el k-ésimo más grande del conjunto de datos anterior.
Ronda 2 (videollamada Zoom + editor en línea HackerOne):
La segunda ronda se centró más en el aspecto del diseño.
Al igual que en la primera ronda, me preguntaron sobre todos los proyectos en los que he trabajado y en qué idiomas me siento cómodo. El entrevistador hizo un par de preguntas al sistema operativo con respecto a la llamada del sistema y preguntó cómo funciona la llamada de apertura de archivos(), la pregunta secundaria relacionada con esto fue cómo el sistema operativo sabe qué llamada del sistema de archivos ejecutar. También me preguntaron sobre las funciones internas de la llamada al sistema mount().
más tarde me pidieron que escribiera un código en C++ para un problema de lectura y escritura de subprocesos múltiples. Y explique pequeñas variaciones dentro del mismo ejercicio de codificación.
Ronda 3:
Gerentes Ronda principalmente sobre mi relación con el equipo anterior y mi Gerente actual. Buenas y malas experiencias con mi organización actual. ¿Por qué quieres cambiar de trabajo?
Nada fuera de la caja. Sugeriría responder de manera positiva y no ser negativo sobre su trabajo actual o cualquier otro miembro del equipo. Mantenlo simple.
Nota al margen :
Mantenlo simple. no piense demasiado en la complejidad durante las entrevistas técnicas a menos que se le pida que cambie. Exprese sus pensamientos, como suposiciones, durante la escritura del código o al menos aclare las preguntas antes de pasar a la codificación. Además, sea honesto si no conoce algún tema, simplemente dígalo; no arrastre innecesariamente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA