Contratação de Serviço de Programador(a) Avançado Python/Shiny/GeoPandas

📋 1. Sobre o Serviço

Buscamos um(a) programador(a) avançado ou uma equipe para implementar as última etapa da Prova de Conceito (PoC) até fevereiro de 2026 do webapp DiversiPlant:

  1. Integração de grandes bases de dados botânicas e geográficas em Python utilizando Shiny e GeoPandas
  2. Implementação de funcionalidades interativas e visualização baseadas em localização e tradução (nomes de plantas: científicos e comuns em português e inglês)

🎯 2. Objetivo do Projeto 

Desenvolver um webapp de código aberto (DiversiPlant) para escolher policultivos de plantas úteis para diversificação agroflorestal e restauração ecológica.

⚖️ 3. Modalidades de Contratação 

Opções aceitáveis (desde que atenda as exigências do CNPq conforme Edital Universal 018-2021RN-008/2018PO-914/2022; p.ex. vedados empregados públicos):

  1. Pessoa Física (CPF) – Autônomo
    • Emissão de nota fiscal de serviços (RPA)
    • Declaração de não-vinculação empregatícia
  2. Pessoa Jurídica (CNPJ)
    • Microempreendedor Individual (MEI) ou Microempresa (ME) ou Empresa de Pequeno Porte (EPP)
    • Regularidade fiscal e trabalhista
    • Capacidade técnica comprovada
  • Prazo para entrega do produto final: Sexta-feira 20/02/2026
  • Regime: Remoto (horário flexível com reuniões síncronas)
  • Carga horária: Livre (cumprimento dos serviços contratados)
  • Formalização: Contrato de prestação de serviços
  • Possibilidade de coautoria em publicações científicas, técnicas e de divulgação ampla

🛠 4. Requisitos Técnicos Obrigatórios

  • Conhecimento aprofundado em Python (não apenas scripting básico):
    • Facilidade com pandas e manipulação de dados.
    • Habilidade com tipos numéricos, dados faltantes e junções/fusões entre várias tabelas.
    • GeoPandas (manipulação avançada de dados geoespaciais).
  • Experiência em Python + Shiny (ou pelo menos forte experiência de webapp / programação reativa em Python):
    • Compreensão da estrutura existente da aplicação Shiny (inputs, outputs, expressões reativas) e capacidade para modificá-la e reimplementá-la de forma segura.
  • Versionamento Git/GitHub e fluxos de trabalho colaborativos:
    • Conhecimento e facilidade para trabalhar com branches, pull requests, revisão e documentação de código.
  • Noções básicas de implementação e DevOps para dashboards:
    • Familiaridade com implementação de Python web apps em Linux (p.ex. uvicorn, Nginx reverse proxy, gestão de ambiente/condas).
    • Capacidade de debugging problemas num servidor remoto e atualizar uma aplicação em execução.
  • Mindset para transformação de dados:
    • Não apenas de ajustes de UI – deve sentir-se à vontade para ler e modificar os scripts para transformação de dados subjacentes para acomodar alterações de esquema.
  • Inglês técnico: compreensão de nuances de documentação informática

📊 5. Habilidades Desejadas

  • Familiaridade com conceitos ecológicos de espécies botânicas (p.ex. ocorrência, envelope climático, biomas, formas de crescimento, etc) para modelagem e sugestão de espécies possíveis de cultivar em uma dada região.
  • Experiência com web scraping ou integração de APIs de fontes botânicas/ecológicas confiáveis, para auxiliar na tradução e harmonização de nomes de plantas (científicas, em português e inglês).
  • Familiaridade com dados espaciais (GeoPandas ou similar) e filtragem baseada na localização.
  • Capacidade de ler código R básico (principalmente para compreender workflow antigo e desenvolver rotinas de acesso aos dados disponibilizados via pacotes do R), mesmo que a nova implementação seja em Python.
  • Experiência com dados climáticos (p.ex. ERA5, WorldClim, etc.) para combinar com dados geoespaciais para a filtragem refinada de espécies adaptadas ao clima da região selecionada.
  • Experiência com APIs geoespaciais e visualização interativa de mapas.
  • Processamento paralelo/otimização.

📝 6. Escopo

Tarefas transversais:

  1. Implementação das funcionalidades de compilação, processamento e visualização de dados conforme já desenhados em Figma pela equipe DiversiPlant.
  2. Otimização de performance para grandes volumes de dados.
  3. Documentação técnica para desenvolvimento colaborativo.

Etapas:

