A Idopter Labs trabalha com um conjunto de tecnologias que permitem que nossos times sejam extremamente eficientes no processo de desenvolvimento.
Hoje, os principais desafios trabalhados junto aos nossos clientes são voltados para a web e dispositivos móveis (celulares, tablets, entre outros equipamentos). Para isso, as duas tecnologias principais adotadas são Elixir e React Native.
Esse post é uma breve apresentação dessas duas tecnologias e algumas das razões pelas quais as adotamos.
Elixir é uma linguagem de programação funcional lançada em 2012 pela Plataformatec. Ela é uma linguagem compilada para a máquina virtual do Erlang, a BEAM, que foi criada pela sueca Ericsson e vem sendo usada há mais de 30 anos para os mais diversos sistemas de telecomunicação.
O Whatsapp, por exemplo, que é um serviço com mais de 2 bilhões de usuários registrados e que trafega mais de 100 bilhões de mensagens diariamente, utiliza essa mesma tecnologia.
Mais sobre a história do Elixir você pode assistir nesse mini-documentário.
Com o surgimento do Phoenix (framework web), nós ficamos muito interessados em adotar em alguns projetos para ver se a produtividade também seria alta, assim como o Rails que vínhamos usando anteriormente e o resultado foi surpreendente.
Algumas similaridades e vantagens que vieram nesse combo Elixir e Phoenix só foram reforçando ainda mais que seria uma excelente ferramenta para usarmos no desenvolvimento de novos projetos, mais sobre essas características e vantagens pode ser lido nesse post da Hackernoon.
Tudo que o Elixir e Phoenix trazem de forma nativa está atendendo 90% dos clientes que temos, trazendo economia através da diminuição do uso de recursos nos sistemas e mantendo a produtividade no desenvolvimento.
Algumas empresas que adotam a tecnologia:
Para desenvolvimento de aplicativos para dispositivos móveis, a nossa escolha atual é React Native. Essa tecnologia foi lançada ao público em 2015, após a equipe de engenharia do Facebook aplicar o mesmo mindset do React.js — que já vinha sendo utilizado por muitos anos em desenvolvimento web — nas plataformas móveis. O React Native é responsável por gerar componentes nativos tanto para iOS quanto para Android a partir de código JavaScript. Você pode conferir nesse post da Devopedia falando mais detalhes da tecnologia e um pouco da sua história.
Pela experiência que nosso time já possuía com JavaScript e React.js, a escolha de React Native foi bem natural. Mesmo assim, antes de adotarmos oficialmente o React Native, experimentamos também outras tecnologias como Ionic e Flutter, antes de tomarmos a decisão.
Nossa experiência com Ionic não foi muito satisfatória, enquanto que o Flutter parecia promissor, mas não nos ofereceu muita vantagem em cima do React Native.
A maturidade do React Native, o envolvimento de grandes players do mercado em seu desenvolvimento e a comunidade estabelecida contaram bastante a favor da nossa escolha.
Algumas empresas que adotam o React Native:
Podemos dizer que Ruby é uma linguagem bastante consolidada com inúmeros cases de sucesso, nesse post de 2020 mostra as Top 10 empresas da YCombinator, fundo de investimentos em startups, todas utilizavam Ruby e Rails, empresas como Stripe, Airbnb e Dropbox estão entre elas.
O framework Rails mudou e influenciou uma nova geração de frameworks e arquiteturas baseadas no convention over configuration (convenção ao invés de configuração) para trazer mais produtividade no desenvolvimento de soluções para Web. Se você construir seguindo as convenções do framework a maior parte das coisas já estará pronta e funcional, em casos excepcionais você precisará configurar algo, essa é a filosofia.
Ruby é uma linguagem orientada a objetos que permite construir um código robusto de forma rápida, simples e com uma legibilidade que facilita a manutenção e evolução das soluções.
O que chamava a atenção era a produtividade, a comunidade bastante ativa com inúmeras soluções para trazer cada vez mais e mais produtividade no desenvolvimento das soluções.
Quando a Idopter Labs começou, os membros iniciais todos já tinham experiência no desenvolvimento de soluções com Ruby e Rails no mercado, em startups, e estavam envolvidos em projetos junto às comunidades de tecnologia. Foi natural escolher essas tecnologias para desenvolver os projetos.
Algumas empresas que adotam:
Esses são alguns cases de soluções desenvolvidas para os clientes da Idopter Labs, usando as tecnologias mencionadas.
MetaCognitiv — Sistema de backoffice, gerenciamento de acesso dos jogos, assinatura e interface dos profissionais e examinandos.
Procondutor Aula Online — Aplicativo para os alunos de CFC (Centro de Formação de Condutores) acompanharem a agenda e assistirem aulas teóricas online.
Airport Code QWZ — Jogo desenvolvido internamente para você aprender sobre os códigos dos aeroportos do mundo todo.
Cursos PM3 — Sistema de pagamento (checkout) integrado com emissão de NF e outros serviços.
Aqui na Idopter Labs nós estamos sempre buscando e compartilhando nossos aprendizados diários e experimentando outras tecnologias para avaliar a evolução e vantagens de outras tecnologias que podem nos ajudar a construir softwares incríveis com soluções robustas, escaláveis e que permitam nossos clientes atingirem seus objetivos.
As tecnologias apresentadas são as que vimos maior vantagem na adoção, pelo potencial, produtividade, suporte da comunidade e robustez para desenvolvermos nossas soluções.
E aí o que achou? Nos envie seus comentários em contato@idopterlabs.com.br.
A Idopter Labs é uma empresa de consultoria em desenvolvimento de software com o objetivo de transformar idéias em negócios digitais rentáveis. Prezamos por transparência, objetividade e agilidade. Estamos no mercado desde 2016 e, desde então, ajudamos diversos clientes em suas iniciativas nas mais diferentes indústrias. Entre em contato conosco, será um prazer construir soluções incríveis com você.