Skip to content

Desafio FieldControl #419

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 1 commit into from
Closed

Conversation

Thiagoo777
Copy link

Desafio FieldControl feito!

Detalhamento das decisões de desenvolvimento
Framework, linguagem e ferramentas
Para o desenvolvimento deste projeto, utilizei:

Frontend:
--Angular 17 com Angular CLI — estrutura modular e organizada para SPAs.
--TypeScript — para maior robustez, tipagem estática e melhor legibilidade.
--Angular Material — para componentes visuais e responsividade.
--RxJS — para controle de fluxo reativo e assincronismo.

Backend:
--NestJS — framework Node.js baseado em TypeScript com arquitetura modular e suporte nativo para testes.
--PostgreSQL — banco de dados relacional.
--TypeORM — ORM utilizado para integração entre o NestJS e o banco de dados.

Outros:
--JWT (JSON Web Token) — para autenticação.
--Git e GitHub — versionamento de código e colaboração.

Tecnologia X vs. Y
--Optei por utilizar NestJS em vez de outras alternativas como Express puro por conta de:
--Arquitetura baseada em módulos, ideal para projetos escaláveis.
--Integração nativa com TypeORM, validação e autenticação.
--Suporte robusto para testes unitários.
--No frontend, escolhi o Angular em vez de React ou Vue porque:
--Já possuo familiaridade com Angular.
--O Angular fornece uma estrutura mais opinativa, ideal para times e projetos maiores.
--Suporte nativo a SSR (mesmo que optei por remover depois por questões técnicas de localStorage).

Princípios de Engenharia de Software utilizados
--Modularidade — código organizado em módulos como auth, user, etc.
--Responsabilidade Única (SRP) — cada serviço e componente tem uma função clara.
--Injeção de Dependência — especialmente com NestJS e Angular.
--Boas práticas REST — estrutura limpa e semântica nas rotas da API.

Desafios e problemas enfrentados
--Deploy com SSR no Angular: inicialmente tentei usar Server Side Rendering, mas enfrentei erros com localStorage durante o prerender, pois ele não está disponível no ambiente de servidor. A solução foi remover o SSR e focar em SPA.
--Integração com backend em produção: tentei subir o backend na Railway e usar o domínio no frontend, mas tive problemas com o environment.ts e CORS. Resolvi testando localmente com localhost.

Melhorias futuras
--Deploy completo do backend: resolver as pendências de variáveis de ambiente e subir com Docker ou Railway/Vercel.
--Login em tempo real com feedback visual e validação mais robusta.
--Testes unitários e e2e mais completos — especialmente para auth e user.
--Painel administrativo e permissões — controle de acesso baseado em roles.
--Responsividade completa e acessibilidade no frontend.

Sobre você

Queremos te conhecer um pouco melhor, conte um pouco sobre você.

Olá, meu nome é Thiago, tenho 19 anos e nasci em São José do Rio Preto - SP. Meu primeiro contato com a programação foi na escola PIO X, por meio de um curso profissionalizante. Desde então, nunca parei de estudar e praticar.
Atualmente, estou matriculado no curso de Análise e Desenvolvimento de Sistemas (ADS) na UNIP, e também faço um curso de Power BI no SENAI. Essa será minha primeira oportunidade de trabalho na área.
Meus primeiros projetos foram simples, como conversores de temperatura, sites e templates. Este projeto, no entanto, foi meu primeiro grande desafio, e me senti animado do início ao fim durante o desenvolvimento.
Estou empolgado para conhecer o ambiente de trabalho e poder fazer parte da equipe.


Ah, deixe seu e-mail ou telefone para entrarmos em contato com você :)

E-mail: [email protected]

Desafio FieldControl feito!
@Thiagoo777 Thiagoo777 changed the title Add files via upload Desafio FieldControl Apr 7, 2025
@Thiagoo777 Thiagoo777 closed this Apr 24, 2025
@Thiagoo777 Thiagoo777 reopened this Apr 24, 2025
@lfreneda
Copy link
Member

Olá @Thiagoo777,

Agradecemos sinceramente pelo tempo e dedicação que você investiu ao participar do nosso processo seletivo e na resolução do desafio proposto pela Field.

Esperamos que a experiência tenha sido positiva e que o teste tenha proporcionado algum aprendizado prático ao longo do caminho.

No momento, optamos por candidatos mais alinhados aos requisitos da posição.

Reforçamos que essa decisão não diminui a qualidade da sua entrega nem o seu potencial.

Reconhecemos seu esforço e ficaremos felizes em considerar sua candidatura em futuras oportunidades que estejam mais aderentes ao seu perfil.

Valeu,

@lfreneda lfreneda closed this May 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants