Pular para o conteúdo

Portfólio

Leidejane da Rosa

Desenvolvedora Full Stack

Desenvolvo com React, TypeScript e Python — aberta a uma vaga remota ou a projetos freelance. Sete anos empreendendo antes da tecnologia me ensinaram a pensar no problema do cliente, não só no código.

01 — Sobre mim

Eu sou a Leidejane,desenvolvedora Full Stack.

Transformo ideias em soluções digitais, unindo tecnologia, lógica e um olhar atento às pessoas. Gosto de entender o que acontece por baixo do framework — e construir soluções que fazem sentido.

Retrato de Leidejane da Rosa
  • Hoje

    2025–atual

    Freelancer em projetos próprios e de impacto social — buscando uma posição plena remota.

  • Clarke Energia

    2023–2025

    Quase 2 anos como full-stack: componentes React no Design System (mais entrega), testes automatizados (menos bugs em produção) e APIs em Python/Flask.

  • Cubos Academy

    2022

    Voltei para a tecnologia pelo bootcamp da Cubos Academy; também atuei como monitora, ajudando pessoas em transição de carreira.

  • Estação Festas

    2013–2020

    Empreendedora: da captação de clientes à logística, decoração do tema, marketing e gestão financeira — tocando o negócio do início ao fim.

  • Formação

    1997–2026

    Onde tudo começou: Técnico em Informática (Visual Basic, Delphi, Access), Gestão de Negócios em 2011 — e agora, Bacharelado em Engenharia de Software, em andamento.

Ferramenta não é engenharia

Experiência

  1. mar 2025 – atual

    Freelancer

    Projetos próprios e de impacto social

  2. abr 2023 – fev 2025

    Desenvolvedora Full-Stack

    Clarke Energia

  3. ago 2022 – mai 2023

    Bootcamp de programação

    Cubos Academy

  4. 2013–2020

    Empreendedora

    Estação Festas

    Decoração de festas infantis — negócio próprio

Educação

Bacharelado em Engenharia de Software
Centro Universitário Cidade Verde — UNICIVE — 2026–2030 (cursando)
Gestão de Negócios
Universidade Braz Cubas — 2011–2013
Técnico em Informática
Colégio Instituto Batista Americano — 1997–2000

Cursos

  • Computação em Nuvem (certificação AWS)

    Escola da Nuvem — out 2026 – mar 2027 (cursando)

  • Desenvolvimento de Software - Full Stack (960h)

    Cubos Academy — ago 2022 – mai 2023

Fluxo de tecnologias

Front-end em React e TypeScript conectado a um back-end em Fastify, que armazena dados em MongoDB — a stack da Faladoria. Um segundo caminho, o back-end em Flask (Python), também armazena em MongoDB — a stack do Sistema de Certificados (FCR).

Front-endBack-endDados
React
TypeScript
Tailwind CSS
styled-components
Zod
Node.js
Express
Fastify
Python
Celery
Flask
MongoDB
PostgreSQL
Redis
  • Cypress
  • Pytest
  • Git
  • GitHub Actions
  • Storybook
  • Playwright
  • CI/CD
  • Clean Code
  • SOLID
  • Acessibilidade
  • Arquitetura

02

Projetos

