Como Senior Mobile Engineer na Emerge, você será responsável pela implementação de medição e ferramentas de baixo nível em aplicativos iOS, enquanto analisa as melhores maneiras de melhorar os padrões de desenvolvimento comuns.
A pilha com a qual você trabalhará abrange injeção de código para ligar syscalls no telefone e no simulador, modificação Mach-O, instrumentação de tempo de execução (stacktraces/gerenciamento de memória) e gerenciamento automatizado de compilações + dispositivos iOS por meio de um pipeline CI Ruby.
Um candidato ideal seria apaixonado pela interseção de sistemas operacionais, tempos de execução e ferramentas de desenvolvedor. As especificidades de uma linguagem ou plataforma são menos importantes do que uma profunda curiosidade técnica e uma vontade de explorar novos problemas.
Confira alguns posts do nosso blog para ter uma ideia do que trabalhamos:
responsabilidades
- Apoie a análise de aplicativos em execução em milhares de compilações por dia de muitas das maiores empresas de aplicativos móveis do mundo
- Trabalhe diretamente com os desenvolvedores dessas empresas para implementar mudanças e entender os resultados
- Identificar otimizações em níveis baixos de código, geralmente por meio de engenharia reversa ou análise estática
- Desenvolver aplicativos CI que analisam binários de aplicativos, aplicativos de perfil em dispositivos e coletam informações de dsyms ou mapas de links para fazer sugestões aos desenvolvedores
- Crie visualizações interativas e detalhadas que ajudam os desenvolvedores a entender como suas alterações afetam usuários reais
- Fale em conferências, escreva postagens de blog e outras atividades de construção de comunidades
Experiência recomendada
- 6+ anos de experiência em engenharia de software
- Fundamentos sólidos do sistema operacional – você frequentemente precisará entender como os aplicativos são executados em um nível baixo, como gerenciamento de memória, ciclo de vida do processo, estado do thread
- Confortável com baixo nível C e chamadas de sistema
- Familiaridade com runtimes de linguagem, compiladores e linkers. LLVM ou Swift é uma vantagem!
- Conhecimento de sistemas de compilação e pipelines de CI
- Apaixonado por desempenho e qualidade de código em escala!
Também estamos procurando engenheiros interessados em trabalhar em aspectos relacionados ao desempenho, como rede, tamanho do código e visualização de dados, mesmo que não sejam específicos do iOS. Entre em contato se estiver interessado em algum deles!
Source link