Como um único desenvolvedor Android melhorou em 21% o tempo de inicialização do app Lyft Driver em um mês
Postado por Mauricio Vergara, gerente de marketing de produtos, com contribuições da Thousand Ant.

A Lyft tem um compromisso singular com a excelência em apps. Para uma empresa de transporte de passageiros por aplicativo que fornece a dezenas de milhões de passageiros e centenas de milhares de motoristas um serviço vital, no qual o fator tempo é crucial, esse compromisso é obrigatório. Nessa escala, cada momento de lentidão, frame congelado ou falha do app pode desperdiçar o tempo de milhares de usuários. Até mesmo uma pequena flutuação pode significar uma enxurrada de pessoas mudando para a concorrência para solicitar corridas ou trabalhar como motorista. Felizmente, a equipe de desenvolvimento da Lyft está sempre de olho no desempenho de seu app. Foi assim que eles notaram pela primeira vez uma lentidão no tempo de inicialização do app Android de seus motoristas.
Eles precisavam chegar rapidamente à origem do problema e descobrir o que seria necessário para resolvê-lo e, depois, justificar tal investimento para a liderança. Isso significava responder a uma série de perguntas difíceis. Onde estava o gargalo? Como isso estava afetando a experiência do usuário? Qual deveria ser a prioridade disso para a equipe, naquele momento? Por sorte, eles tinham à sua disposição uma ferramenta poderosa e capaz de ajudá-los a encontrar respostas. Com a ajuda do Android Vitals, uma ferramenta do Google Play para melhorar a estabilidade e o desempenho de apps em dispositivos Android, eles localizaram o problema, criaram um caso para justificar a prioridade para a liderança e dedicaram a quantidade certa de recursos para resolvê-lo. Veja como eles fizeram isso.
Novas prioridades
A primeira coisa que a equipe de desenvolvimento da Lyft precisava fazer era descobrir se esse era um problema urgente o suficiente para convencer a liderança a dedicar recursos a ele. Como qualquer proposta de melhoria de qualidade de um app, a aceleração do tempo de inicialização do Lyft Driver precisava ser ponderada em relação a outras demandas que concorriam pelo tempo dos desenvolvedores: a introdução de novos recursos de produto e as melhorias arquitetônicas e de ciência dos dados. Em geral, um dos desafios para convencer a liderança a investir na qualidade de apps é a dificuldade de correlacionar melhorias de desempenho e métricas de negócios.
Eles escolheram o Android Vitals para obter uma imagem exata do que estava em jogo. O Vitals dá aos desenvolvedores acesso a dados sobre o desempenho de apps, incluindo erros de falta de resposta, consumo excessivo de bateria, renderização e tempo de inicialização. O desempenho atual e histórico de cada métrica é rastreado em dispositivos reais e pode ser comparado ao desempenho de outros apps da categoria. Com a ajuda dessa ferramenta poderosa, a equipe de desenvolvimento descobriu que o tempo de inicialização do app Lyft Driver era de 15% a 20% mais lento do que o de outros 10 apps da mesma categoria, o que era uma questão urgente.
Em seguida, a equipe precisava estabelecer o escopo certo para o projeto, um escopo que fosse proporcional ao impacto da lentidão sobre os objetivos de negócios e a experiência do usuário. Os dados do Android Vitals confirmaram a urgência, especialmente porque proporcionaram uma comparação direta com a concorrência na área de transporte de passageiros por aplicativo. A equipe de desenvolvimento estimou que um único desenvolvedor trabalhando no problema por um mês seria suficiente para fazer uma melhoria mensurável no tempo de inicialização do app.
Ao fazer uso dessa diversidade de dados, e apelar para o compromisso da Lyft com a excelência em apps, a equipe apresentou o caso à liderança. Ao demonstrarem uma oportunidade óbvia de melhorar a experiência do cliente, um escopo viável definido de forma lógica e dados muito claros sobre a concorrência, eles conseguiram a aprovação.
Como eles trabalharam
A Lyft usa o "tempo até a interação" como métrica principal de inicialização (algo também conhecido como tempo para exibição total). Para entender os fatores que impactavam esse tempo, a equipe da Lyft traçou o perfil de cada uma das fases de inicialização do app para procurar pelo impasse. O aplicativo Lyft Driver é inicializado em quatro fases. 1) Primeiro, é iniciado o processo de solicitação. 2) "Activity" dá início à renderização da IU. 3) "Bootstrap" envia solicitações de rede para obter os dados necessários para renderizar a tela inicial. 4) Finalmente, "Display" abre a interface do motorista. A definição rigorosa do perfil revelou que a lentidão ocorria na terceira fase, de bootstrap. Com o gargalo identificado, a equipe tomou várias medidas para resolvê-lo.

