Minhas Responsabilidades no Projeto
Como desenvolvedor Full Stack neste projeto, concentrei meus esforços principalmente na construção da arquitetura back-end e na integração com o front-end. Minhas principais contribuições foram:
Desenvolvimento do Back-end
-
Arquitetura MSC: Implementei toda a estrutura back-end seguindo o padrão Model-Service-Controller (MSC) para garantir organização e escalabilidade.
-
Sistema de Autenticação: Desenvolvi o sistema completo de autenticação utilizando JWT (JSON Web Tokens) com criptografia de senhas via Bcrypt.
-
API RESTful: Criei todas as rotas da API para manipulação de projetos, usuários e dados geográficos, seguindo as melhores práticas REST.
-
Banco de Dados: Projetei e implementei o esquema do banco de dados PostgreSQL, incluindo relações entre tabelas e queries otimizadas.
-
Validações: Implementei validações robustas em todas as camadas para garantir a integridade dos dados.
Integração Front-end/Back-end
-
Consumo de API: Configurei todas as chamadas HTTP do front-end (React) para o back-end, tratando erros e respostas.
-
Gerenciamento de Estado: Implementei o armazenamento do token JWT e o fluxo de autenticação no cliente.
-
Formulários: Desenvolvi a lógica de submissão de formulários com validações sincronizadas com o back-end.
Contribuições no Front-end
-
Componentes Reutilizáveis: Auxiliei na criação de componentes React para formulários e exibição de dados.
-
Tratamento de Erros: Implementei feedbacks visuais para erros retornados pela API.
-
Páginas de Administração: Participei do desenvolvimento das telas de gerenciamento de usuários e projetos.
Desafios Técnicos Superados
Durante o desenvolvimento, enfrentei e resolvi diversos desafios técnicos:
-
Segurança: Implementei proteções contra ataques comuns (SQL injection, XSS) e garantia de que dados sensíveis fossem adequadamente protegidos.
-
Performance: Otimizei queries complexas no banco de dados para lidar com grandes volumes de dados geográficos.
-
Sincronização: Garanti que as atualizações feitas por múltiplos usuários fossem refletidas em tempo real para todos os clientes.
-
Documentação: Criei documentação detalhada da API para facilitar a integração com o front-end.
×
Tecnologias que Utilizei
- Node.js
- TypeScript
- Express
- JWT
- Bcrypt
- PostgreSQL
- Prisma ORM
- React
- Axios
- Git/GitHub