[DÚVIDA] O que as empresas esperam de um teste técnico para vaga Pleno?
No início deste mês caí no Layoff, todo o meu time foi cortado e eu era PJ. Então agora estou correndo contra o tempo na busca de um novo emprego com PHP ou .NET.
Eu tive a oportunidade de fazer 2 testes técnicos até o momento, no estilo Take Home de 7 dias. Como faz um tempo que não procuro emprego, segue a dúvida:
O que um recrutador espera ver em um teste no sentido arquitetural da aplicação? Os testes costuman ter requisitos simples, com poucas regras de negócio. Por exemplo: um CRUD Todo com autenticação.
Ao mesmo tempo que é simples, a descrição dos testes costumam pedir SOLID, KISS, Clean Code, Testes, Arquitetura em camadas. Mas outros já pedem que também aplique conceitos de DDD (Domain Driven Design).
Então, se a descrição pede o princício KISS (Keep It Simple, Stupid) para um aplicativo tão simples, aplicar coisas como monolito modular com CQRS e Event Sourcing é um exagero. Na vida real a maioria não começaria um MVP assim.
Devo construir um monolito daqueles com um modelo de domínio anêmico, com classes Services
para lidar com as regras de negócio e Repositories
para persistência?
Devo construir um monolito modular, com módulos isolados com o próprio banco/schema e comunicação via Gateway/Facade e/ouEventos de integração?
Se eu fizer simples e o meu concorrente fizer um monolito modular? Ou um microserviço orientado a eventos?
Será que tudo vai depender da cabeça de quem irá avaliar?
Enfim, eu prefereria fazer simples, mas aí meu concorrente pode fazer complexo e o avaliador pensar que eu só sei o simples.
Mas se eu fizer complexo, pode ser que o avaliador considere muito exagerado.
Qual é a experiêcia de vocês?
Obrigado!