Este repositório contém um projeto de Lista de Tarefas (Todo List) projetado para ser utilizado em entrevistas técnicas para candidatos a posições junior de desenvolvimento front-end com foco em React. O objetivo deste teste é avaliar as habilidades práticas do candidato em resolver problemas de codificação em um ambiente colaborativo de pair programming.
Durante a entrevista de 50 minutos, você será solicitado a trabalhar em várias tarefas relacionadas ao código fornecido. A interação é fundamental, e o entrevistador estará presente para guiá-lo através do processo, oferecendo ajuda conforme necessário.
Para executar e trabalhar neste projeto, você precisará ter as seguintes ferramentas e tecnologias instaladas em sua máquina:
- Node.js 18+: O ambiente de execução JavaScript necessário para executar o projeto. Pode ser baixado e instalado a partir de https://nodejs.org/.
- Visual Studio Code (VS Code): Recomendamos o uso do VS Code como editor de código para este projeto, devido à sua ampla aceitação e integração com tecnologias de desenvolvimento web. Disponível em https://code.visualstudio.com/.
- Gerenciador de Pacotes: Yarn, PNPM, ou NPM. Embora o NPM venha instalado com o Node.js, você pode preferir usar Yarn ou PNPM. Escolha o que mais lhe convier para instalar as dependências do projeto.
Aqui estão as tarefas que você será solicitado a realizar.
- Domínio de GIT: Clone o projeto e instale as dependências necessárias.
- Instalação da Dependência: Resolva quaisquer problemas encontrados ao instalar as dependências.
- Estado Local: Crie um estado local usando
useState
para armazenar os dados das tarefas. - Adicionar Tarefa: Implemente a funcionalidade para adicionar uma nova tarefa à lista.
- Validação de Tarefa Vazia: Garanta que não seja possível adicionar uma tarefa vazia à lista.
- Validação de Espaços: Evite a adição de tarefas que contenham apenas espaços.
- Alternar Estado de Conclusão: Permita que o usuário marque uma tarefa como concluída ou pendente.
- Deletar Tarefa: Implemente a funcionalidade para permitir que o usuário delete uma tarefa da lista.
- Desabilitar Botão: O botão "Adicionar" deve ser desabilitado caso não haja valor no campo de input.
Antes da entrevista, é recomendável que você configure o ambiente de desenvolvimento em sua máquina. Siga estes passos:
git clone [email protected]:globocom/todo-list-app.git
cd todo-list-app
yarn install
- React
- Expo
- React Native Web
- Git
- Leia atentamente cada tarefa.
- Faça perguntas sempre que algo não estiver claro.
- Use a documentação oficial das tecnologias envolvidas como referência.
- Lembre-se de que o objetivo é avaliar sua capacidade de resolver problemas e sua interação com o entrevistador, não apenas sua capacidade de escrever código.
Boa sorte! Estamos ansiosos para ver suas habilidades em ação.