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.
Quais ferramentas e bibliotecas (libraries, frameworks, tools etc.) você utilizou?
Conforme o acordado, utilizei o framework Angular para desenvolver toda a interface do usuário, com auxílio do Angular Material para o CDK Drag&Drop.
NestJS: Para o desenvolvimento do backend, escolhi o framework Node.js, que utiliza conceitos similares ao Angular, como injeção de dependência e modularidade, facilitando a criação de aplicativos escaláveis e testáveis.
Visual Studio Code como editor de código. Escolhi o VSCode porque possui diversas extensões para desenvolvimento web, otimizando várias tarefas.
Por que você optou pela tecnologia X e não pela Y?
O desafio oferecia as tecnologias Angular no frontend e NestJs. Devido à complexidade de adaptar o GraphQL ao projeto, optei por manter o REST, apesar de possuir conhecimento prático em ElasticSearch, que também é uma linguagem NoSQL.
Quais princípios da engenharia de software você utilizou?
Ao desenvolver o projeto de Kanban, busquei adotar alguns princípios de engenharia de software para garantir a qualidade, a manutenibilidade e a eficiência do código. Um dos principais princípios que apliquei foi o Princípio da Responsabilidade Única, onde cada classe ou módulo deve ter apenas uma responsabilidade.
Desafios e problemas que você enfrentou e como você os resolveu?
Enfrentei diversos desafios durante o projeto. Inicialmente, com o Angular, dei o pontapé inicial para estudá-lo, mas acabei parando no meio do caminho. No entanto, este projeto me fez perceber o potencial do Angular quando combinado com um backend poderoso. Inicialmente, tive dificuldades em encontrar tutoriais claros em português, então recorri a recursos em inglês. Como já tinha experiência em HTML/CSS e JS, não tive dificuldades em estilizar o projeto. Além disso, minha experiência em Java me ajudou a entender o NestJS de forma mais simples, apesar de não ter usado anteriormente.
O que você entende que pode ser melhorado e como fazer isso?
Daria mais flexibilidade à aplicação, permitindo adicionar novas colunas, editar, mudar de posição e criar quadros, possibilitando que o usuário navegue entre eles. Implementaria a capacidade de excluir e editar cards, o que exigiria novos endpoints e validações no backend, além de novos componentes. Seria importante implementar uma tela de login/cadastro, utilizando JWT para autenticação, especialmente se várias pessoas utilizarem a aplicação simultaneamente. Essas seriam as principais melhorias visando facilitar o acesso e a usabilidade contínua.
Sobre você
Nasci em Campo Formoso/BA e mudei para Salvador ainda bebê, onde resido atualmente. Tenho 23 anos e estou no 4º semestre do curso de Análise e Desenvolvimento de Sistemas na Faculdade Visconde de Cairu. Comecei a trabalhar aos 19 anos como auxiliar administrativo na LG, porém fiquei apenas 3 meses devido a cortes na empresa. Logo após sair da LG, comecei a trabalhar no Mc Donald's, onde fiquei por 1 ano e 11 meses, sendo promovido para treinador. Durante meu período no Mc Donald's, senti a necessidade de estudar para mudar de área e foi quando descobri o desenvolvimento de software em 2022. Adquiri o curso de B7 Web de desenvolvimento Full Stack, onde estudei HTML/CSS, JS, React, Php, Docker e outras tecnologias. Decidi focar em Java, o que me levou a um estágio na Consiste Consultoria e Sistemas Ltda, onde tive contato com o backend de forma abrangente e com o frontend, que é baseado em Angular. Hoje, moro sozinho e arco com todos os custos, o que me leva a fazer entregas por aplicativo, dificultando a finalização do projeto. No entanto, estou me aprimorando em todas as áreas para mudar minha vida.
e-mail: joaovitorsantos103@hotmail.com
telefone: 71986547824