Experiencia en entrevistas con BrowserStack: ingeniero de software sénior

Ronda 1 – Presencial:

Me llamaron directamente para la ronda en el sitio.

Había dos tareas por resolver: una antes del almuerzo y otra después. Cada trabajo fue de 2 horas.

  1. Implemente un servicio web simple que le permita interactuar con dos navegadores web, a saber, Google Chrome y Mozilla Firefox. El primer navegador puede iniciar otro navegador con una URL, detenerlo, limpiar el caché, el historial, etc. y obtener la pestaña activa actual (supongamos una ventana). Se iba a implementar el servicio web RESTful.
    • Inicio: http://<servidor>/start?browser=chrome&url=http://example.com debe iniciar Google Chrome y abrir http://example.com en el mismo.
    • Detener: http://<servidor>/stop?browser=<navegador> debe detener el navegador dado si se está ejecutando.
    • Limpieza: http://<servidor>/cleanup?browser=<navegador> debe limpiar la sesión de navegación para el navegador dado si se ha detenido .
    • Obtener pestaña activa: http://<servidor>/geturl?browser=<navegador> debe obtener la URL de la pestaña activa actual para el navegador dado.
  2. Implemente una solución de observación de registros (similar al comando tailf de Linux), pero el registro estará en forma remota. Use WebSockets para esto. Básicamente, debe implementar el comando tailf en el servidor y los clientes se conectarán al servidor. Inicialmente, el cliente verá las últimas 10 líneas del registro. Luego, a medida que se actualiza el registro, el cliente debería ver las actualizaciones sin actualizar la página (aquí entran en juego los websockets).

Las asignaciones fueron difíciles para aquellos que no han trabajado con las tecnologías requeridas. Permiten usar la red, por lo que uno puede intentar mirar hacia arriba.

Recibí correo de rechazo dos días después.

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *