Meus primeiros meses trabalhando como desenvolvedora na Jera

Texto por Larissa Marães

Quando iniciei a minha graduação em Engenharia de Computação, eu não tinha muitas expectativas profissionais e muito menos conhecia as empresas de tecnologia da capital. Até que me ingressei em um curso técnico que me trouxe uma visão do mercado de TI. Neste curso, tive a oportunidade de visitar algumas empresas, e uma delas foi a Jera. Foi amor à primeira vista. Desde então, a Jera se tornou uma das empresas em que sempre sonhei em trabalhar.

Te quiero! <3

E então, em um momento perfeito da minha vida pessoal e acadêmica, encontro uma divulgação de vaga de estágio em desenvolvimento na Jera, na qual logo me inscrevi. Foram 4 etapas de processo seletivo, onde em cada uma eu me identificava cada vez mais com a empresa. Em uma das etapas, me enviaram um link onde continha o Culture Code da Jera e nele são apresentados os valores da empresa. Amor ao trabalho, foco no cliente, diálogo aberto, melhoria contínua e valorizar realizações… Ler essas palavras bonitas me pareceu encantador, mas no fundo, eu não tinha idéia de como isso funcionava.

Eu não sei o que é, mas eu tô dentro!

No dia 16 de junho de 2018, iniciou-se a minha jornada na taberna. E com a mentalidade de qualquer noob, eu achava que seria moleza desenvolver software (Sabe de nada, inocente!). Logo no primeiro dia apareceram os desafios. No meio de toda apresentação aos processos da empresa, foi necessário estudar bastante e tomar muitos cafezinhos para entender a fundo como o processo de desenvolvimento de software funciona lá dentro.

Diante dos times de desenvolvimento Web, Android e iOS, eu tinha quase certeza que iria atuar em desenvolvimento Web, pois já tive experiências nessa área, além do curso técnico que fiz. Mas para a minha surpresa, fui alocada no time Android!! O sentimento de desespero tomou conta ao perceber que estava fora da minha zona de conforto. E por conta disso, me empenhei o máximo e estudei sem parar para conseguir realizar minhas entregas. E quando eu achava que já tinha aprendido o suficiente, novos desafios surgiram e eu voltava a me empenhar e estudar. Em poucas semanas aprendi coisas que eu demoraria anos para aprender na faculdade. Em tão pouco tempo me senti estimulada a entender mais essa nova área e me tornar uma desenvolvedora tão boa quantos os desenvolvedores de lá. É melhoria contínua o nome disso, né?

Como me sinto estudando e percebendo que estou melhor do que ontem.

Mas nada como o primeiro app… Primeiro projeto dentro da Jera. Ainda estava aprendendo e me adaptando à todos os processos. “Não tenham medo de errar”, eles disseram. E foi o que eu fiz. Errei MUITO! Como era nova na equipe, pensei que seria tratada como uma mera novata. E por conta disso, eu tinha vergonha (até mesmo medo) de expressar as minhas dificuldades e pedir ajuda. Com isso, aprendi da forma mais dura a importância do diálogo aberto, pois sem ele tive uma semana difícil e falhei na entrega de algumas tarefas, além de prejudicar a minha equipe. Depois disso, passei a explorar mais o diálogo aberto no meu dia-a-dia, buscando entender e expressar ideias. E com isso, criar debates construtivos para solucionar problemas.

Euzinha falhando com a equipe 🙁

Diferente de qualquer trabalho de faculdade, eu não estava fazendo aquilo por uma nota ou aprovação em uma disciplina. Afinal, o que eu estava desenvolvendo fazia parte de algo maior, um produto que tinha investimento de uma pessoa que acreditava na sua ideia. Demorou um tempo para eu perceber isso. E quando percebi, comecei a desenvolver aquilo como se fosse meu produto também. E o resultado disso é incrível! Pois você se sente engajado com o projeto e o time, realiza entregas de qualidade, e melhor ainda, a satisfação do cliente. #FocoNoCliente

Meu app, my precious!!

Na Jera trabalhamos duro, mas quando comemoramos, é pra valer também! Além das reuniões diárias com o time, temos toda sexta uma retrospectiva (chamada carinhosamente de retrô) onde nos reunimos para discutir os pontos a serem melhorados e as coisas boas que aconteceram na semana. Aah… Como eu amo as retrôs! É o momento que temos para juntos fazermos barulho e comemorarmos as pequenas conquistas da semana. E então eu entendi como é bom valorizar realizações. não apenas as suas, mas as dos outros colegas de trabalho também.

