Skip to content

Pleno 1

Objetivo do Nível

Atuar com autonomia técnica em funcionalidades de ponta a ponta, tomando decisões de arquitetura local e garantindo a qualidade do código através de mentoria aos níveis Júnior. Possui visão clara do impacto do design e do QA no desenvolvimento.

Objetivo esperado: Desenvolve uma feature completa (ex: Módulo de Teleconsulta) do zero, definindo Sagas, Mutations e tratando erros de negócio complexos com classes customizadas.

Critérios de Conhecimento

Fundamentos

  • Clean Code: Aplicação prática dos princípios SOLID e DRY.
  • TS Especialista: Mapeamento de tipos complexos, Inferência de tipos em Generics, domínio total de Interfaces vs Types.

React Core

  • Patterns de Reutilização: Domínio total de composição, slots e compound components para criar bibliotecas internas.
  • Portals: Uso de createPortal para modais e overlays complexos.

State

  • State Machines: Noções de como modelar estados complexos (ex: XState) para fluxos de negócio.
  • Redux Saga Avançado: Uso de fork, spawn, all e gerenciamento de concorrência refinado. Ver guia de Redux Saga.

Design Patterns

  • Container-Presenter: Domínio da separação entre lógica (hook) e visual (screen) seguindo o guia de Hooks e Page.
  • Inversão de Controle: Uso de padrões que permitem maior flexibilidade nos componentes do Design System.

Arquitetura

  • Modularização: Capacidade de dividir o sistema em módulos independentes e reutilizáveis.
  • SoC (Separation of Concerns): Aplicação rigorosa em todas as camadas seguindo o guia de SoC.
  • Conceitos: Domínio total de KISS, YAGNI e CI/CD (entendimento do pipeline) em decisões arquiteturais.

Performance/Render

  • Memory Leaks: Identificação e correção de vazamentos de memória em aplicações complexas.
  • Otimização de Asset: Gerenciamento de imagens, fontes e ícones para performance.

Testes

  • TDD (Test Driven Development): Capacidade de iniciar o desenvolvimento guiado pelo guia de TDD em utilitários e regras de negócio.
  • Mocking Strategy: Definir estratégias de mock consistentes para o time.

Rede

  • BFF (Backend for Frontend): Entender a arquitetura conforme o guia de BFF e como consumir dados agregados.
  • Streaming de Dados: Noções de consumo de APIs via stream/chunks.

Segurança

Entregáveis Esperados

  • Documentação técnica de novas funcionalidades complexas.
  • Revisão de código focada em arquitetura e padrões técnicos.
  • Criação de novos componentes base para o Design System.

Como fazer vs Como não fazer

Como fazer

  • Antecipar problemas de performance em features com muitos dados.
  • Colaborar ativamente no Design Handoff.
  • Manter o README e as documentações técnicas atualizadas.

Como não fazer

  • Aceitar Pull Requests que quebrem os padrões de arquitetura sem dar feedback construtivo.
  • Criar soluções "mágicas" ou complexas demais que ninguém consiga manter.
  • Ignorar o custo de manutenção de bibliotecas externas adicionadas ao projeto.