The Codest
  • Sobre nós
  • Serviços
    • Desenvolvimento de software
      • Desenvolvimento de front-end
      • Desenvolvimento backend
    • Staff Augmentation
      • Programadores Frontend
      • Programadores de back-end
      • Engenheiros de dados
      • Engenheiros de nuvem
      • Engenheiros de GQ
      • Outros
    • Aconselhamento
      • Auditoria e consultoria
  • Indústrias
    • Fintech e Banca
    • E-commerce
    • Adtech
    • Tecnologia da saúde
    • Fabrico
    • Logística
    • Automóvel
    • IOT
  • Valor para
    • CEO
    • CTO
    • Gestor de entregas
  • A nossa equipa
  • Case Studies
  • Saber como
    • Blogue
    • Encontros
    • Webinars
    • Recursos
Carreiras Entrar em contacto
  • Sobre nós
  • Serviços
    • Desenvolvimento de software
      • Desenvolvimento de front-end
      • Desenvolvimento backend
    • Staff Augmentation
      • Programadores Frontend
      • Programadores de back-end
      • Engenheiros de dados
      • Engenheiros de nuvem
      • Engenheiros de GQ
      • Outros
    • Aconselhamento
      • Auditoria e consultoria
  • Valor para
    • CEO
    • CTO
    • Gestor de entregas
  • A nossa equipa
  • Case Studies
  • Saber como
    • Blogue
    • Encontros
    • Webinars
    • Recursos
Carreiras Entrar em contacto
Seta para trás VOLTAR
2020-11-18
Desenvolvimento de software

TheCodestReview #4 - sumo semanal de engenharia de software

The Codest

Kamil Ferens

Diretor de Crescimento

Dizem que o tempo voa depressa quando nos estamos a divertir. Para mim, pessoalmente, a parte divertida é especialmente importante no quotidiano das empresas em fase de arranque e de crescimento. Faz com que me divirta, independentemente de quanto dos meus recursos energéticos internos são consumidos pela azáfama semanal.

(No próximo episódio, irei abordar o tema do humor no local de trabalho para o aprofundar um pouco mais, só porque posso. "Porquê tanta seriedade?").

Por falar em tempo, passaram duas semanas desde a minha última publicação, pelo que está na altura de publicar o quarto episódio do nosso #TheCodestReview série.

Lista dos temas que abordamos esta semana:

  1. Ficar viciado em React
  2. Tudo o que você sempre quis saber sobre o cache de exibição em Carris
  3. O Diretor de Engenharia como mestre recrutador

O comentário sobre o cache de visualizações foi feito pelo nosso programador fullstack e o podcast do diretor de engenharia foi comentado pelo meu humilde eu.

Como um conhecido mestre da aplicação Paint e admirador de GIFs e memes, que são como chocolates Merci - dizem mais do que 1000 palavras, decidi que, a partir de agora, vou acrescentar aqui um sabor a isso. E adivinha?

Darth Sidious Pensas que me podes deter GIF de GIFs do Darthsidious

Da última vez, decidimos dar destaque ao StimulusReflex, que está a chamar a atenção na Rubi comunidade como um novo miúdo no bloco, sendo uma alternativa à utilização de Javascript em projetos Rails para evitar exageros.

Ver: StimulusReflex aka ReactiveRails

Para que seja uma batalha em pé de igualdade, quis deixar que o React desse um golpe no Stimulus. Como também sou um conhecido homem de honra, que faz sempre o que diz e cumpre as suas promessas, aqui vai:

No próximo episódio, tenho o prazer e o entusiasmo de anunciar que teremos um post convidado do engenheiro React da Vinted.com. Para aqueles de vocês que nunca ouviram falar de Vinted (chances baixas, mas ainda possíveis), Vinted é um mercado de moda originário de Vilnius, Lituânia, que atingiu uma avaliação de unicórnio em 2019. A plataforma é construída sobre sólidos Ruby on Rails apoiada por React na parte frontal.

Nota: a minha mulher está a adorar a Vinted e deixou quase completamente de usar o OLX como principal destino para arrumar o nosso guarda-roupa e vender roupa usada (era uma verdadeira fã incondicional) =. VOCÊS ESTÃO A FAZER TUDO BEM!

