22.2 C
São Paulo
8 de dezembro de 2024

Como desenvolvemos um software de gestão de comércio para celulares do mundo todo

<p>Há poucos anos, o desenvolvimento mobile nem existia – na prática, estamos falando de uma tecnologia que chegou com o Iphone, em meados de 2007, quando os celulares começaram a ter mais funcionalidades além da ligação e do armazenamento de contatos.</p>
<p>O trabalho de um desenvolvedor de aplicativos mobile é desafiador: precisamos entender nosso usuário, buscar recursos a serem priorizados, trabalhar em equipe com a área de UX Design, nos dedicar ao desenvolvimento propriamente dito, considerar questões de escalabilidade e performance, realizar testes, ajustar bugs, monitorar o app e fazer manutenções evolutivas.</p>
<p>Tantas novidades e adversidades exigem, acima de tudo, uma equipe de alta performance e extremamente disposta ao aprendizado. Essa é uma realidade em constante evolução, e os desenvolvedores precisam estar preparados para acompanhá-la, crescendo técnica e profissionalmente. Além disso, a disposição para superar desafios é uma exigência para aqueles que querem se destacar no dia a dia de trabalho.</p>
<p>Infelizmente, hoje temos um déficit muito grande de profissionais qualificados de TI, mas as oportunidades estão aí. O mercado de apps cresce cada vez mais, movimentando trilhões de dólares no mundo todo – e ainda há muitas coisas interessantes para serem desenvolvidas!</p>
<p>Além de ser uma carreira com grandes possibilidades de crescimento nessa nova realidade digital, as chances de realização profissional também são enormes, já que você terá a oportunidade de criar uma ferramenta utilizada por pessoas de todo o mundo.</p>
<p>Posso afirmar que, para mim, foi assim.</p>
<p><strong>Tecnologias em evolução</strong></p>
<p>A contemporaneidade dos fatos torna os obstáculos nesse campo enormes. Ainda há muito a evoluir, a aprender e a solucionar. E a situação fica ainda mais desafiadora se falarmos de desenvolvimento híbrido, que é aquele que possibilita a utilização do mesmo código para criação de aplicativos para os sistemas IOS e Android.</p>
<p>O framework React Native, que é uma espécie de template para o desenvolvimento híbrido, por exemplo, foi criado em 2015 e ainda está na versão 0.63x. O Flutter, que também está crescendo no mercado, só foi lançado em 2017.</p>
<p>De qualquer maneira, essa escolha dos frameworks é uma etapa crucial para o sucesso de qualquer projeto mobile. Principalmente para uma startup de crescimento rápido, que precisa validar seu produto de forma ágil e que provavelmente conta com uma equipe enxuta, como foi o caso da Kyte.</p>
<p>Aqui, escolhemos o React Native para o desenvolvimento mobile front-end, e o Node.js para o back-end. Além de pensar em uma tecnologia que permitisse a entrega para os dois sistemas operacionais (IOS e Android) de forma simultânea, pela inviabilidade de ter duas frentes diferentes de desenvolvimento, também levamos em consideração o background da equipe. Os dois frameworks utilizam a linguagem de programação JavaScript, que está consolidada e é bem conhecida pelos nossos desenvolvedores.</p>
<p><strong>Software de gestão: do desktop para o smartphone</strong></p>
<p>Falando especificamente de softwares de gestão, o que tínhamos até poucos anos atrás era uma realidade voltada para o computador, com conexão via intranet. Cada lojista tinha o seu próprio servidor com o sistema da loja, sendo bem improvável que o software sofresse com lentidão ou falta de conexão.</p>
<p>Com um aplicativo móvel, o cenário é completamente diferente. Temos milhares de lojistas compartilhando uma mesma infraestrutura, gerando e transacionando milhões de dados diariamente, que trafegam pelo mesmo servidor.</p>
<p>Isso exige uma preparação muito grande por parte dos desenvolvedores para que não haja problemas para o usuário. Na Kyte, por exemplo, tivemos esse ponto como uma prioridade desde o início, considerando que queríamos garantir um sistema escalável. Para isso, apostamos na combinação de várias tecnologias que asseguram a entrega e distribuição de todos os dados transacionados.</p>
<p>No smartphone, evitar problemas deixa de ser uma questão de pura qualidade e passa a ser uma necessidade. O usuário está cada vez mais exigente, até pela facilidade de mudança. Pense comigo: todos os apps estão disponíveis na mesma loja, podem ser testados e avaliados de um minuto para o outro. A concorrência é enorme e a substituição é uma realidade palpável – muito diferente do que acontecia com um software de gestão no desktop, que demandaria toda uma atenção antes de ser trocado.</p>
<p>Desenvolver um aplicativo sem erros, sem lentidão, sem problemas de conexão e fácil de utilizar é um desafio, mas também uma exigência.</p>
<p><strong>Os desafios da internacionalização e da conexão offline</strong></p>
<p>Outro ponto que traz seus desafios para o desenvolvimento mobile é a internacionalização.</p>
<p>O fato de disponibilizar o app para outros países, em si, é até relativamente simples. Com algumas ferramentas e padrões de projetos, conseguimos avançar nessa frente, e desde o início lançamos o app da Kyte em vários idiomas, alcançando hoje 143 países.</p>
<p>Mas existem aspectos que precisam ser levados em consideração, como a preocupação com a demanda, que se torna ainda maior. Obstáculos de escalabilidade e performance acabam acontecendo mais cedo e exigindo um cuidado especial. Além disso, a adaptação de recursos pode ser um problema, dependendo do que está ou não disponível em cada país que utiliza o app, o que exige alternativas bem pensadas.</p>
<p>Aqui na Kyte, ainda abraçamos o desafio de ser Offline First. Uma de nossas grandes preocupações é que todos os lojistas, independentemente de onde estejam, possam realizar sua venda mesmo sem internet.</p>
<p>Grandes players do mercado ainda não possuem esta funcionalidade, mas sabemos que na prática as redes móveis não têm o mesmo nível de qualidade do que um desktop e isso é essencial para que o app do celular efetivamente substitua o software de gestão.<br /><br /><em>(*) Head de Tecnologia e sócio da startup de vendas e gestão Kyte.</em></p>