Meu dia-a-dia como desenvolvedor em 2018

Bora contar um pouco sobre como anda meu workflow!

Escrevi meu dia-a-dia como desenvolvedor em 2015 e 2017 (em inglês). Como em 1 ano, muita coisa muda, bora atualizar.

Rotina

Não trabalho mais remoto desde abril do ano passado, quando comecei a trabalhar no Cubo (podem ver como foram os primeiros seis meses nesse artigo).

Existem vantagens e desvantagens em trabalhar remoto, porém a maior vantagem e o fator mais determinante nessa modalidade é a qualidade de vida: Não se preocupar mais com deslocamento, trânsito, caos na cidade e consequentemente aumento do valor hora.

Sendo assim, a primeira atitude que tomei quando entrei no Cubo foi procurar um apartamento próximo do trabalho. E esse é o melhor investimento que pode ser feito para melhorar qualidade de vida no dia-a-dia.

E de quebra a vista do terraço é fodastica E de quebra a vista do terraço é fodastica

Workplace

O Cubo é um lugar realmente legal. O fato de trabalhar lado-a-lado com várias Startups fornece uma ótima oportunidade de aprendizado e torna o ambiente bastante divertido.

Um ambiente leve faz muita diferença. Passamos mais de 8 horas por dia no trabalho e você ter prazer de estar naquele local, ajuda a produzir muito mais (e produzo mais de bermuda e chinelo 😹) do que você produziria em um ambiente ruim.

E tem vários happy hour! 😆 E tem vários happy hour! 😆

Basicamente rodamos metodologia Scrum. E todos participam em todas as etapas do projeto, o time de produto trabalha junto e misturado com o time de desenvolvimento e vice-versa.

Infraestrutura

MacBook Pro MacBook Pro

Atualmente estou usando um MacBook Pro com macOS Sierra:

  • Tela: 15.4 inches
  • Resolução: 2880x1800
  • Processador Intel Core i7 de 2,9 GHz
  • 16 GB DDR3 SDRAM
  • SSD 512MB
  • Radeon Pro 560 de 4GB

É uma configuração incrível e me permite desempenhar qualquer tarefa sem travamentos. Tem ainda a polemica Touch Bar, que demorei um pouco para acostumar, mas agora acho interessante.

Continuo não utilizando mouse, nem teclado externos. Acho o trackpad fantástico.

Como monitor secundário estou usando um Dell UltraSharp 24.

Workflow

Vou listar a base das tecnologias que mais uso atualmente, porém dentro dessa lista, existem vários outras libs que utilizo no dia-a-dia, seria inviável listar todas.

JavaScript: Angular

1  PswmeK78oWOOjuvX0QLMQ

Comecei a usar assim que entrei no Cubo, e agora na versão 5, penso que atingiu um bom nível de maturidade. O foco da equipe de desenvolvimento do Angular tem sido em: PWA e Performance.

Atualmente os SPAs são muito parecidos, com features próximas e performance equivalente. Não entre nessa de amar um e odiar o outro.

CSS: Stylus e PostCSS

1 psa ZKW iJNL5M7 67USfg

Sou fã desse combo. Leve e poderoso. Uso em conjunto com algumas libs como cssnano, Font Magician, Lost, Rupture e Rucksack.

O Angular tem uma feature chamada Component Styles que permite isolar o CSS como as melhores libs de CSS in JS fazem, e ao mesmo tempo usar técnicas mais tradicionais para escrever CSS.

Back-End: Serverless Framework e NodeJS

1 Ar1zkHFDb2cTqfwAZalCrQ

Somos malucos aqui no Cubo e caímos de cabeça em uma metodologia ainda pouco usada no mundo real (mas que cresce a cada dia): Serverless.

Para quem ainda não conhece, o xhamps escreveu um artigo fazendo uma introdução e para quem mora em São Paulo, estamos organizando o Serverless SP.

Controle de versão: Git

1 NayGR2rZDaYyt4XsZ2 SBg

Unanimidade no mundo inteiro. Dispensa apresentações.

Package manager: NPM

1 cDx5NIRCGxxc04JecbKuww

E sim, tentei usar o Yarn. Continuo não vendo motivos para mudar.

Task Builder: NPM Scripts

1 XFFhSO9l9waHG FsOZGDXA

Abandonei de vez task-runners como o GulpJS. NPM Scripts são simples o suficiente para configurar e rodar sem dependências extras.

Projetos pessoais: Kratos Boilerplate

1 9L  wr90lM7mS4aoN7N1lg

Uso para projetos estáticos, é simples, rápido e cumpre bem seu papel.

Apps

Assim

Text editor: VSCode

1 EU6f3fRsM81AN62KQm1oNA

Comecei a usar o VSCode quando entrei no Cubo, pela ótima integração com o Angular e TypeScript. Mas foi amor a primeira vista.

