Desafio Kanban - Murilo Zanco#490
Open
murilozancodev-sys wants to merge 3 commits intoFieldControl:masterfrom
Open
Desafio Kanban - Murilo Zanco#490murilozancodev-sys wants to merge 3 commits intoFieldControl:masterfrom
murilozancodev-sys wants to merge 3 commits intoFieldControl:masterfrom
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🚀 Desafio Kanban - Field
Sistema Kanban full-stack desenvolvido como desafio técnico, utilizando NestJS no backend e Angular (standalone components) no frontend.
O objetivo do projeto foi construir uma aplicação organizada, escalável e com boas práticas, focando na modelagem do domínio e nas regras de negócio de um sistema de gerenciamento de tarefas baseado em colunas.
📌 Visão Geral
A aplicação permite:
O foco principal foi a organização da arquitetura e a clareza do código, priorizando separação de responsabilidades e boas práticas.
🎥 Vídeo de Apresentação
https://www.loom.com/share/81972096f20c46d19ed7aa1022a7bb15
🧠 Decisões Técnicas
🔹 Backend — NestJS
Escolhi o NestJS por sua arquitetura modular, forte integração com TypeScript e suporte nativo a:
A estrutura foi organizada por módulos, separando claramente:
Foram utilizados:
class-validatorpara validaçãoValidationPipeglobalNotFoundExceptioneBadRequestExceptionpara tratamento adequado de erros🔹 Frontend — Angular
O frontend foi desenvolvido com:
ngModelO foco foi manter o frontend simples, funcional e organizado, garantindo:
🧪 Testes
O backend possui testes unitários utilizando Jest, cobrindo:
Para rodar os testes:
cd backend
npm install
npm run start:dev
Servidor rodando em:
http://localhost:3000
Frontend:
cd frontend
npm install
ng serve
Aplicação disponível em:
http://localhost:4200
:construction_site: Estrutura do Projeto
backend/
├── boards/
├── cards/
├── dto/
└── tests/
frontend/
├── board/
├── services/
└── app.component
A estrutura foi pensada para facilitar manutenção futura e escalabilidade.
🔎 Possíveis Melhorias Futuras
Com mais tempo, seriam adicionadas:
Persistência com banco de dados (PostgreSQL)
Autenticação com JWT
Proteção de rotas no frontend
Deploy completo em ambiente cloud
Testes e2e
Drag and drop entre colunas
A arquitetura atual já permite essas evoluções sem grandes refatorações.
👨💻 Autor
Murilo Zanco Fria
Jovem Aprendiz na Seara Alimentos (Logística) em transição para a área de desenvolvimento de software, cursando Análise e Desenvolvimento de Sistemas (UNINTER).
Tenho grande interesse em backend, arquitetura de software e segurança da informação, e venho me aprofundando também em frontend com o objetivo de me tornar um desenvolvedor full stack, capaz de compreender o sistema de ponta a ponta.
Minha principal motivação são os desafios e a resolução de problemas, gosto de estar constantemente sendo desafiado e testado, pois isso ajuda MUITO na evolução. Acredito fortemente em melhoria contínua, então para mim, o fato de algo estar funcionando não significa que não possa evoluir, tanto em organização, performance ou em alguma experiência do usuário.
Conheci a Field através de um amigo que trabalha na empresa e fiquei muito interessado pela cultura de valorização de "jovens talentos", abertura a idéias e estímulo à criatividade. São pontos que se conectam diretamente com meu perfil, pois estou sempre buscando aprender, propor melhorias e crescer junto com o time, independente do meu cargo ou função.
Atualmente busco uma oportunidade para demonstrar minha dedicação, capacidade técnica e vontade de evoluir profissionalmente contribuindo de forma consistente para a equipe.
🔗 LinkedIn: https://www.linkedin.com/in/murilo-zanco-5b1957371/
💻 GitHub: https://github.com/murilozancodev-sys
✉️ murilozanco.dev@gmail.com
📞 (17) 992316656
🎯 Considerações Finais
O foco deste projeto foi demonstrar:
Organização de código
Clareza arquitetural
Uso correto das boas práticas