Caso de estudo: o portal de gestão da empresa
Uma nova empresa em 2025 precisava de contratação, onboarding, contratos, registo de horas, férias, faturação e contabilidade desde o primeiro dia, com um orçamento que excluía a compra de sete produtos. Construímos uma única plataforma para tudo isso, e gerimos a empresa nela.
O problema
As ferramentas de RH, de registo de horas e de faturação disponíveis no mercado teriam custado cada uma, por mês, mais do que todo o orçamento, e nenhuma delas compreendia a legislação ucraniana sobre prestadores, a assinatura eletrónica através de um banco local nem a forma como as horas passam de um registo de tempo para uma fatura de cliente. A alternativa eram folhas de cálculo, que deixam de funcionar na semana em que alguém está de férias.
Decidiu-se construir a plataforma na stack que vendemos, tratá-la como um produto real com as mesmas regras de engenharia que aplicamos ao trabalho dos clientes e deixar que seja a referência sobre a qual os nossos clientes podem perguntar.
O que faz
Contratação
Vagas publicadas em plataformas de emprego, triagem de candidatos através de um bot do Telegram com uma biblioteca de perguntas, entrevistas técnicas e externas com marcação, acompanhamento do período experimental.
Onboarding
Um fluxo orientado que recolhe documentos de identificação, os verifica com serviços de IA na cloud, confirma a grafia do nome, reúne contactos e equipamento e abre contas através do fornecedor de identidade.
Contratos e documentos
Contratos de prestação de serviços e NDA gerados em PDF a partir de modelos, enviados para assinatura eletrónica e guardados como registo assinado. Os contratos com clientes e as statements of work seguem o mesmo percurso.
Tempo e férias
Horas por atribuição de projeto, sincronizadas a partir de registos de tempo externos, editáveis pelo especialista; férias e baixa por doença com limites e aprovações por contrato.
Remuneração e faturação
Faturas mensais de especialistas e faturas de clientes produzidas a partir das mesmas horas registadas, taxas de câmbio do banco central, pagamentos pontuais refaturados, um arquivo de faturas assinadas.
Contabilidade e conformidade
Lembretes de declarações fiscais e de pagamentos, importação de extratos bancários, contactos de emergência e um modelo de permissões com segurança ao nível da linha e pedidos de elevação de privilégios para dados financeiros.
Notificações
Cartões de chat e de mensagens para cada evento sobre o qual uma pessoa precisa de agir, com a regra de que nenhuma mensagem leva valores financeiros; estes ficam atrás do início de sessão.
Como é construída
Backend
.NET 10 em Azure Functions, vertical slices com CQRS através de um mediator gerado por source generator, validação em cada fronteira, EF Core com migrações versionadas.
Dados
Azure SQL com segurança ao nível da linha por cliente e colunas Always Encrypted para dados pessoais e financeiros, com as chaves guardadas num cofre gerido.
Frontend
Angular com componentes standalone, signals e deteção de alterações sem zone.js, um design system em Tailwind e um cliente de API gerado a partir do documento OpenAPI.
Entregas
GitHub Actions com credenciais federadas, Terraform para todo o ambiente, alterações à base de dados entregues como migrações no pipeline, CodeQL e análise de dependências.
Regras que a moldaram
- Prioridades numa ordem fixa: custo, depois segurança, depois modernidade, depois desempenho, depois alinhamento com a conformidade. Cada conflito é resolvido pela prioridade mais alta.
- O fornecedor de identidade é a fonte de verdade dos dados das pessoas; a base de dados é uma cache desses dados e o único local para salários, dados de contratação e permissões.
- Os dados sensíveis nunca chegam a uma coluna simples, nem sequer por um instante. A encriptação é declarada em mais do que um local e validada no arranque.
- Cada correção de bug traz um teste para a sua classe, colocado na camada de aplicação mais abrangente que a consiga ver, muitas vezes um teste de arquitetura e não um teste unitário.
- O chat é uma superfície de apresentação não fiável. As notificações indicam o evento e ligam à página protegida por autenticação; os montantes e as tarifas nunca saem do produto.
Porque isto lhe interessa
Não estamos a descrever uma demonstração. Esta plataforma gere uma empresa real todos os dias, o que significa que convivemos o tempo suficiente com as nossas próprias decisões de arquitetura, as nossas próprias migrações e os nossos próprios alertas para saber quais estavam certos. É esse o mesmo discernimento que trazemos para o produto da sua empresa.
Quer algo semelhante para a sua empresa?
Descreva os processos que hoje gere em folhas de cálculo. Recebe um plano escrito, uma proposta de arquitetura e uma estimativa no prazo de um dia útil.