¿Cómo puedo, como fundador no técnico, determinar si un candidato / s es / es competente en C #, .NET y SQL? Estos serían mis primeros empleados.

La mejor solución es conocer a alguien que sea un experto en el campo y en quien confíe por completo y luego hacer que realice la entrevista en su nombre. Si cierran la sesión, puede tener una entrevista de ‘cultura’ para asegurarse de que la personalidad encaja, etc.


Si no conoce a alguien en quien pueda confiar para hacer la entrevista, entonces tiene algunas opciones.

Opción 1: especifique un proyecto simple (asegúrese de que sea súper simple) que sea único (sin respuestas en Internet) y pídales que lo escriban por usted o que expliquen por qué no pueden hacerlo. (xkcd: tareas)

Opción 2: solicitar una muestra de código; en C #, una muestra de código bien comentada y bien escrita debería ser legible incluso para un fundador no técnico. Puede que tenga que aprender un poco sobre programación para evaluarlo si su muestra es menos legible.

Si el ejemplo de código parece griego / es imposible de seguir, entonces no los contrate, otros futuros empleados tendrán que lidiar con su código y se perderán o se verán en desventaja si es ilegible. La legibilidad del código tiene enormes repercusiones en el costo de mantenimiento y la velocidad con la que se pueden corregir los errores, así como las nuevas funciones que utilizan funciones antiguas.

También puede compararlo con un buen código en GitHub u otros sitios públicos. (asegúrese de buscar en Google para asegurarse de que el código no se haya copiado de otra persona).

Opción 3: después de contratarlos, no micro gestiones, pero divide el proyecto en micro tareas muy pequeñas y asegúrate de que sigan produciendo a un buen ritmo y no dejes que nada bloquee su progreso. Si hacen las cosas, entonces al menos estás en un lugar correcto. Una vez que hayan realizado una o más tareas, obtenga el código (debe usar el control de fuente) y léalo, como se indica arriba, y entrégueselo a una persona técnica para que lo revise. Si siguen produciendo pero la calidad del código es mala, tiene una decisión difícil a largo plazo (despedirlos) versus a corto plazo (conservarlos). El código incorrecto es tanto una deuda técnica como una responsabilidad legal (alguna vez se supo de contraseñas / PII / tarjetas de crédito robadas, esa podría ser su empresa).


De hecho, usaría las 3 opciones juntas si no puedes encontrar a alguien en quien confíes para que las examine. Cuando se trata de la segunda contratación técnica, no implicaría la primera contratación (si son incompetentes / imprudentes, no querrán exponerse y bloquear a los candidatos que los expondrán).


Nota: no confíe en ninguna agencia de reclutamiento / colocación (u otra parte sesgada) para evaluar adecuadamente a un candidato. Están predispuestos para atraer a la gente a la puerta, no para completar su proyecto.

Regla general: cuando alguien te habla de algo que no entiendes, asume que te está mintiendo. Si no pueden explicarlo en términos que usted pueda entender, entonces hay un problema.


Nota sobre C #, .net, SQL: Me centraría en C # ya que es el lenguaje principal que deberían usar y, si son excelentes, deberían conocer SQL. (C # es parte de .net, lea las respuestas aquí: ¿Tengo que aprender .NET para dominar C #?)

Si no es técnico, ¿cómo sabe que estas son las tecnologías que va a utilizar? Tal vez sea mejor buscar a alguien que haya hecho cosas realmente impresionantes que sean similares a lo que va a hacer y ver si puede conseguirlo y luego usar lo que le sea familiar. No me malinterpreten, AMO C #, pero no todos los problemas deben resolverse con él, C # es un martillo realmente agradable, pero no todo es un clavo.

Administrar el desarrollo de software / web (ya que mencionó C #, .NET y SQL) puede ser complicado para una persona no técnica, especialmente si está pensando en contratar a nuevos graduados debido a restricciones presupuestarias.

Le recomendaría que considere contratar a una persona técnica con experiencia como cofundador, lo que probablemente le ahorrará muchos problemas en el futuro y puede concentrarse en su área de especialización.

Cualquier persona técnica apasionada debe tener proyectos de pasatiempos personales que lo entiendan completamente, ya que probablemente construyan cada uno de ellos por sí mismos. Puede solicitar ver este portafolio y analizar si sus objetivos están alineados con los suyos.

Alternativamente, también puede pedirles que realicen una codificación en vivo, por ejemplo. cree una solución simple de hello world que almacene a los visitantes en la base de datos sql.

  • Contrata a alguien técnico en quien confíes para examinarlo. ¿Quizás hay compañías que ofrecen esto?
  • Obtenga referencias realmente buenas con detalles sobre proyectos anteriores
  • Mire su trabajo si eso es posible y use su propio criterio.

Si el trabajo que realizan no es muy visible para el usuario, no tendrá mucha capacidad para juzgar su trabajo. Es más fácil si han trabajado en compañías de buena reputación, pero eso suele ser difícil de encontrar. Incluso entonces no es garantía. Tampoco es algo en blanco y negro, diría que un desarrollador que construye muchas pruebas es un atributo positivo. Pero no si nunca entregan a tiempo … Cuando revisa el código, debe tener en cuenta el entorno en el que se encuentran, ya que las circunstancias siempre afectan la calidad del código.

Descarga cuestionarios y haz que respondan, solo puedes probar estas habilidades a través de exámenes prácticos.