Início

Desenvolvimento Full Stack • 2014 - 2017

Welldoing.org

Unificando um Diretório de Terapeutas e um Blog em uma única plataforma October CMS com um mecanismo de correspondência algorítmica personalizado

O Welldoing.org é um diretório de terapeutas e uma plataforma de conteúdo sobre saúde mental líder no Reino Unido. O desafio era fundir dois sistemas fragmentados — um diretório básico e um blog WordPress separado — em uma única plataforma SaaS coesa.

Dashboard Unificado do Welldoing.org

01. As Exceções

O negócio enfrentava uma dívida técnica crítica e barreiras de UX que impediam o crescimento. Operar em sistemas desconectados criava atrito para os usuários que tentavam encontrar ajuda:

  • Arquitetura Fragmentada: Usuários lendo artigos não tinham um caminho direto para agendar com um terapeuta. Os dois bancos de dados não se comunicavam.
  • Atrito na Correspondência: Encontrar o terapeuta “certo” era um processo manual de tentativa e erro para usuários vulneráveis.
  • Desconexão no Agendamento: Os terapeutas gerenciavam seus próprios sistemas de agendamento separados, levando à perda de consultas e receita.

02. A Arquitetura

1. Unificação da Plataforma (October CMS)

Eu arquitetei uma migração completa, fundindo o blog e o diretório em uma única plataforma unificada usando October CMS (Laravel). Isso nos permitiu construir modelos personalizados de “Terapeuta” que se vinculavam diretamente a tags de conteúdo, criando uma jornada de usuário perfeita da leitura ao agendamento.

class Therapist extends Model {
    public $belongsToMany = [
        'specialties' => ['Welldoing\Directory\Models\Specialty']
    ];
}

2. O Algoritmo de Correspondência

Desenvolvi um sistema personalizado de “Correspondência de Terapeutas”. Este assistente guia os usuários por uma série de perguntas de diagnóstico e usa a localização deles para filtrar os resultados. A lógica pontua os terapeutas com base na relevância para as necessidades específicas do usuário (ex: TCC, Psicanálise) e proximidade, retornando as melhores correspondências instantaneamente.

3. Integração de Agenda e Stripe

Para fechar o ciclo, construí um Sistema de Agenda personalizado integrado diretamente na plataforma.

  • Disponibilidade em Tempo Real: Os terapeutas gerenciam seus horários em um painel personalizado.
  • Agendamento Perfeito: Os usuários podem reservar um horário diretamente dos resultados da pesquisa.
  • Pagamentos Stripe: Integrei a API do Stripe para lidar com pagamentos seguros, automatizando os repasses aos terapeutas.
// Booking Logic Simplified
public function bookSlot($user, $therapist, $slot) {
  Stripe::charge($user->token, $slot->price);
  $this->diary->reserve($therapist->id, $slot->time);
  return "Appointment Confirmed";
}

03. Resultado do Sistema

A unificação transformou o Welldoing.org de um blog em uma plataforma SaaS funcional.

  • Jornada do Usuário Unificada: Os usuários podem ir da leitura de um artigo ao agendamento de uma consulta confirmada em menos de 2 minutos.
  • Geração de Receita: O sistema automatizado de agendamento e pagamento criou um novo fluxo de receita para a plataforma.
  • Escalabilidade: A stack October/Laravel forneceu uma base robusta para anos de crescimento.