E as retrôs são tipo isso…

E diante de todos os valores citados, o amor ao trabalho é o meu favorito. Pois quando eu acho que finalmente entendo o que é amar o trabalho, cada dia que passa eu me surpreendo e amo cada dia mais o que faço. E não só isso, é amar o que faz e amar fazer. E na Jera, com esse ambiente de trabalho maravilhoso, fica cada dia maior o amor que sinto pelo desenvolvimento de software e por essa empresa linda que mal conheço e já considero pakas! <3

 

 

Mindset ágil para melhoria contínua dos times

Mindset significa “mentalidade” ou “configuração da mente”, em outras palavras, é a forma como enxergamos o mundo e interpretamos os acontecimentos ao nosso redor. Porém, não é algo estático, estamos em constante evolução e essa “configuração da mente” pode ser reajustada com o tempo. Neste post você descobrirá a importância de adotar um mindset ágil para conquistar a melhoria contínua na agilidade.

Mais do que saber o que é e como aplicar as metodologias, é importante saber se adaptar e aprender com os desafios, sempre buscando a melhoria contínua. Porém, assim como a cultura organizacional não se nasce da noite para o dia, tal mentalidade precisa ser construída. Algumas características são essenciais para a criação de uma mentalidade ágil: cultura do compartilhamento de conhecimento, entregas contínuas de valor  e empoderamento de pessoas.

Cultura do compartilhamento de conhecimento

O compartilhamento de conhecimento auxilia para que todos os responsáveis do projeto saibam como está o desenvolvimento do mesmo, auxiliando na tomada de decisão e na percepção de erros. Desta forma, entrega-se um produto com maior valor para o cliente final, que foi inspecionado por vários pontos de vista em todas as partes do seu processo. Tal cultura é presente nos métodos ágeis que se baseiam no manifesto ágil, movimento que ocorreu em 2001 e tem como base o conceito de responder às mudanças mais que seguir um plano, ou seja, o importante é entregar um produto de valor para o cliente e para a organização, independente do que está em contrato.

Entregas contínuas de valor

Não é necessário chegar ao fim do projeto para perceber que um erro no começo poderia ter sido evitado. A existência de ciclos curtos de desenvolvimento é uma das grandes vantagens dos métodos ágeis pois é possível “errar cedo” e refletir sobre as falhas no processo bem como a solução. Aprender com os erros é crucial para um mindset ágil.

Empoderamento de pessoas

O conceito de liderança é outro, hoje, todos os membros de um time são responsáveis por mobilizar, influenciar uns aos outros e buscar formas para que o ambiente seja o mais harmonioso possível e propício a mudanças. Autonomia é a chave do alto desempenho, confiar responsabilidades às pessoas, por mais simples que elas sejam, proporciona um ambiente de confiança e que incentiva as mesmas a procurarem a evolução de suas atividades de forma natural, sem “forçar a barra”.

De forma geral, executar (cegamente) as atividades e rituais que os métodos ágeis pregam não vai melhorar a performance do time, só vai engessar e complicar o processo. Para alcançar a melhoria contínua dentro da agilidade é necessário mudar o mindset não só do time mas da organização como um todo.

Texto: Isna Faria e Maria Fernanda Marcotti

Times Scrum – Como facilitar as fases de formação?

Texto por Bianca Pereira

No texto anterior, entendemos um pouco mais a analogia entre o time de scrum e o de futebol (clique para ler). Vimos brevemente como as equipes são compostas e entendemos melhor os papéis que cada um desempenha.

Hoje conversaremos melhor sobre as fases de formação de times e como arbitrá-las até a equipe se estabilizar na partida.

Em 1965, o psicólogo Bruce Tuckman publicou um estudo apresentando as quatro etapas de construção de um grupo e o comportamento das pessoas em cada momento.

Formação e conflito

O primeiro estágio, chamado de “formação”, envolve a apresentação, o entrosamento inicial dos membros, entendimento do “jogo” e reconhecimento das outras posições.

