Em tempos de pandemia mundial, uma modalidade de trabalho já vista de forma mais natural para os profissionais de tecnologia, ganhou a mídia nos últimos dias: o home office.

home office

Devido ao distanciamento social forçado, na tentativa de diminuir o potencial de contágio da Covid-19, uma das únicas alternativas para seguir trabalhando é o trabalho de casa. Para garantir a maior produtividade ao optar por essa modalidade de trabalho, existem algumas dicas que podem ser muito úteis.

Verifique sua estrutura

Para que tudo corra bem em sua reunião, é muito importante verificar antes se todos os seus dispositivos estão funcionando corretamente…

Com o crescimento e evolução dos times ágeis projetos de tecnologia, novos papéis surgem para garantir o bom andamento de todos os processos. Um nome bastante ouvido ultimamente é o do Tech Lead, mas poucos sabem qual é de fato a função desse profissional na equipe. Vem comigo que vou trazer um pouco mais sobre qual é o papel de quem ocupa essa posição.

Localizando no time a função do TL

Existem algumas funções que são bastante comuns em times ágeis:

POs: Os POs são responsáveis pelo produto e por garantir que as expectativas dos usuários finais são atingidas.

GPs: Os GPs cuidam da motivação da equipe…

Como em outras profissões, a área de desenvolvimento tem uma série de habilidades, não necessariamente técnicas, que são essenciais para tornar um profissional acima da média. Nesse artigo vamos listar algumas delas e dar algumas dicas de como desenvolvê-las.

1 — Trabalho em equipe

Dificilmente um desenvolvedor vai trabalhar sozinho. Na maioria dos projetos o desenvolvedor vai precisar ter contato com os designers, POs, gerentes de projeto, QAs, além de obviamente com outros desenvolvedores.

Assim sendo, saber trabalhar em conjunto será sempre fundamental para o desenvolvimento na carreira de um programador. …

Estamos chegando ao fim da jornada e depois de todo esse processo, já temos muito mais confiança para trabalhar em nosso código com testes unitários e de tela para nos auxiliar. Aprendemos que os testes automatizados nos permitem validar que nossas modificações não quebram o funcionamento esperado do projeto. Isso nos permite fazer modificações com muito mais tranquilidade e segurança.

Mas aí fica a dúvida: depois de termos todos nossos testes unitários e de tela implementados, como podemos de fato nos beneficiar da nossa suíte de testes?

Relatórios de cobertura de testes — Jacoco

Uma ferramenta essencial para um projeto…

Testes de UI
Os testes de UI são parte importantíssima na garantia de que um aplicativo segue funcional. Eles basicamente tentam reproduzir o que seria feito por um humano em testes manuais. Eles são mais custosos pois precisam de um emulador ou de um device Android para serem executados e fazem uma série de interações com a tela, que apesar de serem mais rápidas que a interação normal de um ser humano interagindo com o aplicativo, ainda assim levam certo tempo.

A grande vantagem desse tipo de teste, é que ele de fato emula um usuário final utilizando seu aplicativo…

O Google IO é um dos eventos anuais mais esperados principalmente pela comunidade de desenvolvedores Android pelo mundo. Eu como desenvolvedor Android, obviamente sempre tive o sonho de poder participar do evento e em 2019 tive esta oportunidade. Como foi minha primeira vez, tive uma série de dúvidas que provavelmente outras pessoas que venham a visitar o evento pela primeira vez também terão, portanto resolvi falar um pouco sobre como foi minha experiência e dar algumas dicas.

Como chegar no evento

O evento ocorreu no Shoreline Amphitheatre em Mountain View. Esse ano o evento foi “no parking” (sem estacionamento disponível…

Quando o assunto é a escrita de testes em projetos, uma série de justificativas surgem para sua não implementação. Uns dirão que o cliente não vê valor em caso de projetos desenvolvidos para terceiros, outros que não há tempo disponível e em partes são pontos válidos.

Mas antes mesmo desses pontos, o maior desafio para os desenvolvedores é de entender porque devemos escrever testes de fato e convencerem a si próprios de que os testes vão agregar valor para eles no processo de desenvolvimento e manutenção de uma aplicação.

Por isso é importante que primeiramente tenhamos em mente quais os…

A partir do Android 6.0, o usuário passou a ter a opção de revogar qualquer permissão de acesso para os apps instalados, por exemplo acesso ao salvamento em disco, acesso a câmera, etc. Para nós como desenvolvedores Android, surge mais uma preocupação, pois agora devemos sempre nos atentar a verificar se a autorização permanece concedida e também explicar para o usuário para qual finalidade será utilizada aquela permissão.

Fazer essa verificação é relativamente simples. O trecho de código abaixo mostra o uso do método checkSelfPermission que permite verificar se a permissão está concedida pelo usuário. Caso seja necessário solicitar a…

Quando estamos testando aplicações que fazem requisições para serviços externos, devemos evitar fazer chamadas para serviços reais para evitar problemas como instabilidade nos serviços e de conectividade e mais importante, para podermos ter previsibilidade de quais serão as respostas e poder escrever nossos testes baseados nessas respostas.

Podemos simplesmente criar mocks e retornar os valores que precisamos, como vimos no artigo anterior. Essa seria a forma mais simples de resolver a questão. Porém, dessa forma você deixaria sem cobertura de teste toda a sua estrutura de requisições e dependendo da quantidade de chamadas para serviços, você teria que construir um…

Testes automatizados não te garantem que o software funciona em todos os cenários possíveis, mas te permitem assegurar que funcionam em cenários específicos definidos previamente. Instabilidades de rede e de serviços, respostas diferentes em requisições ao servidor, tudo isso dificulta muito a escrita dos testes. Existem algumas ferramentas que te ajudam a configurar esse ambiente controlado e previsível para que possamos validar os fluxos.

Independentemente de em qual plataforma você estiver implementando seus testes em algum momento se falará em mocks. Mocks são basicamente classes que substituem as utilizadas originalmente, para agir como dublês que agem de uma forma definida…

Diego Gonçalves Santos

Engenheiro de Software @Dextra_digital, escritor, palestrante, entusiasta de tecnologia e esportes.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store