É open source, rápido, leve, com vários e vários plugins disponíveis (quase impossível não achar algum) e ainda tem uma ótima integração com git e de quebra tem um terminal integrado.

Navegador pessoal: Google Chrome

1 st6O 91q 5ZCw2f7jDapTQ

Gosto do Chrome, dizem ser lento, mas nunca tive problemas nesse sentido. Tudo fica sincronizado e não tenho problemas com compatibilidade com a maioria das páginas na web.

Debugger: Chrome Canary + DevTools

1 dFAIAKk OPR7AfIlKOQFrQ

Várias features de debug ficam disponíveis primeiro no Canary. No passado existia uma diferença grande entre o Chrome padrão e o Canary, sendo complicado para atestar compatibilidade no desenvolvimento, mas não sinto mais essa diferença hoje.

Terminal: Hyper

1 i i ELyV66s vkHIebsx6g

Gosto do Hyper. Apesar de algumas pessoas contestarem sua velocidade, funciona muito bem pra mim. Além disso é open source e você pode usar HTML, CSS e JavaScript para customiza-lo.

Editor de imagens: Gimp

1 JfQW5aFK1fm24tTboriqvg

É open source e bastante completo. Ele não tem muitas features presentes em editores como o Photoshop, mas para as coisas que preciso no dia-a-dia ele cumpre muito bem seu papel.

Issues e tasks: Jira

1 lE5tWOJA4n5b77HxJkLUFg

O Jira é um canhão, e muitas vezes você só precisava matar uma formiga. Mesmo assim é o mais completo gerenciador de tarefas do mercado.

Comunicação: Slack

1 3l8tcGI7C0xNm tAeh6FNA

Unanimidade. Acho o Slack um grande come-come de memória, mas é a melhor ferramenta de comunicação que existe hoje em dia.

Cloud storage: Dropbox

1  gKCBFhPmNKzjjVGGaPUyA

Apesar de usar o Drive para documentos e planilhas. É o Dropbox que uso para armazenamento dos meus arquivos pessoais.

Organização pessoal: Google Calendar

1 BolaEa OYb8bNb0ZHJQabw

Rolou uma issue bacana no Front-End BR sobre ferramentas para organização. Mas continuo no bom e velho Calendar. Me perco quando uso muitas ferramentas e o Calendar tem tudo que preciso para controlar meu dia.

Password manager: 1Password

1 j4WTdRCsDfgtIhR4KCO3SQ

Acho o 1Password fácil de usar, e integra muito bem com qualquer navegador e com o celular.

Notas: iA Writer

1 e9XAspotSPeYZ1eFs5txlg

Bom, com o iA Writer tenho um aplicativo leve (bem leve) que me permite escrever em markdown. Awesome.

Leitores: Feedly e Medium

1 NgRkkDG2YPJ3odJreHJ9vQ

Uso o Feedly para receber os artigos dos blogs e sites que acompanho e o Medium para descobrir textos legais.

Também devem ter percebido que estou usando bastante o Medium como publicador de texto. Isso porque além de achar a experiência de escrever muito fluida, gosto da divulgação orgânica que naturalmente acontece.

Rede Social: Twitter, Github e Instagram

1 M3Icf6qej5wirg5i1l1uUA

O Twitter é a rede social que developers deveriam usar. É rápida, focada, você escolhe as pessoas que deseja acompanhar (e receber conteúdo) e apesar do número máximo de carácter ter subido pra 280. Não tem textão.

Fico o dia todo com o Github aberto e curto navegar no feed para ver novidades e projetos legais, além de ter uma noção de para onde o mercado está indo.

Uso o Instagram simplesmente porque o Facebook morreu como rede social 😇

Fórum de discussão: FrontEndBR

1 z3H6zLnMBw qWIA RBhRBQ

O FrontEnd BR surgiu em um lapso e é o projeto open source que mais me orgulho. Discussões fodas, vagas de emprego, eventos… tem tudo lá.

Música: Spotify

1 p7kumcQmveN6I6bveG3iWA

Dispensa apresentações.

Entretenimento: Netflix

1 eC7cOUj8sngxw10yfG87KQ

Dispensa apresentações [2]

Controle Financeiro: Guia Bolso

1 TB0msmKHv4V0lal6FTcQ0A

Descobri o Guia Bolso ano passado e virei fã. Apesar da interface web ainda não ser boa, o aplicativo funciona muito bem e realmente facilita saber como e com o que estamos gastando.

Sempre digo e não custa reforçar, todas essas coisas são apenas ferramentas, e quase sempre vão ser passageiras, aprenda técnicas, conceitos e as linguagens básicas na web: HTML, CSS e JavaScript.

Vamo que vamo em 2018! 👊