Govtech

SaaS de processos seletivos governamentais

Cada edital público traz regras, formulários e critérios próprios, o que costuma exigir desenvolvimento a cada abertura. O órgão passou a publicar o processo com o formulário que ele mesmo define, e as candidaturas entram pelo canal público já sujeitas aos critérios daquele edital.

Stack

NestJSMongoDBNext.jsGCP

39 mil processos seletivos, 117 mil vagas, base de 2,1 milhões de candidatos.

O desafio

Cada edital público tem regras, formulários e critérios próprios, e o modelo tradicional resolve isso com desenvolvimento sob medida a cada abertura. Esse caminho custa tempo de equipe técnica e não sustenta um órgão que publica processos seletivos com frequência, porque cada novo edital vira um projeto à parte, da definição do formulário à aplicação dos critérios de elegibilidade. O risco era acumular uma fila de demandas represada atrás de cada decisão de política pública, atrasando a abertura de vagas que dependiam do sistema estar pronto. Era preciso separar a definição das regras, que muda a cada edital, da infraestrutura que processa a candidatura, que deveria permanecer estável.

A abordagem

  • 01

    Motor de formulários configurável pelo próprio órgão, sem depender de deploy a cada edital.

  • 02

    Critérios de cada edital versionados e aplicados no canal público de inscrição.

  • 03

    Fluxo cobrindo o ciclo completo, da inscrição até a prestação de contas.

  • 04

    Backend em NestJS sobre MongoDB, frontend em Next.js, operação em GCP.

A arquitetura

Arquitetura da plataforma

O resultado

  • 39 mil processos seletivos publicados na plataforma
  • 117 mil vagas ofertadas
  • Base de 2,1 milhões de candidatos

Frente aplicada

Desenvolvimento Full-Stack

O sistema completo, escrito para outra equipe conseguir manter.

Ver a frente completa →
Engenheiro trabalhando em uma estação de trabalho
Próximo passo

Traga o problema para um engenheiro.

A primeira conversa é com um engenheiro e não tem custo. Se o projeto não for adequado à OmniTech, dizemos isso logo no início e, quando possível, indicamos quem atende.