Pular para o conteúdo

Desenvolvedor Backend (Python / ERP)

Missão do Cargo:
Ser o responsável pela lógica de negócios, processamento de dados e integração de sistemas "por trás das cortinas". Cria e mantém APIs, módulos personalizados do ERP, automações e a arquitetura que faz tudo funcionar nos servidores.

Principais Responsabilidades:

Desenvolver Módulos Personalizados para o ERP: Criar funcionalidades customizadas em Python que estendem as capacidades nativas do sistema, atendendo necessidades específicas de clientes (ex: regras fiscais complexas, integrações com sistemas legados).
Construir e Manter APIs RESTful: Desenvolver interfaces de comunicação (APIs) para integrar o ERP com outros sistemas (e-commerce, CRM, marketplaces, sistemas de pagamento, plataformas de nota fiscal eletrônica).
Otimizar Consultas ao Banco de Dados (PostgreSQL): Escrever queries SQL eficientes, criar índices, analisar planos de execução para garantir performance mesmo com grande volume de dados.
Implementar Regras de Negócio Complexas: Traduzir requisitos funcionais em código Python, garantindo que cálculos (impostos, comissões, descontos) e validações sejam executados corretamente.
Realizar Testes Unitários e de Integração: Escrever testes automatizados (Unittest, Pytest) para garantir que o código funcione conforme esperado e não introduza regressões (bugs em funcionalidades existentes).
Debugar e Corrigir Bugs: Investigar erros reportados pelo time de QA ou suporte, reproduzir o problema, identificar a causa raiz e implementar correções.
Documentar Código e Processos Técnicos: Escrever docstrings, comentários no código quando necessário, e documentação técnica (diagramas de fluxo, arquitetura de módulos).
Colaborar com Code Review: Revisar código de outros desenvolvedores, sugerir melhorias, garantir que padrões de qualidade sejam seguidos (PEP8 para Python).
Gerenciar Versionamento de Código (Git): Usar Git para controle de versão, criar branches para novas funcionalidades, fazer merge requests seguindo boas práticas.
Participar de Melhorias de Arquitetura: Propor refatorações, sugerir padrões de design (MVC, ORM) e contribuir para a evolução técnica da plataforma.
Requisitos Técnicos e Experiência (Hard Skills):

Formação: Graduação ou Tecnólogo em Ciência da Computação, Engenharia de Software, Sistemas de Informação ou áreas correlatas. Profissionais autodidatas com portfólio robusto também são considerados.
Experiência Comprovada: Mínimo 3 anos de experiência como desenvolvedor backend, sendo ao menos 1 ano com Python em produção.
Domínio de Python: Conhecimento avançado da linguagem, incluindo POO (Programação Orientada a Objetos), decorators, generators, context managers, bibliotecas padrão.
Frameworks Web: Experiência com frameworks como Django, Flask ou FastAPI para criação de APIs.
Bancos de Dados Relacionais: Domínio de SQL (PostgreSQL preferencialmente), modelagem de dados, normalização, transações, índices.
ORM (Object-Relational Mapping): Familiaridade com ORMs como SQLAlchemy ou o ORM nativo do ERP utilizado.
APIs RESTful: Conhecimento de padrões REST, métodos HTTP (GET, POST, PUT, DELETE), JSON, autenticação (JWT, OAuth).
Git e Controle de Versão: Uso proficiente de Git (branches, merge, rebase, resolução de conflitos).
Linux (Ubuntu/Debian): Conforto com terminal Linux, navegação de diretórios, edição de arquivos (nano, vim), permissões.
Testes Automatizados: Experiência com frameworks de teste (Pytest, Unittest) e conceitos de TDD (Test-Driven Development) é diferencial.
Docker (desejável): Conhecimento de containerização para ambientes de desenvolvimento e deploy.
Habilidades Comportamentais (Soft Skills):

Resolução de Problemas Complexos: Capacidade de decompor problemas grandes em partes menores, pensar de forma lógica e estruturada.
Autodidatismo: Ser capaz de aprender novas tecnologias e bibliotecas de forma autônoma, lendo documentação oficial e explorando exemplos.
Atenção aos Detalhes: Um ponto-e-vírgula faltando pode quebrar o sistema. Rigor e revisão cuidadosa do código são essenciais.
Comunicação Técnica Clara: Saber explicar soluções técnicas para não-programadores (consultores, gerentes de projeto).
Trabalho em Equipe: Colaborar com frontend, QA, infraestrutura e consultores funcionais de forma harmoniosa.
Gestão de Tempo: Conseguir estimar prazos de forma realista e cumprir entregas.

Humildade para Aprender: Aceitar feedback em code reviews, reconhecer quando não sabe algo e buscar ajuda.

São Paulo, Brasil
DESENVOLVIMENTO DE SOFTWARE
Sobre nós

Somos uma equipe de pessoas apaixonadas cujo objetivo é melhorar a vida de todos por meio de produtos inovadores. Construímos ótimos produtos para resolver seus problemas comerciais.