¿Qué lenguaje de programación dominar para sentarse para codificar entrevistas?

Soy ingeniero electrónico en mi licenciatura y tenía las mismas preguntas cuando me gradué. Curiosamente, sabía que aparecería para una entrevista con una compañía de software ya que ninguna compañía central visitó mi campus (incluso si lo hicieran, agruparon el reclutamiento donde aparecerían 200 candidatos y solo se seleccionarían 2–3, sin esperanza alguna). situación puesta en breve) y, sin embargo, fui informal sobre la programación. Volviendo a mi entrevista con la división de TI de un banco de inversión, pensé que si conocía JAVA y / o C ++, haría el corte. Aunque SQL me hubiera dado una ventaja además de conocer los lenguajes GP, no pude leerlo debido a la falta de tiempo y recursos, y que soy más tonto.

Mi entrevista: escribe y explica

  1. un pseudocódigo para la clasificación rápida, de burbujas y de cubos
  2. ¿Cómo iterarías un árbol binario?
  3. ¿Cómo programarías potencialmente un robot de desplazamiento del laberinto?

Entonces, mientras invertí unos 25 días de mi tiempo leyendo punteros, STL, enchufes, subprocesos, herencia múltiple y única en C ++ aquí, literalmente, no me preguntaron nada al respecto. Sin embargo, tenía algo de sentido común en lo que se me pidió y, dado que mi entrevista fue lo suficientemente considerada como para darme 30 segundos para pensar, podría responder las preguntas satisfactoriamente, si no perfectamente. Fue como estudiar para un examen donde todas las preguntas estaban fuera del programa prescrito. De alguna manera, apenas pasé esta entrevista y conseguí un trabajo. Salvó el día, pero grandes sorpresas estaban esperando para desarrollarse.

