Seja bem-vindo(a)! Este é o desafio técnico para a vaga de Desenvolvedor(a) Full Stack. O objetivo é avaliar suas habilidades práticas com as tecnologias que usamos no dia a dia.
Criar uma aplicação full stack de gerenciamento de tarefas com as seguintes funcionalidades:
- Cadastro, listagem, edição e exclusão de tarefas
- Autenticação com JWT (login e logout)
- Atualização em tempo real (ex: via polling ou optimistic updates)
- Interface moderna e responsiva
- React com Hooks e Context API
- TypeScript
- TailwindCSS
- React Query ou SWR
- Vite ou Webpack (preferencialmente Vite)
- Integração com a API (REST)
- Node.js com NestJS (estrutura modular)
- TypeScript
- Autenticação com JWT
- TypeORM
- Validações com
class-validator
- Swagger para documentação da API
- MySQL (preferencial)
- Redis (caso use cache ou filas)
- Docker para desenvolvimento
- Hospedagem local (com Docker)
-
Login / Logout
- JWT baseado em email e senha
- Middleware de proteção de rotas no backend
-
CRUD de Tarefas
- Título
- Descrição
- Status (Pendente, Em Andamento, Concluída)
- Data de criação e atualização
-
Listagem e Filtros
- Exibir tarefas por status
- Ordenar por data
-
Feedback visual
- Toasts ou alerts ao salvar, editar e deletar tarefas
-
Documentação da API
- Swagger acessível em
/docs
- Swagger acessível em
Serão considerados os seguintes critérios:
- Estrutura e organização do código
- Boas práticas com React e NestJS
- Clareza na modelagem de dados
- Qualidade visual e responsividade
- Uso correto do TypeScript
- Implementação de autenticação segura
- Uso eficiente de ferramentas de data fetching (React Query/SWR)
- Uso de Docker (como diferencial)
- Faça um fork deste repositório
- Implemente a solução
- Adicione um
README.md
com:- Instruções de instalação
- Como rodar o projeto localmente
- Envie o link do repositório para avaliação
Se tiver qualquer dúvida, pode nos contatar.
Boa sorte! Estamos animados para ver seu talento em ação 🚀