Tenho o privilégio de dar as boas-vindas ao primeiro colaborador convidado da nossa série:

Meryl Streep Sim GIF de GIFs de Merylstreep

Ugnė Kryževičiūtė - Engenheiro React da Vinted

Ficar viciado no React por LadyBug Podcast

Ao ler o título do recente podcast da LadyBug ("Getting Hooked On React"), esperava que fosse sobretudo sobre Ganchos React. No entanto, embora não tenha se aprofundado em Hooks, o podcast forneceu uma excelente introdução aos conceitos básicos da biblioteca React para JavaScript.

Ali e Emma, do podcast LadyBug, discutem os prós e contras do React - desde a disposição geral da biblioteca e os seus benefícios até discussões animadas sobre componentes, tratamento de dados ou o Ciclo de vida do ReactTudo apresentado com uma pitada de experiência pessoal. Vale a pena ouvir para qualquer programador de front-end que ainda não tenha tido a oportunidade de experimentar as maravilhas do React.

O meu primeiro encontro com o React foi há cerca de três anos, quando comecei a minha jornada como programador. Embora Ali e Emma sugiram que o React possa parecer confuso no início, pela minha própria experiência, achei-o relativamente fácil de começar e provavelmente o mais fácil de avançar em comparação com outras estruturas de front-end. Existem muitos tutoriais, artigos, bibliotecas de código aberto e outros tipos de materiais de aprendizagem disponíveis em todo o lado. No entanto, é preciso estar ciente do desenvolvimento ativo do React quando se analisa esses recursos. Este episódio do podcast da LadyBug não é uma exceção - alguns aspectos e métodos mencionados já foram descontinuados há algum tempo. Assim, é melhor seguir os conselhos da própria Emma e consultar a documentação mais recente.

O React evoluiu e amadureceu muito, tornando código escrever ainda mais fácil com Hooks, que permite usar métodos de estado e ciclo de vida sem escrever componentes de classe. Mas para iniciantes - como Ali observa com precisão - a variedade de maneiras de escrever React (como componentes de classe/funcionais/ganchos) adiciona complexidade adicional, pois às vezes pode ser difícil visualizar o que está acontecendo. Além disso, ter de destilar o que precisa e encontrar informações relevantes sobre a implementação do código pode ser um desafio.

Como um dos principais benefícios do React, Ali aponta o facto de ser baseado em componentes, permitindo a modularização do código e facilitando o trabalho em conjunto com outros programadores. Além disso, a capacidade de utilizar JSX é uma grande ajuda visual quando se trabalha com UI no código JavaScript - não é necessário ter ficheiros HTML separados!

Ali e Emma também resumem muito bem a flexibilidade que um sistema de componentes proporciona. Um excelente exemplo prático é o da minha empresa Vinted, que registou um rápido crescimento em relação ao produto bem como o equipas de desenvolvimento que trabalharam nele nos últimos anos. O React proporcionou enormes benefícios - permitiu nós para escrever código muito mais limpo, utilizar componentes de IU reutilizáveis e tornou o nosso código mais fácil de testar.

No geral, este episódio do podcast LadyBug proporciona uma discussão animada e encantadora sobre os principais aspectos do React. Recomendo-o a qualquer pessoa que esteja a iniciar a sua viagem com o React. Repleto de exemplos engraçados e analogias com a vida real, o episódio "prende" perfeitamente a atenção de todos os ouvintes, incluindo a minha.

Cache de exibição do Rails por Jonathan Miles de Honeybadger

Infelizmente, as visualizações no Rails estão a ficar mais lentas com o tempo. Isso ocorre porque a quantidade de objetos armazenados no banco de dados cresce. Isto causa tempos de consulta mais longos e, claro, um processamento mais longo se estiver a fazer algo com cada um dos objectos. Quando isso acontece, não há nenhuma chance, pois existe o cache de visualizações do Rails.

