Voltar para Notícias para desenvolvedores

Conheça os Desenvolvedores – Edição React na Meta (Andrea Ferrando)

27 de abril de 2023PorNavyata Bawa

Este artigo foi escrito em colaboração com Andrea Ferrando, engenheiro de software, e Sean Keegan, consultor de desenvolvimento na Meta.

A entrevista de hoje é com Andrea Ferrando, engenheiro de front-end na Meta. A equipe dele trabalha no app Gerenciador de Anúncios, no qual os usuários criam, editam e monitoram campanhas de publicidade.

Fale mais sobre você.

Sou Andrea Ferrando, engenheiro de software e apaixonado por desenvolver produtos digitais e experiências do usuário com excelência. Atualmente, trabalho no app Gerenciador de Anúncios (AMA). Com ele, os anunciantes podem criar, monitorar e gerenciar campanhas em todas as plataformas da Meta. O app fornece uma solução abrangente para os anunciantes alcançarem o seu público-alvo, sendo uma ferramenta essencial para todos que buscam anunciar com eficácia. Trabalho no AMA há pouco mais de um ano e pude causar um grande impacto no desenvolvimento do app.

O que me inspirou a trabalhar com o React Native foi o potencial de otimizar a experiência do usuário e torná-la eficiente para usuários de Android e iOS. Com componentes reutilizáveis e a capacidade de gerenciar estados com facilidade, o React Native possibilita a criação de apps com alta qualidade de forma rápida e eficiente. O benefício adicional de escrever o código uma vez e executá-lo em várias plataformas é uma grande vantagem. Com isso, alcançamos uma base de usuários maior e oferecemos uma experiência consistente entre dispositivos.

Como você tem usado o React?

Tenho usado o React diariamente. Ele se tornou parte integral da minha função. Como líder de tecnologia de um produto voltado ao cliente, tenho grandes responsabilidades no gerenciamento de todo o desenvolvimento, no direcionamento e no trabalho com equipes interfuncionais. Mas também tenho a oportunidade de contribuir para o AMA trabalhando em recursos essenciais e fazendo contribuições práticas.

Em quais projetos da Meta que usam o React você já trabalhou?

Trabalho com o app Gerenciador de Anúncios desde que comecei na Meta. Nossa equipe tem propriedade completa do produto, e isso envolve contribuir para a funcionalidade de back-end. Porém, o AMA é o único aplicativo do React com que trabalho.

Por que a sua equipe escolheu usar o React? E como ele ajuda vocês a alcançar as metas de desenvolvimento?

Temos orgulho de o app Gerenciador de Anúncios ter sido um dos primeiros aplicativos no mundo a usar o React Native. Todo mundo sabe que o React Native teve origem no hackathon do Facebook de 2013. E o nosso app foi pioneiro em usar essa tecnologia. O app oferece insights e recomendações que ajudam os anunciantes a criar campanhas de publicidade bem-sucedidas, e o React Native é perfeito para isso. Com recursos de desenvolvimento rápido para iOS e Android, além da capacidade de proporcionar um ótimo desempenho, o React Native foi essencial para o sucesso do AMA.

O que tem deixado você animado ou orgulhoso recentemente?

Nos últimos tempos, tenho trabalhado na nossa infraestrutura de notificações push, com o foco em garantir a confiabilidade.

As notificações têm um papel fundamental em aplicativos para celular. No caso do AMA, elas são especialmente importantes porque enviam insights em tempo real aos usuários, o que pode fazer toda a diferença para o sucesso da campanha publicitária.

Porém, é necessário manter o equilíbrio para não exagerar nas notificações. Além disso, as diferenças entre o gerenciamento de notificações no iOS e no Android e as respectivas regras de privacidade precisam ser levadas em consideração. Apesar dos desafios, é emocionante trabalhar nesse projeto. Ele exige habilidades técnicas e de produto para garantir a melhor experiência do usuário, bem como para desenvolver diferentes fluxos e gerenciar notificações de modo apropriado de acordo com o sistema operacional.

Com o React Native, simplificamos o processo de desenvolvimento ao abstrair a maior parte da lógica que é diferente entre as delegações de notificação no iOS e no Android. Assim, concentramos os nossos esforços no processo de desenvolvimento.

O que há de especial em ser um desenvolvedor do React em uma empresa como a Meta?

Trabalhar como desenvolvedor em um aplicativo do React Native na Meta é uma experiência única. É muito gratificante saber que o seu trabalho pode alcançar uma base de usuários imensa e ter um impacto significativo para tantas pessoas. Entretanto, lidar com uma escala tão ampla também tem alguns desafios que deixam o trabalho emocionante e em constante evolução.

Um aspecto essencial do trabalho é manter a privacidade e a integridade dos dados de usuários. Como desenvolvedores, precisamos saber quais dados podemos armazenar e quais não podemos. Para proteger a privacidade do usuário, trabalhamos de perto com as equipes de privacidade. Esse é um aspecto essencial do trabalho que pode ser ignorado em projetos menores ou startups, mas é uma prioridade para a Meta, o que exige que sejamos flexíveis e adaptáveis em nossa abordagem.

A localização é outro aspecto desafiador ao trabalhar com um aplicativo de front-end usado mundialmente. Ainda que seja simples projetar e desenvolver um app em inglês, traduzir tudo para mais de 20 idiomas pode trazer à tona defeitos e bugs que passaram despercebidos. A mesma palavra pode ser três ou quatro vezes maior em outra língua. Para garantir que os limites sejam respeitados, precisamos de um design cuidadoso e um desenvolvimento preciso. Minha experiência anterior com bancos e companhias aéreas me preparou para esse aspecto do trabalho e trago muito dela para a minha função na Meta.

O que é estimulante para você sobre trabalhar no espaço React?

