Soy un desarrollador de C ++. Sé cómo funciona Windows en el nivel nativo, pero no soy un gran experto en C # y .NET. Ahora necesito un desarrollador de C # en mi equipo (todos mis desarrolladores son C ++). ¿Cómo puedo contratar a un gran desarrollador de C # si no conozco C # a buen nivel? ¿Cómo hacer preguntas, cómo evaluar si las respuestas son excelentes o si tienen errores tontos?
15
Respuestas:
De vez en cuando me encuentro con el problema de entrevistar a programadores que tienen experiencia principalmente en C ++, que no conozco tan bien como ellos. Mi estrategia es:
principalmente hago preguntas generales de programación, algoritmos, diseño de OO, cómo refactorizar, qué hace una buena prueba de unidad, etc. Agrego algunas preguntas generales dirigidas al estilo de lenguaje, por lo que para C ++ podría preguntar sobre la administración de memoria y la vida útil de los objetos para C # Podría preguntar cosas como, ¿puede tener una pérdida de memoria al usar un recolector de basura?
intenta averiguar cómo aprendieron el idioma, qué libros han leído, etc.
verifique que hayan escrito una cantidad sustancial de C ++. Profundice en cuándo lo han usado, cuánto, qué hicieron con él y para quién. Luego intente verificar esto en la medida de lo posible utilizando sus referencias.
Si pueden responder bien las preguntas difíciles de diseño y teoría y han escrito una cantidad decente de C ++, entonces espero que sean medio buenas al menos, y probablemente puedan aprender las cosas que faltan con bastante rapidez.
fuente
La prueba real para todos los programadores es qué tan bien resuelven los problemas. Un solucionador de problemas de primer nivel con solo habilidades mediocres de C # será mucho más valioso para usted que un dios C # (dess) que no puede descubrir cómo manejar la entrada de formularios.
Intente encontrar un problema real razonable de su dominio comercial y deje que lo resuelva en C #. Conoces el dominio y sabes cuál debería ser el resultado. Puede revisar la lógica usted mismo y hacer preguntas, ya que el flujo básico y los comandos en C # no son significativamente diferentes a los de C ++.
Si todavía está preocupado, envíe su código terminado a uno de sus amigos de C # o tal vez a un socio comercial y pregúnteles si pueden revisarlo y enviar sus comentarios.
fuente
Supongo que tiene una necesidad real para el desarrollador de C #.
Primero, averigüe qué tipo de tareas necesita para que puedan cumplir.
Luego pregúnteles cómo lograrían esas tareas. Pregunte cómo han completado tareas como esta anteriormente.
Mientras entrevista, solicite a otros solicitantes que evalúen las soluciones propuestas. Sugeriría sembrar las soluciones con una que sabes que no funcionará, y tal vez una que creas que es buena. Esto servirá para ayudar a determinar cómo el solicitante puede trabajar con su equipo. Los controles deberían ayudar a eliminar a los hombres sí y a los Asesinos de Ideas .
Esto debería proporcionarle un buen grupo de candidatos con ideas que sean aceptadas por sus pares y que tengan la capacidad de trabajar con su equipo.
fuente
tenga la entrevista cuando estaba contratando a un desarrollador de C ++. no se centre demasiado en las tecnologías C ++, sino más bien en la resolución de problemas, la POO y la programación en general. Si lo contrataras como un desarrollador de C ++ que quiere hacer C #, entonces sería una buena contratación.
fuente
Siendo yo mismo desarrollador de .Net y tratando mucho con chicos de C ++, creo que aún querría saber si una persona sabe al menos algo sobre la plataforma .Net: recolección de basura, GAC, JIT, NGEN, Valor vs. Tipo de referencia, propósito de IDispose, etc. Una buena lista de preguntas está disponible en el blog de Scott Hanselman . No hay una manera simple de averiguar si las respuestas son correctas si no comprende las preguntas usted mismo, por lo que podría tener sentido echar un vistazo a la descripción general de .Net en MSDN o buscar un buen libro, como Essential C # 4.0.
Si está buscando un programador de GUI, es muy útil pedir implementar algo simple, como una calculadora o un rover de Marte o lo que sea. Está bien dar uno o dos días para esto. Verá de inmediato si la GUI es útil y agradable, por ejemplo, cómo se comporta cuando cambia el tamaño.
fuente
Comience por verificar sus respuestas a las preguntas de C # en SO ..
fuente