Graças a isto, pode poupar bastante tempo carregando dados pesados da base de dados a partir da cache (carregando um único ficheiro html guardado em vez de consultar a base de dados e processar objectos). Pode também torná-lo menos dispendioso no caso de diferentes parciais e objectos - claro que se os objectos não mudarem com muita frequência. Também pode tentar manter os objectos em cache em partições separadas - e poupar, por exemplo, 19 de 20 mensagens a serem processadas (possivelmente com muitos campos).

Por padrão, o cache do Rails usa o file_store e mantém os dados em cache nas pastas. Mas ele não está excluindo entradas de cache antigas (que podem ter expirado há muito tempo). Isso pode levar ao estouro da quantidade de arquivos ou até mesmo ficar sem espaço livre em um servidor. O outro método é memory_store que também tem algumas desvantagens (já que o cache é mantido num único servidor). Também pode exceder a quantidade de RAM mantida no servidor (ou a falta de cache se esta for apagada a toda a hora). É por isso que o melhor mecanismo de cache de alta escala é o método Memcached/Redis. Isto dá-lhe a oportunidade de utilizar uma máquina separada para manter a cache que pode ser utilizada por todos os servidores. Graças a isso, não haverá problemas de falta de cache ou de espaço em disco num servidor.

A cache no Rails é mantida com base num identificador - que pode ser dado imediatamente como uma string ou gerado automaticamente quando passa um objeto para a função de cache. No caso dos objectos, é mais frequentemente o atributo updated_at. Também é possível fornecer uma chave estática a partir de parâmetros de objetos.

Um método diferente de armazenamento em cache é utilizar Javascript para atualizar um campo que é alterado uma vez por dia. Desta forma, é possível ter sempre uma data válida, sem ter de atualizar o sítio Web, que pode ser muito grande ou lento a ser executado.

Diretor de engenharia como mestre de recrutamento por Mentoring Club

Para não vos estragar a surpresa, o painel de discussão sobre o tema do papel do diretor de engenharia no processo de contratação é extremamente valioso para todos os que se perguntam quando é a altura certa para o líder tecnológico entrar no ciclo de entrevistas. Em Codest, nós praticamos o que os membros do painel pregam e o nosso CTO é o primeiro ponto de contacto com engenheiros candidatar-se a nós, enquanto na fase seguinte as entrevistas são efectuadas por equipa gestores com os quais os potenciais novos membros da equipa irão trabalhar em estreita colaboração. Alguns conselhos práticos que pode aplicar de imediato para melhorar o seu jogo de contratação como gestor de engenharia:

  1. Reveja o seu processo e certifique-se de que entra no fluxo o mais cedo possível, sendo idealmente o primeiro ponto de contacto para os candidatos, uma vez que as primeiras impressões desempenham um papel fundamental na forma como a sua empresa é vista pelos melhores talentos.

  2. Contacte os gestores de contratação altamente eficazes da sua organização (talvez aquele que o contratou no passado) e pergunte se pode acompanhar algumas das suas entrevistas planeadas, verificar as suas técnicas, pedir dicas. Observe e aprenda. Entre em cada entrevista com uma curiosidade genuína pelos candidatos.

  3. Procurem potencial e contratem por potencial e capacidade de crescimento rápido.

  4. Fale sobre os seus anúncios de emprego com todos os seus engenheiros e pergunte-lhes se se candidatariam ao emprego. Se não, pergunte o que é que não presta e aplique o feedback deles no anúncio de emprego de construção 2.0 que está prestes a colocar nos painéis de emprego. 

  5. Encare a primeira entrevista como uma oportunidade para criar uma óptima relação com os seus potenciais futuros colegas.

Encorajo-vos a ver o painel de vídeos na íntegra, mas se gostam de podcasts e gostam de ouvir enquanto conduzem, fazem exercício ou lavam a loiça, aqui têm também um Spotify ligação. 

Muito obrigado por lerem e, se chegaram até aqui, agradeço o vosso tempo e qualquer comentário (quer seja positivo ou negativo) é mais do que bem-vindo em LinkedIn ou para o meu correio eletrónico. 

Em breve, o próximo episódio! 

GIF de dança "Yippie IWill See You Soon Dancing de GIFs de "Yippieiwillseeyousoon

Ler mais:

TheCodestReview #3 - sumo semanal de engenharia de software

TheCodestReview #2 - sumo semanal de engenharia de software

