Geek & Roll - Blog Archive » ¿Sabes programar en Java?

¿Sabes programar en Java?

Cesar September 30th, 2008

Continuando con la serie de posts sobre la aventura que es buscar un nuevo trabajo como programador, ahora les traigo la prueba definitiva para determinar si sabes programar en Java.

A lo largo de las ya múltiples entrevistas telefónicas que he tenido que pasar, hay una serie de preguntas que no faltan. Inclusive hay algunos que solamente hacen estas preguntas, y ninguna otra, como si esto fuera la prueba fehaciente de que sabes programar en Java.

  • ¿Cuál es la diferencia entre una clase y un objeto?
  • ¿Cómo creas un nuevo thread (hilo)? ¿Y de otra manera?
  • ¿Qué es una interfaz?
  • ¿Qué es una clase abstracta
  • ¿Puede una clase pública extender una interfaz? ¿Y una clase abstracta?
  • ¿Cuál es la diferencia entre un List y un Set?
  • ¿Qué es un constructor?

Hay más preguntas, pero estas las han repetido siempre. ¿Qué les parece? en lo personal, no creo que ayude a determinar el nivel de conocimiento de un candidato, sin embargo si son cosas que cualquier novato de Java debe saber.

8 Comentarios

Roberto Ramírez

September 30th, 2008

Corrijeme si estoy mal, ¿no sería mas bien una clase sobre el paradigma Orientado a Objetos?

Un saludo.

Cesar

September 30th, 2008

Hmmm no. Bueno no se a que te refieras con eso pero la diferencia entre una clase y un objeto (los dos pertenecientes al paradigma orientado a objetos) es clara: un objeto es una instancia de una clase, es decir, un objeto tiene un estado propio (color = azul, tamaño = grande) y el comportamiento declarado en la clase. Una analogía podría ser que la clase es como un plano, a partir del cual se hacen o instancían uno o varios objetos, cada uno con su estado propio que puede cambiar a lo largo de la ejecución del programa.

Axel

September 30th, 2008

Creo que el Bobbher se refería a que más que una entrevista eso parece una clase de OOP.

Saludos.

FaCuZ

September 30th, 2008

Depende, si buscas un novato por ahi ni necesita saber que es una clase abstracta!
Teniendo en cuenta que buscas a alguien con nivel intermedio/avanzado directamente preguntaría cuantos patrones conoce y que diga como se construyen los 5 mas comunes. De ahi te enteras si sabe que son las clases abstractas y las intefaces, y si sabe eso, tiene que saber si o si la diferencia entre una clase y un objeto. Con esa sola pregunta podes saber si sabe todas esas preguntas menos la de thread, pero si sabe programar con patrones de diseño, a usar thread se lo podes enseñar en unos minutos.

Cesar

October 1st, 2008

@Axel: OOOhhh!!! ahora todo tiene sentido. Sorry Bobbher.

@FaCuZ: Directo de mi cabeza (sin consultar Google): Singleton, MVC, Master-Slave, Observer, Decorator. Uff… apenas paso tu examen. Claro todavía falta la implementación de cada uno de ellos pero ya es muy extenso para un comentario.

Roberto Ramírez

October 1st, 2008

@Axel: Exactamente a eso me referia dude ;D

Otro saludo.

gabriel elias

October 1st, 2008

Preguntas como esas pueden ser fácilmente respondidas por una persona que nunca ha por lo menos compilado un código.
¿Es eso lo que los empleadores buscan?
Ponles un caso de uso, eclipse y google. si con eso te hacen un ejecutable decente y en tiempo. Wellcome MTF!!!!

Cesar

October 1st, 2008

@gabriel elias: De acuerdo, pero nadie hace eso. Creo que parcialmente se debe a que algunas entrevistas son por teléfono. Esas preguntas, como menciono en el post, me las han hecho en prácticamente TODAS las entrevistas telefónicas que he tenido cuando de programar en Java se trata. Solamente en 1 ocasión me han preguntado por frameworks específicos, aunque esa entrevista también incluyó preguntas raras como “Que ambientes has usado?” y “Que APIS has usado?”

Haz un comentario:

Es necesario que dejes tu nombre y correo electrónico (no se publicarán).

Si dejas un comentario anónimo, con insultos o ajeno al tema, iremos hasta tu casa y le diremos a tu mamá la cantidad de porno que hay en tu computadora. Si, lo sabemos.

Busca

Categorías

Meses