PH

Curitiba, PR

Pedro Henrique Almeida

Desenvolvedor Mobile Pleno

Especializado em desenvolvimento nativo para Android com Kotlin e iOS com Swift, com 4 anos de experiência criando aplicativos de mobilidade urbana e saúde. Focado em performance e experiência do usuário em cenários de baixa conectividade.

HABILIDADES

O que eu faço bem

Kotlin92
Swift85
SwiftUI80
Coroutines88
Firebase85
Testes unitários82
CI/CD mobile78

PROJETOS

Trabalhos em destaque

DEMANDAS RELEVANTES

Projetos em que fiz a diferença

Mobile Dev BRJunho de 2024

Desenvolvimento mobile para cenários de baixa conectividade: lições do projeto MobiCuritiba

Meu papel: Autor

# Desenvolvimento mobile para cenários de baixa conectividade: lições do projeto MobiCuritiba Muitos desenvolvedores mobile ainda assumem que todos os usuários têm acesso a internet de alta velocidade o tempo todo, mas essa premissa exclui uma parcela enorme da população, especialmente em áreas periféricas e rurais. Quando comecei a trabalhar no projeto MobiCuritiba, nosso maior desafio era garantir que o aplicativo funcionasse perfeitamente em zonas da cidade onde o sinal de 4G era quase inexistente. A primeira decisão que tomamos foi priorizar o armazenamento local de dados essenciais, como mapas das rotas de bicicletas e informações de disponibilidade de veículos, sincronizando-os com o servidor apenas quando o usuário tivesse acesso à internet. Outra estratégia foi reduzir ao máximo o tamanho dos assets do aplicativo, comprimindo imagens e utilizando formatos de vídeo leves para os tutoriais de uso. No final, conseguimos reduzir o tamanho do aplicativo em 40% e garantir que todas as funcionalidades principais funcionassem offline, o que foi um dos principais fatores para o crescimento de 45 mil usuários ativos em menos de um ano. Para outros desenvolvedores que trabalham em projetos voltados para o público de baixa renda, minha recomendação é testar o aplicativo em condições reais de baixa conectividade durante todo o processo de desenvolvimento, e não apenas na fase de testes finais. A funcionalidade offline não é um 'recurso extra': para muitos usuários, ela é a única forma de usar o aplicativo.

O desafio

Desenvolver um aplicativo de mobilidade que funcionasse em áreas com sinal de internet fraco de Curitiba

Minha contribuição

Liderança do desenvolvimento da versão Android, definição de arquitetura para funcionamento offline, otimização de assets

Resultados e impacto

Aplicativo com funcionalidade offline completa, redução de 35% no tempo de espera por veículos, mais de 45 mil usuários ativos mensais

Desenvolvimento MobileKotlinBaixa conectividade
Android Dev BrasilJaneiro de 2024

Otimização de desempenho em aplicativos Android: dicas práticas

Meu papel: Palestrante

# Otimização de desempenho em aplicativos Android: dicas práticas Um dos maiores desafios no desenvolvimento mobile para o mercado brasileiro é garantir que o aplicativo funcione bem em celulares de entrada, que representam mais de 60% dos dispositivos usados no país, segundo dados da IDC. Muitos desenvolvedores focam apenas em desenvolver para aparelhos de última geração, mas isso exclui a maior parte do público. No desenvolvimento do MobiCuritiba, realizamos testes em mais de 20 modelos de celulares diferentes, desde os mais baratos até os de última geração, e identificamos que o maior gargalo de desempenho era o carregamento de mapas em áreas com sinal fraco. Para resolver isso, implementamos um sistema de cache de mapas que baixava apenas as áreas que o usuário mais acessava, reduzindo o tempo de carregamento em 70% em celulares de entrada. Outra dica é evitar bibliotecas pesadas que não são necessárias para as funcionalidades do aplicativo. No caso do Glicemia Fácil, substituímos uma biblioteca de gráficos pesada por uma solução mais leve, reduzindo o tamanho do aplicativo em 25% e melhorando o desempenho em celulares com pouca memória. O resultado final foi uma avaliação média de 4,7/5 na Play Store, com mais de 90% dos usuários elogiando a velocidade do aplicativo.

O desafio

Otimizar aplicativos para funcionar em celulares de entrada, com pouca memória e processador lento

Minha contribuição

Desenvolvimento de exemplo prático de otimização, apresentação de dados de desempenho em diferentes dispositivos

Resultados e impacto

Mais de 150 desenvolvedores presentes na palestra, 35% dos participantes informaram que reduziram o tamanho de seus aplicativos nos 3 meses seguintes

Desenvolvimento AndroidOtimizaçãoPerformance

ARTIGOS

Ideias que compartilho

Desenvolvimento mobile para cenários de baixa conectividade: lições do projeto MobiCuritiba

Muitos desenvolvedores mobile ainda assumem que todos os usuários têm acesso a internet de alta velocidade o tempo todo, mas essa premissa exclui uma parcela enorme da população, especialmente em áreas periféricas e rurais. Quando comecei a trabalhar no projeto MobiCuritiba, nosso maior desafio era garantir que o aplicativo funcionasse perfeitamente em zonas da cidade onde o sinal de 4G era quase inexistente. A primeira decisão que tomamos foi priorizar o armazenamento local de dados essenciais, como mapas das rotas de bicicletas e informações de disponibilidade de veículos, sincronizando-os com o servidor apenas quando o usuário tivesse acesso à internet. Outra estratégia foi reduzir ao máximo o tamanho dos assets do aplicativo, comprimindo imagens e utilizando formatos de vídeo leves para os tutoriais de uso. No final, conseguimos reduzir o tamanho do aplicativo em 40% e garantir que todas as funcionalidades principais funcionassem offline, o que foi um dos principais fatores para o crescimento de 45 mil usuários ativos em menos de um ano. Para outros desenvolvedores que trabalham em projetos voltados para o público de baixa renda, minha recomendação é testar o aplicativo em condições reais de baixa conectividade durante todo o processo de desenvolvimento, e não apenas na fase de testes finais. A funcionalidade offline não é um 'recurso extra': para muitos usuários, ela é a única forma de usar o aplicativo.

Otimização de desempenho em aplicativos Android: dicas práticas

Um dos maiores desafios no desenvolvimento mobile para o mercado brasileiro é garantir que o aplicativo funcione bem em celulares de entrada, que representam mais de 60% dos dispositivos usados no país, segundo dados da IDC. Muitos desenvolvedores focam apenas em desenvolver para aparelhos de última geração, mas isso exclui a maior parte do público. No desenvolvimento do MobiCuritiba, realizamos testes em mais de 20 modelos de celulares diferentes, desde os mais baratos até os de última geração, e identificamos que o maior gargalo de desempenho era o carregamento de mapas em áreas com sinal fraco. Para resolver isso, implementamos um sistema de cache de mapas que baixava apenas as áreas que o usuário mais acessava, reduzindo o tempo de carregamento em 70% em celulares de entrada. Outra dica é evitar bibliotecas pesadas que não são necessárias para as funcionalidades do aplicativo. No caso do Glicemia Fácil, substituímos uma biblioteca de gráficos pesada por uma solução mais leve, reduzindo o tamanho do aplicativo em 25% e melhorando o desempenho em celulares com pouca memória. O resultado final foi uma avaliação média de 4,7/5 na Play Store, com mais de 90% dos usuários elogiando a velocidade do aplicativo.