Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Ganar Dinero,siendo Un Programador De Videojuegos

Iniciado por Guirone, 08 de Diciembre de 2005, 04:28:31 PM

« anterior - próximo »

Jare

 
Cita de: "zupervaca"el problema que tienen es que muchas personas no sabrian responderte ya que son preguntas muy abstractas
Precisamente por eso no son preguntas que hago directamente en una entrevista. Bueno, sí puedo hacerlas para conocer lo que el candidato piensa sobre el tema, pero me interesa más sacar mis propias conclusiones a partir del test (y toda la entrevista), y contrastar ambos. El test se hace cara a cara y con constante diálogo; ese flujo de información ocurre durante toda la entrevista. Si planteo ese tipo de preguntas abstractas y el candidato no sabe muy bien cómo contestar, pues eso significa algo... o bien puede dar una respuesta correcta, pero no completa, o una respuesta completa pero que no comparto, o... etc. No se trata de que la pregunta sea imposible de contestar, sino que la FORMA de abordarla y contestarla (y también el contenido de la respuesta) me pueden decir mucho sobre cómo piensa y trabaja esa persona.

Por ejemplo, si te pregunto qué son las funciones virtuales: la pregunta te puede parecer una chorrada porque o bien te resulta muy fácil contestar, o bien no lo sabes pero es irrelevante ya que aprender lo que són no te costaría mucho. Sin embargo, eso me da una idea sobre el tipo de desarrollos en C++ que has hecho. Si me das una respuesta de libro, te puedo empezar a preguntar sutilezas sobre eficiencia, implementaciones típicas de los compiladores, interacción con otros aspectos de las clases, posibles problemas derivados de su uso, etc. hasta averiguar tanto como pueda sobre la amplitud de tu experiencia con ellas. Antes o después, sacaré conclusiones sobre tu experiencia y tu filosofía de programación.

Pues eso con funciones virtuales, o con herencia, o con patrones de diseño, o con el static, o con los templates, o con las macros, o con excepciones, o con typecasts... Hay 10mil temas que usar.

Si vas fino con la teoría, pasaré rápidamente a la parte práctica. Si los problemas los cazas rápido, los retorceré para saber si ya los conocías, y cómo de rápido te adaptas a un problema nuevo. Si me das respuestas simples y directas, te haré preguntas ambiguas o confusas. Si tienes problemas con el enunciado de las preguntas, las separaré en partes más concretas y precisas. Si no te mojas en una opinión te daré una propuesta que es errónea a ver si despiertas. Si estás nervioso, intentaré relajarte contando alguna "anécdota del abuelo", pero si estás tranquilo te pondré presión a ver si es todo fachada.

Una situación real que le ocurrió a un amigo en una entrevista: nada más empezar, le dicen "Queremos contratar a 16 personas, ya tenemos a gente suficiente para cubrir esos puestos, y por tu CV, tu no estás entre ellos. Además, exigimos inglés y tú dices que no sabes, así que vamos a ir al grano. ¿Por qué deberíamos cogerte a tí en lugar de a uno de los otros?" Menuda putada, ¿eh? Me consta que no era una pregunta genérica que les hacían a todos, porque más amigos se habían presentado y no pasaron por nada similar. (Y sí, el tío consiguió el puesto, y le mandaron a currar a USA sin saber apenas inglés, pero no veas lo rápido que se puso las pilas)

Puede que al final lo hayas hecho bastante bien, pero aún así me quede con el runrún de "algo me dice que no mola", o que la hagas regular y "algo me dice que el tío vale", pero no sabes decir exactamente el qué. Después de años de entrevistas, vas teniendo confianza en tus juicios, y harás caso a ese instinto.

Una entrevista (por lo menos en el marco en que suelen ocurrir en videojuegos) es algo muy subjetivo, las ambiguedades y los "depende" son el pan nuestro de cada día. No es una ciencia exacta, y no tiene NADA que ver con ningún examen que hayas hecho durante los estudios.

Ah, y recordad una cosa: cualquier entrevistador QUIERE que la persona que está entrevistando demuestre ser un candidato cojonudo. No hay nada mejor que salir de una entrevista convencido de que quieres que el tío se venga a trabajar contigo. El candidato se pasa la entrevista nervioso pensando "¿Sabré demostrar lo que valgo?", pero el entrevistador pasa por un proceso similar preguntandose "¿Será un tio muy bueno y no lo sabré ver?"

