Esta fue una entrevista para una empresa de TI en mi último año de universidad.
Ahora, aquellos de ustedes que se han preparado para tales entrevistas estarían muy familiarizados con el sitio web Geeksforgeeks . Daré una breve idea sobre este sitio web para aquellos que no están al tanto. Contiene todos los problemas de programación comúnmente preguntados en las entrevistas. La belleza de este sitio es que enumera todas las soluciones posibles disponibles para un problema en particular y la más eficiente (que es lo que llamamos solución óptima) aparece al final. El código para una solución óptima es generalmente muy corto en comparación con sus otras soluciones. En una entrevista, se espera que presente la solución óptima.
Entré en la sala de entrevistas. El entrevistador empieza a preguntar un problema. Estaba explicando el problema cuando me di cuenta de que lo había resuelto anteriormente en ese sitio web y tenía mucha confianza en responderlo, aunque mostré una expresión muy confusa. Me dio un papel para escribir el código del programa. Podría recordar fácilmente las cuatro soluciones enumeradas en el sitio web para la pregunta. Fingí pensar por unos minutos y luego escribí la solución óptima para el problema. Le entregué mi hoja. Miró mi código durante unos segundos y luego tomó su teléfono celular de la mesa y hizo clic en una pestaña previamente abierta. No pude ver claramente lo que estaba escrito en el otro lado de la mesa, pero pude ver que la parte superior de la página tenía una barra de color verde e inmediatamente reconocí que era el mismo sitio.
El sitio web se ve algo como esto
- ¿Qué tipo de preguntas les gusta responder a las chicas?
- Cómo desarrollar relaciones interpersonales.
- ¿Eres generalmente educado o grosero? ¿Cuál es tu justificación para ser como eres?
- ¿Qué quieren los hackathon cuando me preguntan ‘Dime algo interesante sobre ti?
- Estoy muy absorto en mí mismo con todos. ¿Cómo puedo arreglar esto?
Claramente estaba haciendo coincidir mi código con el de su teléfono, pero lo estaba haciendo de una manera no muy obvia para que yo no lo supiera. Pero lo que no sabía era que yo ya lo sabía. Ahora, él comenzó a dar una expresión de que mi código no era correcto. Desplazó un poco su pantalla y volvió a hacer coincidir el código. De nuevo, la misma expresión. Entendí cuál era el problema. Estaba haciendo coincidir mi pequeño código óptimo con el otro código largo y no tan óptimo que le hizo pensar que perdí algunas líneas. Si se hubiera desplazado más abajo en la pantalla de su teléfono, habría encontrado el mismo código. Puso la hoja frente a mí y me pidió que explicara mi código.
Intenté actuar de manera inteligente y decidí explicarle de la misma manera que se explicaba en el sitio. Escribí un ejemplo (cuando explicamos un código de programa, enumeramos un ejemplo simple y luego leemos línea por línea y lo modificamos en el ejemplo, esta es la forma de probar un código). No le expliqué mi código directamente, sino que comencé con el primer código más simple que recordé que se mencionó en ese sitio. Después de explicar esto, lo encontré dando una expresión positiva. Ahora le sugerí las formas en que se podría mejorar la solución. Esta fue la segunda solución mencionada en el sitio. Ahora, se veía aún más satisfecho. Ahora, sabía que no había visto la tercera y cuarta solución (óptima) en el sitio. Dije que se puede optimizar aún más de 2 maneras. Enumeré la tercera y la cuarta solución, que era mi código final que había escrito. Estaba muy satisfecho conmigo y me elogió por modificar las soluciones de manera eficiente. No esperaba tantas soluciones de mi parte.
Solo pude hacer esto porque sabía que él no tenía una solución propia, se estaba refiriendo a ese sitio web y no ha leído hasta el final de la página. Si hubiera leído la página, habría encontrado fácilmente la misma solución al final, no habría podido explicarle todas las soluciones de esta manera.
Me aclaró para la siguiente ronda. Salí y lo compartí con mis amigos y nos reímos mucho.