O que buscamos:
Estamos em busca de um(a) Desenvolvedor(a) Rust para atuar no desenvolvimento de bibliotecas HAL (Hardware Abstraction Layer), em um ambiente técnico desafiador, com foco em alta performance, segurança e sistemas embarcados. É essencial ter disponibilidade para atuação híbrida.
Requisitos e qualificações;
- Implementar, de forma hands-on, core em Rust, com base em arquitetura multi-vendor já definida.
- Desenvolver micro-kernel de pagamentos com performance crítica (overhead < 2ms) para processamento EMV.
- Criar adapters multi-vendor para abstrair diferenças entre fabricantes (PAX, Sunmi, Positivo).
- Implementar FFI bridges complexos: Rust Flutter/Dart (captura) e Rust C/Java (vendors L2).
- Desenvolver serialização eficiente para comunicação entre linguagens com foco em performance.
- Integrar com bibliotecas L2 de vendors em C/Java nativo, adaptando diferentes APIs.
- Otimizar performance em operações críticas para sistemas embarcados com ARM Cortex-A53.
- Ter autonomia para definição de estruturas de dados, algoritmos e otimizações de baixo nível.
- Validar implementações por meio de benchmarks rigorosos e testes em dispositivos reais.
- Participar de pair programming intensivo com Principal HAL Engineer e outros devs Rust.
- Requisitos e Qualificações
- Graduação completa em Engenharia, Ciência da Computação ou áreas correlatas.
- Disponibilidade para atuação híbrida/presencial em São Paulo.
- Experiência com:
- 5+ anos em C/C++ systems programming OU 3+ anos com Rust focado em performance crítica.
- FFI e interoperabilidade entre linguagens (CJava/JNI, RustDart, etc.).
- Serialização eficiente: JSON, MessagePack, Protobuf ou similares.
- Programação concorrente: threads, mutexes, atomic ops, async, tuning.
- Sistemas embarcados, mobile ou real-time (gerenciamento de memória, ARM optimization).
- Build systems e cross-compilation: Make, CMake, Cargo, CI/CD multi-target.
- Debugging/profiling em ambientes de alta performance.
- Design de sistemas: HALs, arquiteturas plugin, APIs cross-platform.
- Gerenciamento de memória e otimizações de baixo nível.
- Colaboração técnica intensa e pair programming.
- Diferenciais / Desejáveis
- Experiência em sistemas financeiros ou de payment processing.
- Desenvolvimento de libraries, frameworks ou drivers open-source em C/C++ ou Rust.
- Serialização avançada com FlatBuffers, Cap’n Proto, ou zero-copy.
- Integração Flutter/Dart: platform channels, dart:ffi, mobile nativo.
- Para perfis C/C++: experiência com game engines, compiladores, bancos de dados ou stacks de rede.
- Para perfis Rust: conhecimento de async/await, tokio, serde, ecosystem do Cargo.
- Conhecimento em Android NDK: integração nativa C++Kotlin ou RustAndroid via JNI.
- Experiência com terminais POS, sistemas embarcados ou ambientes com restrição de hardware.
- Otimização de baixo nível: SIMD, cache, ferramentas como perf, valgrind, heaptrack.
- Experiência com arquiteturas multi-linguagem (orquestração de 3+ linguagens em projeto crítico).
Descrição comportamental:
Procuramos uma pessoa que:
- Goste de trabalhar em equipe e seja colaborativa em suas atribuições;
- Tenha coragem para se desafiar e ir além, abraçando novas oportunidades de crescimento;
- Transforme ideias em soluções criativas e busque qualidade em toda sua rotina;
- Tenha habilidades de resolução de problemas;
- Possua habilidade e se sinta confortável para trabalhar de forma independente e gerenciar o próprio tempo;
- Tenha interesse em lidar com situações adversas e inovadoras no âmbito tecnológico.
Big enough to deliver – small enough to care.
#VempraGFT
#VamosVoarJuntos
#ProudToBeGFT