Y si, a veces el entrevistador la caga, y deja escapar a un tío que vale. Así es la vida... como me dijo una vez un jefe, el que quiera garantías que se compre una lavadora. :)

Mars Attacks

Cita de: "synchrnzr"- Un IS en Informática puede servir para ambas cosas, aunque la preparación es más parecida a la de sistemas (no hay en el plan contabilidad e inglés, por ejemplo)
En nuestra carrera (Universitat Jaume I de Castellón) sí hay contabilidad, y dos cursos de inglés (inglés avanzado e inglés para la informática), que además son troncales. Aparte de economía, estadística, gestión y organización de empresas, y otras por el estilo. A falta de una asignatura para terminar la carrera, sigo viendo que más que prepararnos para el mundo laboral, en la carrera nos preparan para aprender a tragar y a abrir bien el culo...

Mars Attacks

 Después de leer todo el tema de la inversión de cadenas, creo que la pregunta sería "cuándo fue la última vez que necesitaste algo que invirtiera cadenas"...

zupervaca

 
Citaren la carrera nos preparan para aprender a tragar y a abrir bien el culo...
hombre ... yo cuando he trabajado con gente de carrera los tios saben, en metodologia estan muy verdes o simplemente es que no saben aplicarla a la hora de la verdad, pero por lo menos saben manejar miles de programas

sobre el tema de invertir cadena el codigo que he puesto es el que se deberia de presentar en el examen de pyro :lol:

Jikan

 
      De todas maneras esto es muy relativo. Yo estuve en una empresa donde alguien no pasó el examen de C++. Meses después esta persona vino a dar un curso de C++ :D. No es broma. Así que vosotros mismos.

     

 

Mars Attacks

 No, en serio, ¿para qué necesita alguien invertir una cadena? (Y que no me responda que "para comprobar si es un palíndromo", que le meto).

[Over]

 Jare, muchas gracias por aclarar las dudas :D.

Espero sea mi caso en el que la cagarias vosotros ;).

Un saludo.

zupervaca

 
Cita de: "Jikan"De todas maneras esto es muy relativo. Yo estuve en una empresa donde alguien no pasó el examen de C++. Meses después esta persona vino a dar un curso de C++ :D. No es broma. Así que vosotros mismos.
yo he visto cosas mas increibles, como de un tio no tener ni idea de matracas a despues tener que enseñar a todo un equipo, esta claro que si no sabes c++ se aprende y no creo que lleve mas de un par de semanas, yo tuve que aprender php en dos dias y asp en unas horas para ayudar en un proyecto web a un amigo, con lo que si aprendi yo ... otro lo hace mucho mejor, no obstante esta claro que si no llevas X tiempo no aprovecharas el lenguaje, aunque hay casos excepcionales, como conmigo y el php que usaba un truco con los nombres de las variables y su valor :lol:

seryu

Cita de: "Mars Attacks"No, en serio, ¿para qué necesita alguien invertir una cadena? (Y que no me responda que "para comprobar si es un palíndromo", que le meto).
Normalmente se necesita para aprobar un examen.

Si sabes trabajar con cadenas, puedes hacer cosas mas útiles que esa.


Jare

 
Cita de: "zupervaca"esta claro que si no sabes c++ se aprende y no creo que lleve mas de un par de semanas
En mi opinion, si no has trabajado de continuo en C++ al menos un año, es probable que no sepas C++, y solamente sepas "hacer cosas" en C++. Pero bueno, es cosa de criterios, yo me considero alguien que solamente sabe "hacer cosas" en PHP pero mi weblog, galería de fotos, guestbook y tal los he escrito yo enteros. :)