Primeiro, eles reduziram as chamadas de rede desnecessárias no caminho crítico de inicialização. Após a decomposição dos serviços de back-end, eles conseguiram remover totalmente, e com segurança, algumas chamadas de rede no caminho de inicialização. Quando possível, eles também optaram por executar chamadas de rede de forma assíncrona. Nos casos em que alguns dados ainda eram necessários para que o app funcionasse, mas não durante a inicialização, essas chamadas foram transformadas em chamadas sem bloqueio para permitir que a inicialização prosseguisse sem elas. As chamadas de rede com bloqueio puderam ser movidas com segurança para o segundo plano. Por fim, eles optaram por armazenar os dados em cache entre as sessões.

Essas podem parecer mudanças relativamente pequenas, mas o resultado foi uma redução drástica de 21% no tempo de inicialização do app. Isso levou a um aumento de 5% nas sessões de motoristas no Lyft Driver. Com os resultados em mãos, a equipe conseguiu adesão suficiente da liderança para criar um fluxo de trabalho de desempenho dedicado a dispositivos móveis e adicionar um engenheiro ao esforço sem deixar de trabalhar em outras melhorias. O sucesso da iniciativa se estendeu a toda a organização, e vários gerentes começaram a buscar formas de fazer outros investimentos na qualidade do app.
Aprendizados
O sucesso desses esforços traz várias lições mais amplas, que são aplicáveis a qualquer organização.
À medida que um app se expande e a equipe aumenta com ele, a excelência do app se torna mais importante do que nunca. Os desenvolvedores geralmente são os primeiros a reconhecer problemas de desempenho porque trabalham diretamente com o app, mas podem achar difícil gerar conscientização sobre isso em toda a organização. O Android Vitals é uma ferramenta poderosa para isso. Ele fornece uma maneira direta de sustentar as observações dos desenvolvedores com dados, facilitando a conciliação de métricas de desempenho e casos de negócios.
Ao criar sua própria iniciativa de excelência em apps, é útil visar primeiro os pequenos ganhos e progredir a partir daí. Tenha o cuidado de selecionar projetos que sejam viáveis e gerem resultados significativos com um investimento adequado de recursos.
Também é importante a comunicação ágil e frequente para envolver o restante da organização nos esforços de qualidade da equipe de desenvolvimento. Essas atualizações constantes de objetivos, planos e resultados ajudam a manter o envolvimento de toda a equipe.
Outros recursos
O Android Vitals é apenas uma das muitas ferramentas do ecossistema Android projetadas para ajudar a entender e melhorar o tempo de inicialização de apps e o desempenho em geral. Outra ferramenta complementar, o Jetpack Macrobenchmark, pode ajudar a fornecer dados sobre uma variedade de métricas nas fases de desenvolvimento e testes. Ao contrário do Android Vitals, que fornece dados usando dispositivos reais de usuário, o Macrobenchmark permite comparar e testar localmente áreas específicas do código, incluindo o tempo de inicialização de apps.
A biblioteca App Startup do Jetpack oferece uma forma direta e eficiente de iniciar componentes na inicialização de um app. Os desenvolvedores podem usar essa biblioteca para otimizar sequências de inicialização e definir explicitamente a ordem de inicialização. Enquanto isso, o Alcance e dispositivos pode ajudar a entender a distribuição de usuários e problemas para tomar decisões melhores sobre as especificações segundo as quais você deve criar, os locais de lançamento e os elementos a serem testados. Os dados da ferramenta permitem que sua equipe priorize os esforços de qualidade e determine onde as melhorias terão o maior impacto para a maioria dos usuários. O Perfetto é mais um recurso inestimável: uma ferramenta de rastreamento de sistema de código aberto que pode ser usada para instrumentar o código e diagnosticar problemas de inicialização. Em conjunto, essas ferramentas podem ajudar a manter o app funcionando sem problemas, os usuários satisfeitos e toda a organização apoiando os esforços de qualidade.
Caso tenha interesse em envolver a sua equipe na busca da excelência em apps (ou por ingressar no Lyft), confira aqui nosso estudo de caso resumido para proprietários e executivos de produtos.
16 comentários :
I'm delighted to see this wonderful post. All of the facts are really useful and beneficial to us; keep up the fantastic redactle job. I discovered some valuable information in your forum, which was fantastic to read; thank you for sharing this excellent stuff with my eyesight; please continue to share.
Starting with Android 12, migrating to the SplashScreen API is required. This API enables a faster startup time, and also allows you to tweak your splash screen in the following ways: Set a theme to change the splash screen's appearance. Control how long the splash screen is displayed
regards : https://thefurniturevilla.co.uk/u-shaped-sofa-uk/
u shaped sofa
Permanent makeup can be placed over regular makeup for a more dramatic look and is often hidden to enhance natural beauty. This makes it a great choice for women who like a natural use for everyday wear, but also appreciate the adaptability of conventional, non-permanent makeup. Personal Development Coaching also the better post.
When it comes to Birth Certificate Translation Services UK, MyTranslationServices.com is the name you can count on. Our dedicated team of linguists specializes in translating birth certificates from various languages into English, ensuring accuracy and maintaining the integrity of the original document. With our commitment to delivering top-notch translation services, you can have peace of mind knowing that your birth certificate will be handled professionally and confidentially.
motorcycle accident maryland
The story of a single Android developer achieving a 21% improvement in the Lyft Driver app's launch time is inspiring and demonstrates the impact of dedication and skill. The success of this developer in enhancing the app's performance is a testament to their expertise. Their insights are invaluable for fellow developers and offer a roadmap to enhancing user experience. This article is valuable for app optimization and serves as a testament to the power of continuous improvement and innovation.
Great article, very informative and well written thank you for posting it it helps increase my knowledge. we also help students to grow in their careers through our IT/ Non IT courses. SevenMentor can help advance your career at any level.
Best IT Courses in Pune with Placement| FullStack Course in Pune
Welcome to Newton Food Centre, a bustling hawker centre in Singapore’s heart. You’ll discover a vibrant culinary hub that showcases a diverse array of delicious local eats. The stalls at Newton Food Centre offer a tempting variety of menu items, each bursting with flavours representing Singaporean cuisine’s rich flavours. From mouth-watering satay skewers to aromatic noodle dishes, this food haven caters to every palate, providing a delightful experience for locals and visitors alike.
Kambo Practitioner Training is an immersive journey into the ancient healing traditions of the Amazonian tribes. Rooted in indigenous wisdom, this training equips individuals with the knowledge and skills to ethically and responsibly administer Kambo, a potent secretion derived from the Phyllomedusa bicolor frog.
In just one month, one Android developer demonstrated remarkable optimization abilities by cutting the Lyft Driver app's startup time by 21%. The developer greatly improved performance by locating bottlenecks, simplifying the code, and putting in place more effective loading strategies, which gave drivers a quicker, more seamless experience. A superb demonstration of impact with focused enhancements.The general law in the USA is a complex and evolving system rooted in both federal and state jurisdictions. It encompasses a wide range of legal principles, including constitutional, statutory, and case law. The system aims to balance individual rights with public order and safety. While it provides a framework for justice and legal processes, its complexity and variation across states can pose challenges. The ongoing development of laws reflects societal changes and strives to address contemporary issues, maintaining a dynamic legal landscape.
Reckless Driving in Virginia Points Lawyer Traffic Ticket Defense Attorney
Lyft's Android developer reduced app launch time by 21% in one month using tools like Android Vitals. Imagine applying similar optimization to a Beach Buggy Racing app, delivering smoother starts, faster gameplay, and an overall improved player experience—because every millisecond counts when you're racing to the finish line! Discover More
CarX Street Drive delivers an adrenaline-packed racing experience, blending open-world exploration with high-speed thrills. Customize your cars, master dynamic tracks, and race through vibrant city streets. Feel the rush of realistic physics and immersive gameplay in this ultimate driving adventure! Explore More
Spoof Paytm APK also known as Paytm Spoof or Fake Receipts Maker, is an Android application that allows users to create realistic fake Paytm receipts. Its purpose is to add joy, playful mischief, and happiness to your friend group’s interactions.
Traffic Rider Mod APK offers an enhanced version of the popular motorbike racing game, providing unlimited money, unlocked bikes, and premium features. Players enjoy a seamless, immersive experience with access to all upgrades and customization options. This mod elevates the thrill of high-speed racing while removing in-game restrictions for ultimate fun. Read More
Truck Simulator Ultimate offers an immersive trucking experience, blending realistic driving mechanics with business management. Players build a trucking empire, customize vehicles, and enjoy cross-country adventures in stunning, detailed environments. Click here https://trucksimulatorultimateplay.com/
This article is a lifesaver. BISP for Needy People Exactly what I needed!
Postar um comentário