O facilitador ou Scrum Master, analogamente ao juiz da partida, exerce um papel diretivo para equipe, trazendo pontos de atenção relacionados ao objetivo do projeto. É o momento de mostrar as regras do jogo que precisam ser seguidas: prazos, cerimônias do Scrum, objetivos de entregas.

No segundo momento, a equipe tende a entrar na fase de “conflito”.  É quando os ânimos ficam exaltados e a pressão da vitória atinge todos os membros do time. Surgem, então, os carrinhos, os puxões de camisa, as defesas irregulares e o juiz precisa ser mais incisivo em relação às regras.

Alguns times podem tentar evitar essa fase, camuflá-la ou negá-la. Porém, é importante que scrum master ou facilitador do projeto ajude a trazer esses problemas à tona.  Só assim o grupo poderá reconhecer o conflito e chegar a uma solução em conjunto.

Estabilização e desempenho

Depois da tempestade, vem sempre a calmaria e é por isso que após muitas faltas marcadas e cartões distribuídos, os times entram na fase de “normatização”, seguida pela etapa de “desempenho”.

Esse período de estabilidade ocorre porque os membros resolveram os conflitos e passam a reconhecer os pontos fortes uns dos outros, trabalhando com sinergia para suprir as lacunas em direção ao mesmo objetivo.

O juiz continua a exercer um papel de apoio, mas sua interferência torna-se cada vez menos necessária. O time começa a adquirir independência e alta performance.

Uma partida de futebol e projetos de scrum não são eventos lineares. Alguns acontecimentos podem levar times já estabilizados novamente ao conflito. Isso acontece por exemplo, com a entrada e saída de membros, mudança na priorização de entregas, trocas de papéis, discordância de técnicas, entre outras inúmeras situações. Nesse caso, cabe ao juiz ser imparcial e diretivo fazendo valer as regras do jogo visando ao resultado esperado.

Para além da teoria, cada jogo e cada time tem sua particularidade. Imagine-se sendo árbitro de uma disputa entre Flamengo x Macaé ou São Paulo x Portuguesa, parece algo dentro do “roteiro”, certo? Agora, coloque-se como juiz em um jogo entre, por exemplo,  Flamengo x Fluminense, Grêmio x Internacional ou ainda, Palmeiras x Corinthians e algumas outras variáveis entram em questão. Mas isso é papo para outra hora, por hoje, fim de jogo.

Times Scrum – Quem não sonhou em ser um jogador de futebol?

Texto por Bianca Pereira


Todo amante de futebol sabe a importância que faz um time bem estruturado em uma partida. As posições precisam ser estrategicamente definidas e preenchidas com os jogadores responsáveis, é preciso treinar diariamente para evoluir a técnica e, principalmente, o time precisa estar entrosado.

Muitas vezes temos jogadores com muita habilidade em campo, mas se não houver o tal do entrosamento do grupo, nada feito! Então acontecem passes perdidos, bola na trave, bola na área sem ninguém pra cabecear, e daí, o choro é livre.

Quem já trabalhou utilizando o Scrum, sabe que funciona da mesma maneira. Para entregar um projeto baseado nesse framework, a construção de um time colaborativo é essencial. Isso vai além do domínio de técnicas avançadas de desenvolvimento e abrange a capacidade de adaptação, inspeção e transparência da equipe para com o jogo em si.

Para chegar nesse patamar é preciso, claro, muitos treinos, muitos jogos, adversários “fáceis”, aqueles mais complicados, muita falta apitada e alguns cartões pelo caminho.

Papéis do time scrum x time de futebol

Para contar essa história direito, vamos explicar os papéis do Scrum dentro de campo e veremos como os times são formados. 

time2-1

 

Product Owner (Goleiro/Capitão do Time)

A principal função do PO é traduzir os interesses do cliente em valor, priorizar isso de forma assertiva e comunicar o que será ou não feito para o restante da equipe. Como capitão, é ele quem vai motivar as pessoas em relação ao negócio e mostrar o porquê de aquilo estar sendo feito. Além disso, ele também precisa defender o time dos itens que fogem do objetivo a ser entregue.

Na formação de times colaborativos, tanto de futebol quanto de Scrum, essa é uma atribuição fundamental. “Falem um com outro, cobrem um do outro, ajudem um ao outro, queiram ganhar um com o outro” é parte de uma famosa preleção de Rogério Ceni que poderia ser facilmente usada em uma Daily Scrum.