Jikan

 La pregunta de la inversión de la cadena es un caso "abstracto" por hablar de alguna manera, un ejemplo cuyo fin es comprobar si eres capaz de escribir un poquito de código en C (trivial, por otra parte) y luego usar este ejemplo como medio para ver cómo resuelves los problemas. Yo por ejemplo, comenté lo del xor pero no me acordaba exactamente, así que la persona que me entrevistaba me dijo que sin problemas, que hiciese la tabla de la verdad de un xor y tras hacerla ví cómo se resolvía. Luego me dijo que lo hiciera con operaciones aritméticas. Pero ya digo, si has resuelto un problema algorítmico no trivial y luego no sabes invertir una cadena el tío piensa que le has tomado el pelo y se acabó (y además es que sería verdad).

      C++ es un lenguaje difícil para programadores serios (lo dice Stroustrup). Tírale tiempo, MUCHO tiempo, pues anda que no da juego ni nada (je je, no pun intended). Cuando yo empecé en C++ no existían aún las templates  :ph34r: Si lees uno de los libros que era "la caña" a principios de los 90, el libro "Advanced C++" y lees por ejemplo el libro de Alexandrescu puedes darte cuenta de la gran evolución del lenguaje y de lo mucho que da de sí (ver STL, Boost, etc).

      Edit: por programadores "serios" Stroustup se refiere a los programadores profesionales (yo sólo cito, nada más).

      Edit2: ¿Y para programadores "seryus"? (lo siento, es que no he podido resistirme ;)

[Over]

 
Hola.

1 año de seguido en C++ y segun que tipo de cosas programes... porque yo estuve un año programando la logica de juegos en java y cuando cambié de trabajo y tuve que seguir programando en java me dí cuenta que me faltaban por saber muchisimas cosas y desde luego no tardé 2 semanas en controlarlas y aun un año despues hay tantas cosas que no se usar...

En mi opinion, cambiar de un lenguaje a otro no solo es saber como es la sintaxis, sobre todo si son lenguajes con filosofias diferentes.

Es muy dificil que una persona que nunca haya programado en C++ pero si en JAVA, C# o algun lenguaje de estos sea capaz de hacer un programa complejo en C++ asi sin mas, mirandote un poquito el lenguaje...  

Flint

 En mi opinión, aprender C++ en dos semanas es poco menos que imposible. Con aprender no me refiero a conocer la sintaxis del lenguaje, sino a saber utilizar su semántica, programar de manera correcta y eficiente. Eso es algo que llega con los años y el esfuerzo, y en un lenguaje tan complejo como C++ es algo evidente.

Alguien que jamás haya tocado algún lenguaje como Java o C# tendrá muchas dificultades, pero incluso alguien que sí tenga experiencia tendrá problemas con aspectos tales como la gestión de memoria. En Java y C# se dispone de un precioso garbage collector que evita lidiar con temas complejos de memoria (al menos hasta un cierto punto). Sin embargo, en C++ te tienes que crear tu propio sistema a tal efecto, y no es algo precisamente sencillo (si lo fuera, no habría tal cantidad de artículos al respecto).

Mi humilde opinión.

seryu

 la verdad es que java, pese a sus grandes putadas tiene grandes ideas, creo que cualquiera que haya tocado java echa de menos muchas cosas, yo por ejemplo me sigo preguntando porque no hay algo tan basico como un java.lang en C++

zupervaca

 yo llevo muchos años programando en c++ y es mi lenguaje principal para la programacion con lo que para mi es un lenguaje bastante sencillo, no obstante creo que en un par de semanas puedes aprender cualquier lenguaje de programacion ya que yo lo he hecho y si yo lo he hecho es que puede cualquiera, ahora bien como dije en mi anterior post aprovechar y explotarlo es otra cosa, para esto hace falta X tiempo dependiendo de cada persona ya que no todos aprenden a la misma velocidad, pero si estas en una empresa y te dicen que hay que hacer un proyecto en el lenguaje X y tu no sabes que les vas a decir ... ¿que tienes que estar dos años para hacer el proyecto o vas a ponerte a saco con el tema? hace años yo no sabia php y en la empresa que estuve me dijeron que debia de hacer una web con este lenguaje, no me quedo mas remedio que aprenderlo en el menor tiempo posible, en cuestion de dos dias estaba haciendo la web y en cuestion de dos semanas ya creaba clases en php para diferentes propositos, control de usuarios, accesos a bases de datos, etc.
en mi opinion, un programador debe saber ante todo metodologia, el lenguaje realmente no importa nunca






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.