Avanzando rápidamente para unirme a la empresa, pensé que ahora es el momento en que mi nivel “experto” de conocimiento de C ++ podría utilizarse. Día 1 – Entendí una mierda en el código escrito. No entendía por qué uno usaría punteros en un lugar y referencias en el otro. No podía contemplar por qué las cosas se declararon constantes, o por qué se usaban funciones recursivas. A pesar de toda la herencia y el polimorfismo y la abstracción y la encapsulación que había “estudiado” (bueno, algo así como más bien de memoria), no pude entender cómo se estructuraron las clases. Continuando, pensé que podría haber algo más simple que mi cerebro pudiera comprender y recurrí a SQL (ya me había entrenado en SQL) y vi los desencadenadores PL SQL y CLOB y BLOB y la diferencia entre procedimientos y funciones parecía tan grande. claro como la cima de una colina en el monzón, básicamente mi primer día fue el día en que aprendí algo importante: los idiomas no importan las sentadillas. Hoy en día, tengo conocimientos prácticos con aproximadamente 7–8 lenguajes (C, C ++, C #, JAVA, Python, Batch scripting + power shell, PL SQL, Angular JS + HTML 5, algunos conceptos básicos de F #) inspirados (bastante mortificados) Mi experiencia el primer día. Lo que realmente importa es el concepto de programación en sí.

Tenía un instructor de JAVA antes de unirme al piso de la empresa y no recuerdo mucho de lo que Advanced JAVA me enseñó, excepto por un concepto no específico del idioma que cambió mi forma de ver cualquier programa y fue esto, palabra por palabra – cada lenguaje de programación está construido sobre una construcción común y esta construcción es que cada programa tomará una entrada y salida de algo. El comportamiento se define dentro de los módulos que se denominan funciones (ya que le ofrecen una “función”). Para que cada función se comporte de cierta manera, necesita un “tipo” de entrada y devuelve un “tipo” de salida. Por lo tanto, mañana si elige algún idioma, descubra qué necesita la función y qué devuelve . Una clase solo te ayuda a unir funciones relacionadas y un espacio de nombres solo marca tu clase a cierto grupo, eso es todo lo que hay que saber sobre la programación en su conjunto.

Al principio no tenía mucho sentido, pero cuando descifré su significado y empleé algo de él, me sentí como caminar después de gatear (en realidad apenas deslizándome por el piso) en el mundo de la programación.

Entonces, para responder a su pregunta después de esta historia bastante poco interesante e increíblemente larga sobre, lo que quiero decirle es que no importa qué lenguaje de programación aprenda. O para responder a su pregunta usando palabras de su pregunta: puede dominar (el dominio es una ilusión. Conozco personas con 34 años de experiencia que todavía aprenden) todos los lenguajes de programación que puede en el tiempo que tiene, y ninguno de ellos lo ayudará. completamente (tal vez solo hasta cierto punto) porque se espera que los ingenieros de software creen programas en idiomas adecuados para la aplicación en lugar de crear todo tipo de aplicaciones en un solo idioma. por ejemplo, desearía crear una aplicación de cálculo numérico en F # o R o Python debido a las características que ofrecen para estas operaciones; no significa que no pueda usar otros idiomas, sino que estos se crean teniendo en cuenta tales operaciones. Intente centrarse en el flujo del edificio, la lógica, los pseudocódigos, los algoritmos, etc.

Sin embargo, no diré que no aprendas lenguajes de programación. ¿Cual? Se reduce a qué dominio desea ingresar y qué implica la posición que está solicitando: web, servicio, algoritmo, computación matemática, computación HP, etc. Para la web necesitaría JAVA, Angular JS, HTML 5, C # .NET, CSS y algunos más. Pero el conocimiento del lenguaje de programación de propósito general en C / C ++ y / o JAVA facilitará las cosas. Algunos sitios que encontré muy útiles: Tutoriales de bases de datos, Java y tutoriales de tecnologías asociadas, Tutoriales multilingües, Tutoriales para lenguajes de programación de computadoras, cppreference.com, The C ++ Resources Network

Después de aburrirte durante la mayor parte de los 10 minutos, ¡todo lo mejor para tu entrevista!

Hola 🙂

Si vas a una entrevista, la mejor de las suertes. En primer lugar, no debes tener miedo a la entrevista. Un resplandor seguro debe estar allí en tu cara. Si se trata de una entrevista para codificar, solo recuerde que la pregunta formulada en la entrevista se basa en su comprensión y cualidades de construcción de lógica para resolver problemas de manera efectiva. Si conoce más de tres idiomas, domine el que se requiere en ese trabajo en particular (no todos los trabajos requieren que sea maestro en todos los idiomas, por lo general requieren solo uno). Por lo tanto, depende completamente de usted dominar cualquier idioma. Si me preguntas, te sugiero que primero domines c ++, luego Java y luego Python en este orden. Debes saber tantos idiomas como puedas porque aumenta tus posibilidades de conseguir trabajo y ganar dinero.

Espero que te ayude.

¡Vota si te ayuda!

Creo que aprender C / C ++ será mejor junto con ellos aprender Algoritmo de estructura de datos, matemáticas discretas, sistema operativo y OOP.

Siga los sitios web de codificación como:

  1. http://www.geeksforgeeks.org
  2. Preguntas de la entrevista de codificación
  3. Juez en línea de LeetCode

Estudiar:

  1. Descifrando la entrevista de codificación de Gayle Laakmann Mcdowell
  2. Entrevista de programación expuesta
  3. Estructuras de datos y algoritmo facilitados por Narasimha Karimanchu

Siga este enlace para obtener mejores sugerencias: jwasham / google-entrevista-universidad

Nunca intentes aprender demasiados idiomas. Concéntrese en aprender un idioma para el que conoce dentro y fuera. Este es el lenguaje que usará para hacer cualquier proyecto paralelo o resolución de problemas.

Para el trabajo, debe aprender un idioma diferente lo suficientemente bien como para poder hacer el trabajo. Sin embargo, no necesitas dominar el idioma.

Aprenda un lenguaje imperativo como C / C ++, Java, Python, etc. que tiene una buena biblioteca de estructuras de datos

C ++ tiene STL

Java tiene una biblioteca de colecciones

Aprenda un lenguaje de programación funcional como Scala, Haskel, LISP, etc. Ayuda a aprender un paradigma diferente para resolver problemas. Cierto problema puede resolverse de una manera mucho más fácil utilizando un enfoque funcional.

Actualmente estoy tratando de aprender uno. Es como si estuviera aprendiendo a programar por primera vez.

C / C ++ están muy cerca del sistema, por lo que si desea aprender, haga la programación del sistema, gráficos, GPGPU, controladores de dispositivos, etc. No hay alternativa.

Hola,

¡¡Mira!! Hay cientos o miles de lenguajes de programación en el mercado. Pero ahora, como dijiste, conoces un poco Java, Python y C, así que mejor dominar Java y Python primero y luego, cuando hayas terminado, simplemente analiza el dominio que deseas alcanzar para una carrera a largo plazo. Por ejemplo, si desea ser un desarrollador web, debe aprender más sobre HTML, CSS, JavaScript, AngularJS, pero aquí también necesitará Java o Python o C # (para la plataforma .net ). Si desea ingresar al dominio de Automation Testing, necesitará Selenium (Web Testing) / Appium (Mobile Testing), por lo que aquí también necesita Java. Entonces, en la breve nota, simplemente domine Java o Python o cualquier lenguaje de desarrollo que desee aprender, luego analice y busque los dominios en los que desea trabajar y luego apréndalos de acuerdo con su objetivo profesional a largo plazo.

Todo lo mejor 🙂

Gracias por el A2A.

C se requiere principalmente para lo básico y la codificación de la vieja escuela, pero yo diría que se centre en Java y Python .

Diría más sobre Java debido a la demanda que tiene en el mundo actual, en los mercados de Android y todo … Python también es muy valorado por compañías como Google, pero aún así sugiero Java … Es un todo terreno con un código hermoso también…

Espero que haya ayudado.

Antes de asistir a una entrevista de codificación, debe saber qué tipos de codificación utiliza la organización o la empresa para desarrollar sus aplicaciones y quién va a tomar su entrevista.

Java lo haría. Lea algunos tutoriales de Java para principiantes de Internet, será beneficioso.

Aprenda C y la estructura de datos es suficiente para descifrar la entrevista.

More Interesting

¿Cuáles son los temas y preguntas importantes que se hacen en una entrevista para pruebas manuales y de automatización para alguien con más de 3 años de experiencia?

Cómo pasar una entrevista telefónica técnica para un puesto de desarrollador junior de Java / Android

He fallado 40 veces en una entrevista. No está mejorando. ¿Qué tengo que hacer?

Cómo descifrar la entrevista para PwC

¿Cómo evalúa las habilidades de comunicación en una entrevista?

¿Qué hace que un pasante de ingeniero de software de Google se destaque?

¿Es malo para una mujer iniciar un apretón de manos cuando se entrevista con un empleador masculino? ¿Me haría parecer que me falta respeto por su superioridad?

Cómo descifrar las entrevistas del gerente de producto de Amazon para India

¿Cómo se puede saber si es seleccionado para otra entrevista redonda?

¿Cómo se seleccionan los estudiantes para las entrevistas de trabajo más frescas en Fractal?

¿Cómo debo responder la pregunta "cuál es la razón de sus bajas calificaciones?" en entrevistas?

¿Cuál es la forma más rápida de prepararse para preguntas algorítmicas para entrevistas?

¿Cómo fue su entrevista en Google DeepMind para un puesto de ingeniero de software, y cómo fue diferente de las entrevistas técnicas de Google?

¿Qué posibilidades hay de una entrevista SSB más fresca para crackear?

¿Cuál debería ser su respuesta en una entrevista, cuando se le pregunta: "¿Por qué tiene tan bajas calificaciones"?