Dependendo das propostas recebidas, os elementos incluídos e detalhes de implementação podem ser ajustadas em comum acordo com a parte contratada:
1) Integração de dados das diferentes fontes:
1a) Implementar uma rotina de integração automatizada de variáveis específicas das seguintes bases de dados com checagem de erros e desambiguação de identidades de espécies (p.ex. baseado no pacote WorldFlora do R), e atualização posterior automatizada: REFLORA, GIFT, WCVP, WFO, WCUPS, Agroforestry Species Switchboard 4.0, Praticantes.
1b) Limpar código para leitura robusta e eficiente e geração de mensagens de erro amigáveis ​​para o usuário, em vez de rastreios de pilha.
1c) Adicionar comentários e documentação simplificada para facilitar o trabalho de futuros colaboradores.
2) Implementar filtragem de espécies baseadas na adaptação ao clima local:
2a) Relacionar a distribuição de espécies com as condições climáticas:
  1. Cruzar os polígonos das ecoregions.appspot.com com a distribuição observada de angiospermas+gimnospermas (GBIF + outras fontes) para gerar listas de espécies climaticamente adaptadas (nativas + não-nativas) a cada bioma; OU
  2. Alternativamente, cruzar WorldClim com a distribuição observada de angiospermas+gimnospermas para gerar envelopes climáticos de espécies herbáceas e arbustivas para diretamente para gerar listas de espécies adaptadas (nativas + não-nativas) a cada localidade conforme condições climáticas definidas via WorldClim (>80% das espécies arbóreas já contribuído pelo CIFOR-ICRAF via TreeGOER).
2b) Implementar a visualização do mapa ecoregions na aba Localização do DiversiPlant com marcador da coordenada ou ecorregião selecionada.
2c) Implementar no DiversiPlant a filtragem de espécies herbáceas, arbustivas e arbóreas climaticamente adaptadas para qualquer coordenada geográfica terrestre ou ecorregião sem cobertura de gelo.
3) Implementar filtragem de espécies nativas e endêmicas: 
Implementar no DiversiPlant a filtragem de espécies nativas e endêmicas para qualquer localidade conforme ‘país botânico’ do WCVP.
4) Ampliar o nº de espécies com nomes comuns confiáveis:
4a) Sistematicamente associar nomes científicos com nomes comuns português e inglês, usando fontes confiáveis (webscraping de bases de dados botânicas, agronômicas, silviculturais, farmacológicas confiáveis via API e bases bibliográficas científicas), p.ex. usando a name matching facility do pacote WorldFlora do R.
4b) Implementar opção de alternar os nomes comuns entre português e inglês.
4c) Implementar opção de alternar toda UI entre português e inglês.
5) Implementar visualização estilizada do policultivo em time loop animado: 
Implementar gráfico animado em time loop com um ícone por espécie selecionada (mesmo ícone para a mesma forma de crescimento), no qual cada ícone redimensiona conforme seu crescimento em altura até sua altura máxima.

📄 7. Documentação Solicitada

A) Documentos Obrigatórios no Envio da Proposta:

  1. Currículo/Portfólio com experiência relevante
  2. Proposta comercial detalhada:
    • Valor hora
    • Forma de faturamento (notas fiscais)
    • Prazo estimado por etapa
  3. Link para repositórios Git (projetos Shiny/GeoPandas)
  4. Disponibilidade (horas semanais por profissional envolvido)
  5. Cases de sucesso com detalhamento técnico dos profissionais envolvidos

B) Documentos Obrigatórios para Contratação:

Comprovação de regularidade fiscal:

  • MEI: Certificado de condição, comprovante de DAS; ou
  • CNPJ: Contrato social, certidões negativas, inscrição municipal + estudual + federal, FGTS, CNDT

✅ 8. Critérios de Seleção

  • Experiência comprovada com stack tecnológica
  • Qualidade de portfólio/repositórios
  • Adequação da metodologia proposta
  • Capacidade de entrega no prazo
  • Clareza na proposta comercial
  • Experiência com projetos de pesquisa/acadêmicos

📅 9. Cronograma do Processo

  • Prazo para envio de propostas: Sexta 09/01/2026
  • Análise de propostas: Até segunda 12/01/2026
  • Entrevistas técnicas: Terça 13/01/2026
  • Apresentação de documentação fiscal: Quarta 14/01/2026
  • Assinatura de contrato: Quinta 15/01/2026
  • Pagamento da parcela inicial e início da implementação: Sexta 16/01/2026
  • Relatoria parcial dos avanços: Sexta 30/01/2026
  • Relatoria final e entrega do produto: Sexta 13/02/2026
  • Prazo para ajustes: Sexta 20/02/2026
  • Prazo para pagamento da parcela final e NF: Sexta 27/02/2026

📧📞 10. Contatos em caso de dúvidas

Ilyas Siddique <ilysid@gmail.com> +55 48 99836 1961
Universidade Federal de Santa Catarina

🌱 Venha contribuir com um projeto de alto impacto socioambiental, integrando tecnologia, dados e biodiversidade aliada com o bem estar humano!