TheCodestReview #1 - sumo semanal de engenharia de software

Artigos relacionados

Ilustração de uma aplicação de cuidados de saúde para smartphone com um ícone de coração e um gráfico de saúde em ascensão, com o logótipo The Codest, representando soluções digitais de saúde e HealthTech.
Desenvolvimento de software

Softwares para o setor de saúde: Tipos, casos de uso

As ferramentas em que as organizações de cuidados de saúde confiam atualmente não se assemelham em nada às fichas de papel de há décadas atrás. O software de cuidados de saúde apoia agora os sistemas de saúde, os cuidados aos doentes e a prestação de cuidados de saúde modernos em...

OCODEST
Ilustração abstrata de um gráfico de barras em declínio com uma seta ascendente e uma moeda de ouro que simboliza a eficiência ou a poupança de custos. O logótipo The Codest aparece no canto superior esquerdo com o slogan "In Code We Trust" sobre um fundo cinzento claro
Desenvolvimento de software

Como dimensionar a sua equipa de desenvolvimento sem perder a qualidade do produto

Aumentar a sua equipa de desenvolvimento? Saiba como crescer sem sacrificar a qualidade do produto. Este guia cobre sinais de que é hora de escalar, estrutura da equipe, contratação, liderança e ferramentas - além de como o The Codest pode...

OCODEST
Desenvolvimento de software

Construir aplicações Web preparadas para o futuro: ideias da equipa de especialistas do The Codest

Descubra como o The Codest se destaca na criação de aplicações web escaláveis e interactivas com tecnologias de ponta, proporcionando experiências de utilizador perfeitas em todas as plataformas. Saiba como a nossa experiência impulsiona a transformação digital e o negócio...

OCODEST
Desenvolvimento de software

As 10 principais empresas de desenvolvimento de software sediadas na Letónia

Saiba mais sobre as principais empresas de desenvolvimento de software da Letónia e as suas soluções inovadoras no nosso último artigo. Descubra como estes líderes tecnológicos podem ajudar a elevar o seu negócio.

thecodest
Soluções para empresas e escalas

Fundamentos do desenvolvimento de software Java: Um Guia para Terceirizar com Sucesso

Explore este guia essencial sobre o desenvolvimento de software Java outsourcing com sucesso para aumentar a eficiência, aceder a conhecimentos especializados e impulsionar o sucesso do projeto com The Codest.

thecodest

Subscreva a nossa base de conhecimentos e mantenha-se atualizado sobre os conhecimentos do sector das TI.

    Sobre nós

    The Codest - Empresa internacional de desenvolvimento de software com centros tecnológicos na Polónia.

    Reino Unido - Sede

    • Office 303B, 182-184 High Street North E6 2JA
      Londres, Inglaterra

    Polónia - Pólos tecnológicos locais

    • Parque de escritórios Fabryczna, Aleja
      Pokoju 18, 31-564 Cracóvia
    • Embaixada do Cérebro, Konstruktorska
      11, 02-673 Varsóvia, Polónia

      The Codest

    • Início
    • Sobre nós
    • Serviços
    • Case Studies
    • Saber como
    • Carreiras
    • Dicionário

      Serviços

    • Aconselhamento
    • Desenvolvimento de software
    • Desenvolvimento backend
    • Desenvolvimento de front-end
    • Staff Augmentation
    • Programadores de back-end
    • Engenheiros de nuvem
    • Engenheiros de dados
    • Outros
    • Engenheiros de GQ

      Recursos

    • Factos e mitos sobre a cooperação com um parceiro externo de desenvolvimento de software
    • Dos EUA para a Europa: Porque é que as empresas americanas decidem mudar-se para a Europa?
    • Comparação dos centros de desenvolvimento da Tech Offshore: Tech Offshore Europa (Polónia), ASEAN (Filipinas), Eurásia (Turquia)
    • Quais são os principais desafios dos CTOs e dos CIOs?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Website terms of use

    Direitos de autor © 2026 por The Codest. Todos os direitos reservados.

    pt_PTPortuguese
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese es_ESSpanish nl_NLDutch etEstonian elGreek cs_CZCzech pt_PTPortuguese