Os sete projetos abaixo são reais — a maioria é trabalho de cliente ou de impacto social. Nos que ainda são privados, você encontra um trecho real de código ou um link para testar ao vivo; nos que já são públicos, dá para ver o código e o site no ar.

  • 01Público

    Portfólio (este site)

    Este mesmo portfólio — single-page em React 19, pré-renderizado em build-time, com 97% de cobertura de testes.

    CSP com allowlist de hashes (sem unsafe-inline), consentimento de cookies LGPD-compliant, e2e em 3 engines e CI com Lighthouse, testes e scan de segredos.

    • React
    • TypeScript
    • Vite
    • Tailwind CSS
  • 02Privado

    Faladoria — Backend

    Plataforma de mediação entre usuários do SUS e gestores públicos de saúde, com canal de atendimento via WhatsApp.

    Backend em Fastify integrado à API do WhatsApp (Meta Cloud API), com autenticação própria e armazenamento em MongoDB.

    • React
    • TypeScript
    • Fastify
    • MongoDB
    • WhatsApp
    Ver trecho de código
    requireRole.tsTypeScript
    export function requireRole(
      sessionReader: SessionReader,
      ...allowedRoles: UserRole[]
    ) {
      return async function requireRoleHook(
        request: FastifyRequest,
        reply: FastifyReply,
      ) {
        const result = await sessionReader.api.getSession({
          headers: toWebHeaders(request),
        })
    
        if (!result) {
          return reply.code(401).send({ message: 'Não autenticado.' })
        }
    
        const role = result.user.role as UserRole
        if (!allowedRoles.includes(role)) {
          return reply.code(403).send({ message: 'Acesso negado.' })
        }
        // ...
      }
    }
  • 03Público

    Faladoria — Frontend

    Landing page institucional da Faladoria — Guia do SUS e fluxo completo de conversão para o canal de atendimento via WhatsApp.

    React 19 + React Router 7, WCAG 2.2 AA, Web Vitals reais e Sentry monitorando produção; testes unitários (Vitest), e2e (Playwright) e Lighthouse CI no pipeline.

    • React
    • TypeScript
    • Vite
    • Tailwind CSS
    • React Router
    • Sentry
    Exemplo ao vivoAbrir em nova aba
  • 04Privado

    FCR — Backend

    Geração de certificados em lote (CSV) para cursos e treinamentos, com QR Code de verificação e upload automático para o Google Drive.

    API REST em Flask + MongoDB, Clean Architecture (repositórios, use cases, validação com Marshmallow) — a mesma base usada pelo CLI de geração em massa.

    • Python
    • Flask
    • MongoDB
    Ver trecho de código
    base_repository.pyPython
    class BaseRepository(ABC, Generic[T]):
        """Abstract base repository for data access operations."""
    
        @abstractmethod
        def create(self, entity: T) -> T: ...
    
        @abstractmethod
        def get_by_id(self, entity_id: str) -> Optional[T]: ...
    
        @abstractmethod
        def get_all(self) -> List[T]: ...
    
        @abstractmethod
        def update(self, entity_id: str, entity: T) -> Optional[T]: ...
    
        @abstractmethod
        def delete(self, entity_id: str) -> bool: ...
  • 05Privado

    FCR — Verificador

    Verificador de certificados online — lê o QR Code gerado pelo backend e confirma a validade do certificado.

    Offline-first (Service Worker), 100% testado com Jest, WCAG 2.1 AAA — JavaScript vanilla + Tailwind, sem framework.

    • JavaScript
    • Tailwind CSS
    • Jest

    Ainda em desenvolvimento para ficar público — use o código b749b0f0631029f8bd426b736ee7debd9e208e0911119bb7fb13a9ea8f8ed7b2 para testar a verificação.

    Exemplo ao vivoAbrir em nova aba
  • 06Público

    EMR International

    Landing page institucional para treinamentos de atendimento pré-hospitalar tático.

    React 19 com PWA (service worker via Workbox), monitoramento de erros com Sentry e navegação por teclado com focus lock.

    • React
    • Vite
    • Tailwind CSS
    • Sentry
    Ver trecho de código
    utils/sentry.tsxTypeScript
    Sentry.init({
      dsn,
      environment: import.meta.env.MODE,
      integrations: [
        Sentry.browserTracingIntegration(),
        Sentry.replayIntegration({
          // Privacy: masking habilitado para compliance LGPD/GDPR/HIPAA —
          // previne captura de PII (dados pessoais, médicos, contato)
          maskAllText: true,
          blockAllMedia: true,
        }),
      ],
      tracesSampleRate: 0.1,
      replaysSessionSampleRate: 0.1,
      replaysOnErrorSampleRate: 1.0,
    })
    Exemplo ao vivoAbrir em nova aba
  • 07Público

    Espaço Saúde Bem-Estar

    Site institucional para apresentar serviços, valores e diferenciais de um espaço de bem-estar.

    Lighthouse 100 em acessibilidade, boas práticas e SEO; 98 em performance — site enxuto, do design ao deploy.

    • TypeScript
    • Vite
    • Tailwind CSS
    • Vercel
    Exemplo ao vivoAbrir em nova aba

03 — Perguntas frequentes

  • 01Por que alguns projetos são privados?

    A maioria é trabalho de cliente ou de impacto social, com código sob confidencialidade. Nesses casos deixo um trecho real (sem segredos) ou um link para testar ao vivo, em vez do repositório inteiro.

  • 02Quanto tempo dura um projeto?

    Varia com o escopo — uma landing page institucional fica pronta em poucas semanas; um sistema com regra de negócio própria (autenticação, integração com API externa, banco de dados) leva mais tempo. No início de cada projeto eu dou um prazo real, não uma estimativa genérica.

  • 03Você também faz o design, ou só o desenvolvimento?

    Só o desenvolvimento — não sou designer. As decisões visuais eu tomo com apoio de ferramentas de IA (incluindo o Claude) e referências reais de outros produtos, sempre dentro de um sistema de design consistente. Minha força é a engenharia por trás: arquitetura, acessibilidade, performance.

  • 04Como entro em contato?

    Pelos canais diretos na seção Contato — e-mail, LinkedIn, GitHub ou WhatsApp.

04

Contato

Esses são os melhores caminhos para me encontrar.

Baixar currículo

Usamos cookies só para analytics (Google Tag Manager), e apenas se você aceitar. .

Privacidade

Este site só carrega o Google Tag Manager (analytics) depois que você aceita, na notificação de cookies. Se você recusar, nenhum script de rastreamento é carregado — só os arquivos necessários para o site funcionar (HTML, CSS, JS, fontes).

Sua escolha fica salva no seu navegador (localStorage) e você pode mudar de ideia a qualquer momento pelo link "Preferências de cookies", no fim da página.