O que é o Tech Stack da Shopify
Publicados: 2023-06-08Introdução
Shopify é um nome conhecido por 2 milhões de empreendedores de comércio eletrônico de mais de 175 países. Qualquer pessoa que esteja começando no negócio de comércio eletrônico já ouviu falar dessa plataforma baseada em assinatura e construtor de vitrine.
A imensa popularidade que o Shopify desfruta se deve à sua impressionante interface do usuário combinada com a pilha de tecnologia moderna. Ele oferece um conjunto completo de ferramentas e linguagens de codificação para criar, oferecer suporte, personalizar e dimensionar um negócio online do zero.
Seu repositório inclui modelos de vitrine, gateways de pagamento, software de ponto de venda, carrinhos de compras, ferramentas de marketing, botões de compra, etc. Este artigo discute a pilha de tecnologia da Shopify, incluindo as ferramentas disponíveis, suporte à linguagem de codificação correspondente e novos desenvolvimentos.
Significado de Tech Stack
Uma pilha de tecnologia, também conhecida como pilha de tecnologia, é um arranjo de ferramentas, aplicativos, software e linguagens de codificação necessárias para criar produtos SaaS. Em outras palavras, uma pilha de tecnologia é a infraestrutura necessária para criar, executar, gerenciar e dimensionar aplicativos da Web e ecossistemas de negócios.
Uma pilha de tecnologia determina os tipos de novos aplicativos que são criados, o nível de personalização feito e o funcionamento eficiente da plataforma. Envolve tecnologia que consiste em dois componentes principais: front-end e back-end. Uma pilha de tecnologia típica inclui navegador da Web, linguagens de programação, estruturas, banco de dados, servidor da Web e sistemas operacionais.
Noções básicas do Shopify Tech Stack
O Shopify é uma plataforma conveniente, fácil de usar e escalável para empreendedores experientes e iniciantes. Seu construtor de loja requer codificação mínima graças ao seu kit de desenvolvimento de software (SDK) abrangente e flexível.
Os técnicos novatos podem experimentar qualquer tema de site, modelos de site personalizáveis, ferramentas de design de arrastar e soltar e linguagens de codificação fáceis. No entanto, os desenvolvedores da Web e de aplicativos podem confiar totalmente na pilha componível de APIs headless da Shopify, serviços de hospedagem e estrutura de software baseada em React para criar novos aplicativos e personalizar sua loja da Shopify.
Atualmente, Shopify tem cerca de 50 aplicativos nativos e mais de 4.000 aplicativos de terceiros em sua App Store. Seu tempo médio de resposta da API é inferior a 100 milissegundos. Ele pode processar sem esforço 40.000 checkouts para cada loja em um minuto. Ao mesmo tempo, possui várias ferramentas e widgets integrados gratuitos, como gerador de código QR e calculadora de margem de lucro para facilitar a configuração dos negócios.
Tudo isso é possível devido à extensa pilha de tecnologia do Shopify. Aqui está uma compilação do histórico de pilha de tecnologia da Shopify e as últimas adições:
Tecnologia que criou a Shopify e seus aplicativos
O impressionante registro de latência de dados da Shopify é resultado de suas bases sólidas na estrutura Ruby on Rails. O fundador da Shopify, Tobi Lutke, construiu a plataforma usando a primeira versão do Ruby on Rails, tornando a Shopify um dos aplicativos Rails mais antigos existentes.
O aplicativo principal da Shopify é um monólito do Rails, a maioria de seus aplicativos específicos de domínio são escritos nessa estrutura de pilha completa. Alguns exemplos incluem: Shopify Shipping , Identity e sua App Store. Além de manter seu código legado Ruby on Rails, Shopify também acolheu outras estruturas como JavaScript com Node.js como sua mais recente adição.
Tecnologia usada para Shopify DataBase
O histórico do banco de dados da Shopify sofreu mais alterações do que sua base de código. Começou sua jornada com o MySQL como seu banco de dados relacional. No entanto, em 2014, tornou-se cada vez mais difícil armazenar todos os seus dados gigantescos no MySQL. Assim, passou a segmentar seus dados em porções menores e armazená-los em diversos bancos de dados. Essa fase foi chamada de sharding.
Para sharding, o Shopify usou bancos de dados como Memcached (para armazenar caches de memória) e Redis (para armazenar valores-chave e perguntas). Embora essa solução parecesse resolver o problema, ela ainda causava grandes interrupções no sistema.
É por isso que atualmente a Shopify usa pods para criar instâncias do programa da Shopify com seus próprios armazenamentos de dados. Isso ajudou a resolver o problema de interrupção. A pilha de tecnologia de banco de dados da Shopify usa uma compilação de Kubernetes, Docker, Google Kubernetes Engine. Nginx, Lua e OpenResty são usados para balanceadores de carga.
Tecnologia que compõe o Admin da Shopify
Shopify é versátil com suas ofertas de pilha de tecnologia quando se trata de pilha de administração do lado do cliente, adicionando camadas de conveniência para seus comerciantes e desenvolvedores. Começou com modelos HTML e jQuery para seus aplicativos de front-end, como a criação de páginas de entrada e páginas de listagem de produtos.
Por um curto período, ele fez a transição para Batman.js e Single Page Application Framework. Atualmente, Shopify voltou ao HTML básico e JavaScript. Juntamente com eles, incorporou as variações mais recentes da estrutura JavaScript, como React e Typescript.
Uma análise da arquitetura na pilha de tecnologia da Shopify
1) Front-end
Shopify tem uma pilha de tecnologia de front-end intuitiva que permite que os desenvolvedores de front-end criem vitrines personalizadas. Em uma linha de desenvolvimentos mais recentes, Shopify está promovendo o comércio sem cabeça , delineando o front-end do back-end. Isso é feito principalmente por meio do Hydrogen, seu kit de ferramentas integrado para comércio sem cabeça.
Algumas das ferramentas interativas do lado do cliente do Shopify incluem carrinhos de compras, calculadora de preços internacionais, ponto de venda, interface do usuário da página de destino etc. Sua pilha de tecnologia é compatível com bibliotecas JavaScript como React, Typescript, bem como HTML, CSS, para projetar layout de página, navegação menus etc
Os empreendimentos mais recentes da Shopify incluem Liquid (uma linguagem de modelo para criar temas e modelos personalizados da loja Shopify), Shopify CLI (ferramenta de interface de comando em linha para criar seus aplicativos) e Polaris (um sistema de design para Admin).
2) Back-end
Shopify tem uma coleção robusta de tecnologia para alimentar suas operações e tarefas de back-end por trás do aplicativo. Sua infraestrutura escalável e confiável inclui primitivas, APIs, SDKs e outras ferramentas. Eles ajudam os proprietários e desenvolvedores de lojas a criar capacidades de loja personalizáveis e totalmente equipadas para fluxos de check-out, gerenciamento de estoque e pedidos, processamento de vendas, etc.
Em 2022, Shopify adotou oficialmente Rust junto com Ruby para desbloquear a programação de sistemas de alto desempenho. Historicamente, os desenvolvedores de back-end do Shopify dependiam de linguagens como C e Go que são compatíveis com seu Ruby Stack. Agora, eles passaram a priorizar a flexibilidade com Rust, que permite integrações com plataformas da Web de última geração, como WeAssembly.
Em outro movimento notável, Shopify democratizou sua interface de back-end para todos os desenvolvedores com suas Shopify Functions. Ele permite que eles criem um código personalizado para a lógica de back-end do Shopify, tornando-o uma plataforma de código aberto.
3) Banco de dados e serviços de nuvem
Shopify tradicionalmente usa um banco de dados relacional como MySQL e RDBMS para garantir escalabilidade, durabilidade e segurança de seus dados. No entanto, depois de reavaliar suas necessidades de competência global, zero interrupções de rede e velocidade aprimorada, a Shopify adotou os 'pods'.
Os pods criam pequenos pacotes autônomos de armazenamentos de dados, cada um executando seus próprios processos. Shopify usou Kubernetes e Docker para isso. Recentemente, Shopify decidiu tornar-se nativo da nuvem para reduzir a carga cognitiva e acabar com o limite entre o host e os contêineres de aplicativos. Este caso é específico para otimizar sua plataforma de desenvolvimento de código.
4) Interface de programação de aplicativos (API)
Shopify é uma potência de APIs com calibre de alto desempenho. Ele estende vários casos de uso de back-end e front-end com APIs, permitindo que os proprietários de lojas interoperem com várias plataformas. As APIs da Shopify são construídas com estruturas GraphQL e REST e oferecem suporte a várias bibliotecas de clientes, como Node.js, PHP, Python, Ruby e Curl.
As APIs da Shopify são amplamente classificadas em categorias específicas: mercado, funções administrativas, pagamentos, mensagens, vitrine etc.
A Shopify desenvolveu APIs específicas para criar temas de loja personalizados, atualizar conteúdo dinamicamente e construído para comércio sem interface. Essas APIs são API Ajax (com ponto final REST), API de renderização de seção (marcação HTML) e Hydrogen (criada no Remix).
5) App Store da Shopify
A Shopify App Store é o lar de uma coleção épica de aplicativos, totalizando cerca de 8.000 aplicativos nativos e de terceiros. Em 2018, Shopify renovou sua loja de aplicativos com um novo tema e classificação organizada dos aplicativos que hospeda. Existem seis categorias principais:
- Aplicativos para encontrar produtos (especificamente para dropshipping, serviços de impressão sob demanda)
- Aplicativos para venda de produtos (para direcionar vendas, fidelidades, assinaturas)
- Aplicativos para pedidos e remessas (para lidar com atendimento, estoque, rastreamento de pedidos, etc.)
- Aplicativos para design de loja (para página personalizada, conversores de moeda, pop-ups)
- Aplicativos para gerenciamento de loja (suporte ao cliente, help desk, FAQs)
- Aplicativos para marketing e conversão (segmentando e-mail marketing, descontos)
Shopify tem uma pilha de tecnologia abrangente para ajudar os desenvolvedores na criação, hospedagem e lançamento de aplicativos. Shopify oferece principalmente scripts Ruby e Node para escrever a base de código. Ferramenta Shopify CLI para auxiliar no desenvolvimento rápido de aplicativos e Polaris, que é seu sistema de design oficial e kit de interface do usuário. Os criadores de aplicativos podem faturar seus produtos com a GraphQL Admin API da Shopify.
Deve ter aplicativos em sua pilha de tecnologia Shopify para otimizar sua loja
Aqui estão alguns aplicativos de tecnologia de terceiros que podem otimizar vendas, logística e engajamento do cliente para sua loja:
1) Para gerenciamento de devoluções - ClickPost Returns Plus
ClickPost Returns Plus é uma solução especializada de gerenciamento de devoluções da Shopify. O aplicativo ajuda as marcas a aumentar a fidelidade do cliente e reduzir as taxas de rotatividade, otimizando os retornos com o poder da automação.
Com o aplicativo, as marcas podem criar um portal de devoluções de marca personalizável e compatível com dispositivos móveis, configurável para suas políticas de devolução. Além disso, eles podem ter um portal de retorno de autoatendimento em vários idiomas, atualizações automáticas por e-mail e relatórios analíticos detalhados.
2) Para email marketing personalizado - Klaviyo
Klaviyo é uma ferramenta de marketing omnichannel conhecida por sua abordagem personalizada para comunicação com o cliente via e-mail e SMS. Possui ferramentas robustas baseadas em dados, como análise de dados para insights de público e teste A/B para otimização de e-mail. Ele pode automatizar campanhas e criar mensagens personalizadas para uma conversão mais rápida do cliente.
3) Para suporte ao cliente - Zendesk
O Zendesk é um aplicativo conhecido para atendimento ao cliente e necessidades de suporte. Ele oferece suporte automatizado ao cliente com ferramentas como conversa guiada, suporte de autoatendimento e bots de IA. O Zendesk permite que os proprietários de lojas acionem mensagens de clientes personalizadas e chamadas IVRS para um suporte significativo ao cliente.
4) Para conversão do cliente- Justuno
Justuno é uma ferramenta de engajamento do cliente projetada especificamente para converter clientes com captura de e-mail e pop-ups. Possui poderosas ferramentas de marcação e captura de leads, como banners, mensagens de sites, promoções na página, cronômetros de contagem regressiva e muito mais. Justuno ajuda melhor na recuperação de carrinhos abandonados e no aumento do valor médio do pedido.
Conclusão
Uma pilha de tecnologia determina os fundamentos de qualquer aplicativo de negócios e plataforma SaaS. A pilha de tecnologia da Shopify embebida em Rails é o segredo de sua infraestrutura de negócios altamente eficiente e robusta que alimenta 10% do comércio dos EUA. Esperamos que este artigo ajude os desenvolvedores full-stack e as marcas a terem uma compreensão atualizada da tecnologia da Shopify.
perguntas frequentes
1) Com qual tecnologia o Shopify é construído?
Shopify é construído com Ruby on Rails, que é uma estrutura de aplicativo da web completa para desenvolvimento de front-end e back-end. Embora a Shopify continue seu legado Ruby, nos últimos anos ela também começou a trabalhar com Node.js e Rust.
2) Como as marcas podem auditar sua pilha de tecnologia da Shopify?
A auditoria das pilhas de tecnologia do Shopify começa com a compreensão dos processos de negócios e aplicativos associados ou APIs envolvidos nele. Comece listando todos os aplicativos e tecnologias usados para seus aplicativos de negócios associados. Feito isso, envie a lista para o restante da equipe para contabilizar os aplicativos e ferramentas.