Hay un montón de problemas que permiten soluciones funcionales muy naturales; idealmente, alguien sin mucha experiencia en FP pero con la mentalidad correcta aún escribiría un programa bastante funcional. Por otro lado, alguien que aprende y escribe un programa imperativo relativamente feo probablemente no tiene la mentalidad correcta.
Los problemas con las estructuras de los árboles tienden a comportarse así. Por ejemplo, recientemente tuve una pregunta de entrevista (para un puesto de programación funcional) que involucra gramáticas libres de contexto. Usar un CFG produce un árbol. Por lo tanto, puede pedirle al candidato que diseñe un tipo para representar un CFG y luego pedirle que escriba un código para responder algunas preguntas sobre la gramática en sí o analizar los árboles que produce.
Otra opción interesante sería darle al candidato un código escrito en un estilo funcional idiomático y pedirle que encuentre errores en él. Esto puede darle una buena idea de cuán bueno es el candidato para leer el código funcional.
- ¿Es sabio tomar un doble título en ingeniería de software y ciencias de la computación?
- ¿Cómo desarrolla un analista de control de calidad los casos de prueba de cualquier documento? ¿Los casos se deciden al azar o hay una ruta establecida?
- ¿Cuánto dinero me costaría si quisiera crear un programa de edición de fotos tan bueno como la última versión de Adobe Photoshop y proporcionarlo gratuitamente para el público?
- ¿Por qué algunos programadores intentan disuadir nuevos pensamientos?
- ¿Cuáles son los beneficios y las desventajas del desarrollo de software basado en la integración continua?