Gosto de fazer a analogia do PO com o goleiro, pois ele é um indivíduo um pouco distinto, joga com os pés, mas sobretudo joga com as mãos e posicionamento. Não tem como jogar sem ele, e dificilmente conseguimos substituí-lo por um jogador de linha.

Time de desenvolvimento (Jogadores de linha)

Colocando um objetivo em comum a ser alcançado em cada caso, desenvolver sistemas pode ser comparado a vestir a camisa e chutar a bola no gol. Veja que nessa situação não há diferenças entre quem desenvolve, quem testa, quem valida requisitos ou quem desenha fluxos, todos buscam o mesmo foco e contribuem de acordo com sua posição em campo.

Scrum Master ou Facilitadores (Juízes)

Os juízes são responsáveis para que a partida aconteça de acordo com as regras do futebol, enquanto o Scrum Master ou Facilitador garante que os princípios do Scrum sejam desenvolvidos no decorrer do jogo. Cabe a ele comunicar esses preceitos da melhor forma e fazer com que a equipe consiga avançar os estágios de formação durante o projeto.

A regra é clara e quando a situação sai do roteiro, ele precisa se posicionar, direcionar a disputa e conduzir os times. Muitas vezes alguns podem achar que árbitros são desnecessários e o melhor seria que sua função não fosse percebida. De certa forma, isso é verdade, porém, são nos jogos complicados que essa figura torna-se fundamental para o desenvolvimento do time e jogo.

Como nem tudo são flores, as equipes podem estar desfalcadas em algumas situações e o time precisa se adaptar para suprir esses hiatos. Defesas são feitas por laterais, gols são marcados por zagueiros. Mas por mais que a equipe passe por uma etapa de conflito, com muito treino, ela consegue se desenvolver e caminhar para melhores resultados.

Formação de times

time1-1

Tanto no futebol quanto no Scrum, a formação de times colaborativos e auto gerenciáveis não é algo simples. Você escolhe os jogadores responsáveis por cada posição, apresenta os outros membros e tudo vai bem, até colocá-los para trabalharem em equipe. 

Em 1995, após ter sido eleito o melhor jogador do mundo, Romário desembarcava na Gávea. Pouco tempo depois era a vez do campeão brasileiro Edmundo e o “melhor ataque do mundo” estava formado. Parecia que o puro talento dos seus jogadores renderia incontáveis títulos ao Flamengo, mas um elenco vitorioso precisa ser um time antes de tudo.

O grupo durou apenas 6 meses apresentando problemas de gestão, estrutura, organização e estilo de jogo. Próprios ex membros da equipe a classificavam como “uma bagunça”. O que deu errado?

Equipes de scrum passam por processos semelhantes, o grande desafio é auxiliar que elas se desenvolvam e atravessem as fases de formação e conflito. Chegar à estabilidade e alto desempenho em um projeto é um desafio diário que requer muito treino. Será que sua equipe está preparada? Falaremos mais disso no nosso próximo post, por hoje, fim de jogo. 

 

Jera conquista título de Agência Certificada pelo Google

A Jera conquistou o título de Agência Certificada pelo Google Developers na última semana. 49 empresas no mundo todo possuem essa certificação, sendo apenas três no Brasil. O Google verifica os dados técnicos dos aplicativos, as reviews dos usuários e a capacitação técnica dos desenvolvedores antes de certificar a agência.

Ter o selo de Agência Certificada pelo Google Agency significa que a Jera atende a uma série de requisitos. Entre eles estão a experiência no uso de tecnologias do Google e um histórico bem sucedido de construção de aplicativos de alta qualidade.

A certificação foi concedida após participarmos do Google Developers Agency Program, programa que oferece às agências de desenvolvimento de softwares acesso a treinamentos e eventos, recursos personalizados, melhores práticas e suporte para desenvolvedores de maneira exclusiva.

Como agência certificada, nós nos sentimos honrados e agora podemos atestar que possuímos expertise e excelência na construção de aplicativos. Para nós, é de extrema importância a certificação, pois buscamos sempre nos aprimorarmos para desenvolver o melhor produto possível, que seja um diferencial no negócio dos nossos clientes.