Especificación Actualizada para el Desarrollo de un Portal de Contratación de Desarrolladores
Objetivo del Proyecto
Crear un portal web donde las empresas puedan buscar y contratar desarrolladores. Las empresas gestionan todo el proceso a través de un administrador del portal, y tienen la capacidad de publicar ofertas de trabajo o buscar directamente a candidatos según sus necesidades, con un sistema dinámico de recomendación de tarifas basado en los requisitos específicos que eligen.
Requerimientos Funcionales
Gestión de Usuarios
Administrador del Portal:
Gestiona todo el proceso de contratación, desde la creación de candidatos hasta la propuesta de tarifas.
Puede visualizar las empresas de búsqueda y los candidatos potenciales.
Realiza las recomendaciones y asigna candidatos según las necesidades de las empresas de búsqueda.
Funcionalidad de Búsqueda de Desarrolladores
Búsqueda de Candidatos con Filtros:
Filtro Principal: Las empresas de búsqueda pueden buscar directamente a candidatos según sus necesidades específicas (por ejemplo, habilidades técnicas, años de experiencia, disponibilidad, tipo de contrato).
Filtros Avanzados: Los desarrolladores podrán ser filtrados por múltiples criterios como:
Habilidades técnicas (lenguajes de programación, frameworks, herramientas).
Experiencia profesional (años de experiencia, proyectos específicos, etc.).
Ubicación (si aplica).
Disponibilidad (full-time, part-time, freelance, etc.).
Calificación de proyectos previos o recomendaciones (si aplicable).
Resultados de Búsqueda: Los resultados se mostrarán de manera ordenada y clara, permitiendo a la empresa ver perfiles completos de los desarrolladores.
Vista de Perfil Completo: Los perfiles deben ser accesibles desde la búsqueda y permitir a la empresa revisar más detalles sobre cada candidato.
Wizard para Interés en un Candidato
Funcionamiento del Wizard:
Cuando una empresa se interesa por un candidato, debe completar un wizard interactivo donde especifica sus necesidades y requisitos adicionales.
Características del Wizard:
Job Position: La empresa debe indicar el puesto de trabajo o descripción general de la posición que está buscando.
Requerimientos Adicionales: La empresa debe especificar lo que necesita, como si desea que el candidato reciba seguimiento de rendimiento, si necesita un Delivery Manager, si se requiere motivación continua, etc.
Ajuste Dinámico de Rate: A medida que la empresa añade servicios adicionales al candidato, el rate (tarifa) cambia dinámicamente. Por ejemplo:
Si la empresa necesita que el desarrollador trabaje con un equipo especializado, el rate aumentará.
Si la empresa necesita equipos adicionales (hardware, licencias), el rate también se ajustará.
Revisión de Propuesta: Al final del wizard, la empresa podrá ver un resumen de su solicitud, incluyendo el rate final con los servicios adicionales seleccionados.
Página de Inicio (Homepage)
Mostrar Desarrolladores Destacados:
En la página de inicio, se debe mostrar una sección de desarrolladores destacados. Estos desarrolladores se presentarán con su perfil básico (nombre, especialidades, foto, y una breve descripción).
Los desarrolladores destacados pueden ser seleccionados automáticamente (por su popularidad, experiencia, o habilidades demandadas) o gestionados manualmente por el administrador.
Perfiles de Desarrolladores
Creación y Gestión de Perfiles por el Administrador:
Cada desarrollador tendrá un perfil completo gestionado por el administrador del portal, que incluirá:
Foto de Perfil
Resumen (Resume): Un resumen detallado de su experiencia laboral, habilidades, logros y proyectos destacados.
Habilidades Técnicas: Lenguajes de programación, frameworks, herramientas y tecnologías que domina.
Proyectos Anteriores: Descripción de proyectos relevantes en los que el desarrollador haya trabajado, con enlaces a repositorios o ejemplos.
Experiencia Laboral: Detalles sobre la experiencia profesional, roles ocupados, y duración de cada empleo.
Comunicación con los Desarrolladores
Envío de Mensajes Automáticos:
Un proceso se disparara para el contacto inicial con los desarrolladores a través de WhatsApp, correo electrónico y LinkedIn.
Se enviarán un mensaje de bienvenida a los desarrolladores, informándoles sobre las oportunidades disponibles en el portal y los invitándolos a participar.
Luego cuando haya un interes por su perfil, se enviara otro mensaje.
Todo esto debe tener un panel de gestion de mensajes, y cual developer acepta o no que lo publiquen.
Administrador del Portal
Gestión de Empresas y Candidatos:
El administrador podrá gestionar empresas de búsqueda, candidatos y las solicitudes de búsqueda generadas por las empresas.
Los administradores deben tener acceso completo a todas las solicitudes de las empresas y los candidatos disponibles para recomendar.
Deben poder llevar los cadndidatos presentados a las empresas, con su rate, y su status (presentado, entrevistado, rechazado, o contratado).
Notificaciones y Seguimiento
El sistema debe enviar notificaciones automáticas tanto a las empresas como a los desarrolladores cuando se generen nuevas oportunidades de contacto, propuestas o actualizaciones de estado.
Seguridad y Privacidad
El sistema debe garantizar la seguridad de la información de los usuarios mediante el uso de encriptación para las contraseñas y autenticación segura para el administrador.
Requerimientos No Funcionales
Escalabilidad:
La plataforma debe ser capaz de manejar un número creciente de usuarios y solicitudes sin degradar el rendimiento.
Tiempo de Respuesta:
La plataforma debe tener tiempos de respuesta rápidos, especialmente en la parte del wizard y las recomendaciones de candidatos.
Interfaz de Usuario (ui/ux):
la plataforma debe tener una interfaz intuitiva tanto para los administradores como para las empresas de búsqueda.
Diseño responsive, adecuado para acceso desde dispositivos móviles.
Tecnologías Recomendadas
Frontend:
React.js
Backend:
Node.js con Express.
Base de Datos: MySQL.
Autenticación: JWT para la autenticación del administrador.
Mensajería: Whatsapp api, smtp (para correos electrónicos), linkedin api.
Entregables del Proyecto
Código fuente.
Documentación técnica (arquitectura, APIs, configuración del sistema).
Prazo de Entrega: Não estabelecido