Trabalhar como desenvolvedor do React na Meta é uma oportunidade muito especial, pois me permite estar em contato e colaborar diretamente com a equipe desse produto. Isso me coloca em uma posição única dentro da empresa.

Para ser um engenheiro bem-sucedido em um produto voltado ao cliente, é necessário um conjunto diverso de habilidades. Escrever códigos limpos e confiáveis que priorizam o desempenho é essencial, além de focar aspectos como a experiência do usuário e a acessibilidade. É aí que entra a vantagem de trabalhar com uma linguagem dinâmica como o React: os desenvolvedores podem se concentrar no processo de desenvolvimento sem sobrecarga. Com experiência em desenvolvimento nativo para dispositivos móveis, principalmente em aplicativos de larga escala, entendi o quanto o tempo de criação pode atrapalhar o trabalho diário e desperdiçar horas valiosas. Por isso que aprecio o uso de um DOM virtual no React. Ele proporciona atualizações eficientes e renderização de componentes da interface do usuário em tempo real. Apesar de ser adotado amplamente por desenvolvedores e empresas na web, o React permanece amigável e acessível. Parte do motivo disso é a sua base em JavaScript/TypeScript (JS/TS), linguagens muito usadas por desenvolvedores. Gosto de usar o TypeScript com o React. O TypeScript é digitado estaticamente, o que facilita a detecção de bugs no início do processo de desenvolvimento.

Também gosto muito dos componentes funcionais do React, que são muito úteis. Eles podem ser otimizados para desempenho com o recurso de memoização e melhoram a atuação do aplicativo ao evitar atualizações de renderização desnecessárias. Em especial, a praticidade de reutilizar componentes é importante para aplicativos de larga escala, facilitando a manutenção, a testagem e o gerenciamento da base do código.

Durante a sua carreira, você se deparou com algum equívoco sobre o React ou o desenvolvimento de software de código aberto?

Na verdade, não. Grande parte das grandes empresas mundiais usam e desenvolvem software de código aberto nas suas operações cotidianas, e muitos desenvolvedores trabalham em projetos desse tipo.

Ouvi muitas preocupações em relação ao React Native; em específico, que ele é lento e adequado somente para projetos pequenos com capacidade limitada. Algumas pessoas acreditam que o uso do React Native de JavaScript com componentes nativos deixa o desempenho mais lento em comparação com apps escritos nativamente. Em alguns casos (como streaming), os apps nativos têm melhor desempenho. Porém, para a maioria dos aplicativos do dia a dia, que exibem principalmente imagens e textos e priorizam a interação com o usuário, o desempenho do React Native é tão bom quanto o de apps nativos.

O que deixa você empolgado com o futuro do React?

O React Native tem uma arquitetura robusta e está equipado para administrar aplicativos de larga escala com atualizações eficientes e renderização da interface do usuário em tempo real. Ele também facilita o gerenciamento do código, o que o torna ideal para projetos grandes. Além disso, o React Native permite que os desenvolvedores acessem módulos nativos, fornecendo acesso a funcionalidades nativas e, portanto, permitindo o desenvolvimento de aplicativos abrangentes.

Quais recursos são úteis para começar a usar o React? E para contribuir?

Quando comecei com o React, tive a sorte de trabalhar para uma empresa que oferecia acesso livre a um grande portal de aprendizado online com aulas em vídeo ministradas por especialistas. Para mim, a melhor maneira de aprender foi assistindo a esses tutoriais em vídeo, que mostravam o passo a passo do que eu precisava saber. Depois de aprender o básico, entendi que a experiência prática (trabalhar em projetos reais) era valiosa para ampliar meus conhecimentos sobre o React. Se você não tem essa oportunidade no trabalho, sugiro que você encontre algo que goste muito e crie um aplicativo para isso. Eu comecei criando o meu site pessoal com meu portfólio. Além disso, descobri que a documentação do React Native é fácil de entender e útil quando para encontrar informações específicas.

Onde as pessoas podem encontrar você e acompanhar o seu trabalho?

Tenho uma conta no GitHub, mas a maioria das minhas experiências de trabalho não podem ser publicadas devido à confidencialidade ou por serem projetos pessoais que não são de código aberto. Gosto de usar redes sociais e tenho uma boa presença no Instagram, mas não como uma plataforma para falar sobre desenvolvimento. Uso como um ambiente livre de trabalho.


Agradecemos ao Andrea por ter reservado um tempo para responder às nossas perguntas. Foi incrível saber como o React está sendo usado para melhorar grandes aplicativos e como estamos aprendendo com as nossas criações e contribuindo para a comunidade do React. Esperamos que a entrevista tenha sido interessante e fornecido insights sobre onde e como o React está sendo usado na Meta.

Sobre a série Conheça os Desenvolvedores – React na Meta

O React está entre os projetos de código aberto mais populares da atualidade. Ele tem sido considerado um dos frameworks "mais amados" da web nos últimos anos. Para a Meta, o React é uma biblioteca excelente que ajuda os desenvolvedores a criar interfaces do usuário com facilidade e em escala. Usado por milhões de desenvolvedores no mundo todo, em sites simples e aplicativos empresariais, o React é uma biblioteca de código aberto com lugar para todos.

Esta publicação é parte da nossa série Conheça os Desenvolvedores. Nela, convidamos engenheiros e desenvolvedores que usam o React a compartilhar as suas experiências e falar sobre os produtos incríveis sendo criados com o React aqui na Meta. Confira entrevistas com outros engenheiros e saiba o que eles pensam sobre este tópico.

Para saber mais sobre o Meta Open Source, acesse o nosso site, inscreva-se no canal do YouTube ou siga o nosso perfil no Twitter, no Facebook e no LinkedIn.