2019

Metodologias ágeis: cinco lições a partir do coaching a diferentes equipas

Como equipa de Project Management Office da Xpand IT, todos os dias orientamos e apoiamos as nossas equipas de projeto para que se possam tornar cada vez melhores em metodologias ágeis, possibilitando a entrega de mais valor aos clientes. Isto é um verdadeiro desafio: não apenas porque trabalhamos com diferentes equipas e projetos mas, sobretudo, porque mudar o mindset das pessoas pode ser desafiante.

Já aprendemos muito desde que esta equipa foi criada em 2017 e, por isso, gostávamos de partilhar algumas das nossas lições aprendidas por forma a podermos também ajudar outras equipas:

1 – Agile não é uma solução milagrosa

Um dos maiores equívocos sobre Agile é o facto de ser visto como uma solução milagrosa que resolve todos os problemas dos projetos. Mas não funciona desta forma! As metodologias ágeis ajudam a identificar problemas relevantes e a compreender onde é que o processo falhou e o que precisa de ser alterado, para evitar que aconteça novamente. Os novos ajustes estão apenas à distância de um sprint, para que os problemas não se tornem uma bola de neve e acabemos por “cair” em metodologias de desenvolvimento tradicionais. Assim, a equipa pode trabalhar em conjunto para resolver os problemas nos sprints seguintes e adaptar-se para evitar “recaídas”.

2 – Coloca os princípios de Agile acima dos teus rituais

Ter foco nos princípios e valores do Manifesto de Agile é muito mais importante do que gerir um projeto com metodologias ágeis.

As organizações desrespeitam frequentemente o primeiro valor – “os indivíduos e suas interações são mais importantes que os procedimentos e ferramentas”. Assim, se não precisamos de procedimentos e rituais para sermos Ágeis, porquê tê-los?  Os rituais não vão tornar as equipas mais ágeis, mas podem ajudar se aplicados da maneira certa – tornando-as mais eficientes e sendo uma forma de mudar hábitos e culturas.

  • A “daily stand-up” é teambuilding, tal como outros rituais;
  • As stand-ups e as retrospetivas permitem às equipas aprender e crescer a partir das suas experiências passadas;
  • As retrospetivas dão às equipas a oportunidade de celebrarem os seus sucessos;
  • Independentemente de como o sprint anterior correu, a sessão de planeamento do próximo sprint ajuda a equipa a focar-se nos objetivos e promove o envolvimento entre os elementos;
  • Priorizar o backlog do sprint e do produto promove a capacidade de se ser resiliente, de aprender, de adaptar e a habilidade para reagrupar quando as coisas não acontecem como planeado.

3 – “Os planos são “inúteis”, mas planear é essencial”

Disse-o Dwight D. Eisenhower. Trabalhar com Metodologias Ágeis não significa que os processos core da gestão de projeto devem ser eliminados. Planear, rastrear e monitorizar (diariamente) são pertinentes e essenciais, pois fazem com que a equipa tenha sempre presente qual o objetivo principal – criar valor e manter os clientes satisfeitos.

4 – Escolhe as ferramentas certas

Parte do sucesso de qualquer trabalho está diretamente ligado às ferramentas utilizadas. Os projetos com metodologias ágeis podem ser geridos em paredes, stickers ou com software. Um projeto de desenvolvimento de software pode beneficiar especialmente do último, por assegurar a rastreabilidade dos requisitos desde o kick-off do projeto à entrega, gerindo o backlog e monitorizando os sprints, os problemas e os bugs.

Na Xpand IT, as nossas equipas internas utilizam os produtos Atlassian – Jira, Confluence e Bitbucket. O Jira é utilizado para gerir o backlog, as sprints e as releases. O Confluence é a nossa wiki e permite manter toda a informação do projeto tal como a documentação técnica, o plano do projeto e outros. O Bitbucket também tem vários benefícios tais como a possibilidade de guardar o código num espaço seguro, permitindo que o código possa ser acedido por qualquer elemento da equipa e que estes trabalhem sempre na versão mais atualizada do mesmo.

Com estas ferramentas asseguramos a rastreabilidade desde os requisitos (Jira), à fonte do código (Bitbucket) e ainda a colaboração e comunicação entre as nossas equipas e com os clientes.

5 – Menos é mais

Em projetos Agile não é incomum uma equipa ter tarefas por cumprir no final de um sprint, porque as suas User Stories são muito longas. Os elementos da equipa devem analisar, na retrospetiva, se o não cumprimento foi causado por algo que era evitável ou por um problema inesperado identificado no decorrer do sprint.

A melhor prática é pensar em pequenas unidades: ter user stories, tarefas e releases mais curtas. Itens mais curtos melhoram o flow, reduzem o risco de falhar no cumprimento do objetivo do sprint, melhoram o conhecimento partilhado, aumentam a precisão das estimativas e permitem que o trabalho seja entregue mais rapidamente. Assim, para prevenir que o trabalho fique por fazer, antes de ser agendada a implementação de uma user Story, as equipas devem assegurar que esta é curta o suficiente para que possa ser finalizada dentro da iteração.

Conclusão

Esperamos que estas lições possam ser úteis para os vossos projetos e que ajudem as equipas a tornarem-se mais ágeis. Desta forma, é possível antecipar problemas, melhorar a eficiência da equipa, escolher as melhores ferramentas e planear melhor para garantir entrega de valor e ir ao encontro das expectativas dos clientes.

Nunca se esqueçam que a implementação de metodologias ágeis deve começar na nossa mente.

*Este artigo foi escrito por Susana Vicente e Rita Mendes, experts da Xpand IT. 

Susana VicenteMetodologias ágeis: cinco lições a partir do coaching a diferentes equipas
read more

Cinco dicas para dominar uma entrevista tech

Muitos candidatos não têm a mínima ideia do que podem esperar numa primeira entrevista tech. Entre as várias questões que podem surgir, é comum perguntarem-se: “vai ser focada nos skills técnicos? Nas soft skills? Ambos?” Um desafio exigente tanto para o recrutador como para o/a candidato/a que normalmente numa primeira entrevista acabam por não conseguir tirar o máximo partido da mesma.

Tendo a noção desta realidade, decidi partilhar cinco dicas para dominar uma entrevista tech, trazendo umas luzes sobre o que nós Talent Recruiters mais valorizamos e o tipo de perguntas que podes esperar, tendo em conta a minha experiência na Xpand IT. O meu objetivo é simplificar e tornar mais transparente aquilo que pode ser um processo de recrutamento numa área profissional de TI e ajudar-te com alguns dos meus conselhos. Vamos a isto!

1 – Não fiques nervoso/a. Não mordemos!

Não é uma piada. É comum haver candidatos tímidos e, por isso, quando vamos ter contigo à porta já vamos determinados em pôr-te à vontade. Ao conhecer o/a  candidato/a, normalmente fazemos a mesma primeira questão: “Encontraste-nos (o office) facilmente?” – Porque perguntamos isto? Bem, em Lisboa temos três espaços de escritório (e só num existe uma recepção), num edifício que pode ser um verdadeiro labirinto. A resposta mais comum de quem não conhece o espaço é “o edifício sim, a porta nem por isso”. (riso embaraçado). Ao que esclarecemos (com um sorriso) que é habitual acontecer e que, no fundo, esse é primeiro grande desafio para os candidatos. (é uma piada). Quase sempre esta situação resulta em duas pessoas que já vão para a sala da entrevista com outro mood, o que torna tudo mais simples. Facto engraçado: por mais do que uma vez já tive de ir buscar o candidato lá fora. True story. Perceber onde é a nossa recepção não é tarefa fácil.

2 – Prepara-te para falares sobre ti e sobre as tuas experiências

É isso mesmo. Muitos candidatos não percebem esta parte da entrevista. Se não partilhares connosco detalhes sobre a tua experiência e aquilo que já fizeste, torna-se difícil fazer uma avaliação correta, concordas? Para facilitar, utilizamos uma abordagem que normalmente põe as pessoas mais à vontade e que consiste em perguntar-te sobre o projeto mais desafiante em que estiveste envolvido – a ideia é que o expliques com um whiteboard e uma caneta. Desta forma, podes mostrar-nos algo que verdadeiramente gostaste de fazer ao mesmo tempo que conseguimos avaliar inúmeras coisas:

  • Se estás efetivamente confortável com o projeto em questão e se te sentes à vontade para explicar o mesmo (o tipo de raciocínio e lógica que implementaste/utilizaste);
  • O teu grau de experiência com a tecnologia (Sim, é verdade – nós conseguimos compreender-te. Não acreditas? Desafia-nos);
  • As tuas skills de pensamento criativo e capacidade de resolver problemas (podemos perguntar-te, por exemplo, como terias feito o mesmo de diferentes maneiras;
  • Skills de comunicação;
  • A tua capacidade para trabalhar em equipa;
  • Metodologias de trabalho;
  • Capacidades de desenho(estou a brincar, não é assim tão importante, talvez só um bocadinho, quem sabe.)

Como vês, com um simples exercício podemos aprender muito sobre ti e perceber se podes fazer fit nas nossas equipas. Então, fala connosco, deixa-nos surpreender-te.

3 – Sê confiante sobre aquilo que queres, mas não em demasia

Confuso, certo? Concordo. Mas deixa-me explicar. Quando chegamos à primeira entrevista, 90% das vezes os candidatos candidataram-se ou mostraram interesse numa oportunidade específica. Logo, precisas de mostrar que é este o desafio que queres e que és a pessoa certa para o lugar. Utiliza todas as tuas armas!

Se te candidatares a uma oportunidade de Javascript Fullstack developer, prepara-te para explicar por que razão no teu projeto anterior utilizaste Vue em vez de Angular ou React, por exemplo. Se não conseguires explicar o porquê de teres utilizado determinada tecnologia ou até mesmo falar sobre o projeto em si, estarás assim tão “in love” com o que fizeste e com aquilo que será o teu desafio no futuro? Ao mesmo tempo, deves estar aberto ouvir falar sobre novas funções que possam de facto preencher-te e que no fundo respondam àquilo que te faz estar agora à procura de um novo desafio profissional. Nós fazemos de tudo aqui. Por isso, há à tua espera de certeza algo que podes ainda não ter considerado, mas que no momento atual em que te encontras faz muito mais sentido. Não deves ser intransigente. Escuta o que temos para te propor. Não seria a primeira vez que criávamos uma função específica para determinado perfil técnico.

4 – Partilha tudo aquilo que quiseres. Não vás embora com arrependimentos.

Esta é fácil. Vamos pedir-te para falares sobre o teu projeto mais desafiante. Mas de maneira nenhuma queremos impedir-te de falar sobre algo que seja relevante para ti ou sobre a tua experiência.

Se vires que não vamos fazer mais perguntas… chega-te à frente:

[Candidato/a]: Hey! [nome do recrutador] posso dizer uma coisa?

[Candidato/a]: Há um projeto/skill sobre o qual gostaria de falar.

[Recrutador]: Isso é interessante! Conta-me tudo!

Assim, podemos falar sobre o tema durante o tempo que for necessário, enquanto estiver tudo bem para ti. Comigo não há um limite de tempo para as entrevistas. Porque verdadeiramente queremos conhecer-te.

5 – Sê curioso/a. Queremos explicar-te tudo!

E, finalmente, claro, sente-te livre para perguntar tudo aquilo que quiseres. Se pesquisaste sobre nós para te preparares para a entrevista tech e tens algumas questões, dúvidas ou curiosidades, pergunta-nos. Teremos todo o gosto em esclarecer-te. E mesmo que não tenhas lido nada sobre nós, se tiveres ficado com alguma curiosidade durante a entrevista (ou sobre a entrevista em si), diz-nos. Não existem perguntas “más”. Desde o IRS aos projetos com clientes, passando pelas nossas metodologias e cultura, estamos habituados a todos os tipos de questões e damos as boas vindas a isso. Gostamos de uma boa conversa e de partilhar o que fazemos e quem somos.

Conclusões sobre como dominar uma entrevista tech

Apercebi-me agora de que escrevi muito, não foi? Fiquei entusiasmado! Vamos lá resumir o essencial sobre as cinco dicas para dominar uma entrevista tech:

  1. Relaxa, somos pessoas como todas as outras, mas ainda assim especiais. Sê tu próprio;
  2. Prepara-te para explicar o que fazes;
  3. Sê confiante e mantém a mente aberta;
  4. Sem arrependimentos. Conta-nos tudo;
  5. Sê curioso

Seja como for, termino este artigo dizendo que espero que estas cinco dicas para dominar uma entrevista tech sejam úteis na tua vida profissional futura e que na próxima vez que tenhas uma entrevista, te lembres delas. Espero que mais cedo ou mais tarde encontres o teu dream job. E, quem sabe, talvez nos possamos encontrar um dia?

AdministratorCinco dicas para dominar uma entrevista tech
read more

Microsoft PowerApps: como transformar ideias em aplicações de negócio

Vivemos num mundo onde a mobilidade é ubíqua: existem, neste momento, apps para qualquer ação que precisemos de realizar num dado momento das nossas vidas. A maioria dessas apps são desenvolvidas tendo o consumidor final como linha orientadora e, idealmente, é esta figura que as empresas têm em mente quando desenham a sua solução digital. No entanto, as aplicações não trazem apenas benefícios de utilização para o consumidor final. As apps móveis, num ambiente interno, são também fundamentais para a gestão de atividades diárias de uma empresa.

As chamadas business apps são especificamente desenvolvidas para resolver um problema interno de uma organização. Nesse sentido, estas aplicações oferecem a possibilidade das empresas gerirem parte do negócio de uma forma mais rápida, mais eficiente e mais produtiva. Contudo, nem todas as business apps justificam o tempo e o investimento que são necessários para um desenvolvimento personalizado e adaptado às necessidades de cada empresa. Com as limitações reais que existem em qualquer empresa, tanto em termos de orçamento como em termos de tempo e recursos humanos, poderá rapidamente tornar-se um sonho distante construir uma aplicação que suprima necessidades internas de eficiência e eficácia para processos que têm potencial para ser automatizados.

Tirando partido de todo o ecossistema Microsoft, que está muito presente em várias organizações, é possível construir uma aplicação através das Microsoft PowerApps. Numa óptica de serviço interno, as PowerApps geram um impacto considerável nos processos das empresas, permitindo a desmaterialização de processos e, consequentemente, aumentando os níveis de produtividade e reduzindo ineficiências.

Por outro lado, com as PowerApps, é possível habilitar outros perfis de pessoas dentro da organização para criar e manter a aplicação, ainda que estas mesmas pessoas não tenham um perfil técnico. Adicionalmente, o Microsoft Power Automate – uma ferramenta complementar às PowerApps – ajuda a automatizar processos nas diferentes aplicações e serviços, seja aprovação de pedidos, cumprimento de certas condições (acções a respeitar caso a resposta seja sim/ não), automatização de processos repetidos, etc.

Desta forma, estas soluções digitais não dependerão exclusivamente do departamento de TI e estes power users, que já têm o conhecimento de negócio – e desde que munidos do conhecimento necessário para utilizar estas ferramentas – conseguirão sustentar uma solução eficaz, alicerçada na infraestrutura Microsoft, sem que necessitem de conhecimentos de programação. Além disso, com o Office 365, os dados circulam naturalmente, sem que exista a possibilidade de criação de silos – que geram entropias e ineficiências – sendo possível alimentar a aplicação com informação de uma forma imediata.

Exemplo prático: automatização de aprovação de dias de férias

Tomemos como exemplo o processo de aprovação de férias: automatizando todo o processo desde a inserção, por parte do colaborador, de um formulário com o pedido de férias e, permitindo à pessoa que o aprova a receção de uma push notification no seu telemóvel, consegue-se aprovar de imediato as férias do colaborador. Por fim, é enviado um email automático ao colaborador para o avisar de que o seu pedido foi aprovado. Desta forma, automatizamos um processo que estava anteriormente dependente do departamento dos RH. Com estas ferramentas disponíveis, rapidamente conseguimos passar da conceptualização à execução e, em poucos minutos, o colaborador vê o seu pedido de férias aprovado – pode já começar a planear o seu próximo destino de sonho ao invés de desesperar a pensar que serão precisas várias semanas até que os seus dias sejam aprovados. Como este exemplo, existem outros casos de uso das ferramentas PowerApps e Automate que são uma solução à medida, totalmente adaptável à realidade interna da sua empresa.

A experiência da Xpand IT com PowerApps

A Xpand IT tem trabalhado com Microsoft PowerApps e Microsoft Power Automate desde o início do desenvolvimento dos produtos. Como tal, reconhecemos desde logo que estas tecnologias poderiam complementar a nossa oferta de desenvolvimento mobile, quer numa vertente multiplataforma (Xamarin) quer numa vertente puramente nativa. No nosso entender, para apps a serem utilizadas no contexto das empresas, as PowerApps têm uma proposta de valor interessante, não só pelo Time-to-Market mais curto, mas também pelo facto de permitirem que utilizadores de negócio materializem a sua visão numa ferramenta que lhes seja útil – e que permita, futuramente, justificar o desenvolvimento de novas versões ou a utilização de outras tecnologias. Para cada problema existem várias soluções e nós encaramos as PowerApps como uma ferramenta muito interessante para potenciar a Transformação Digital nas empresas.

Filipa MorenoMicrosoft PowerApps: como transformar ideias em aplicações de negócio
read more

Três tendências tecnológicas de Inteligência Artificial na Web Summit 2019

A Web Summit 2019 já vai na sua 4ª edição em Lisboa e realizou-se nos dias 4,5,6 e 7 de novembro, juntando profissionais tech, startups, empresas, investidores e empreendedores de mais de 163 países naquela que é a já uma referência internacional ao nível da inovação e tecnologia de excelência.

Este ano o tema novamente em destaque foi o da Inteligência Artificial, tendo merecido a atenção e reflexão de inúmeros oradores, de um leque de mais de 1.200, que trouxeram ao palco a sua visão sobre as próximas grandes tendências tecnológicas do futuro. Um futuro que nas palavras de Brad Smith, Presidente da Microsoft, será “um tempo extraordinário de oportunidades” e que não ignora o impacto crescente que os avanços tecnológicos vão ter nas empresas, nas pessoas e na sociedade.

A começar pela internet, numa altura de transição para o 5G, e que segundo Lee Rainie (Pew Research Center): “Nos próximos 50 anos será muito mais poderosa: omnipresente (estará em tudo nas nossas vidas) onisciente (vai saber muito sobre aquilo que se passa à nossa volta) e quase omnipotente, com um poder tremendo no que fazemos e como fazemos.”

Machine Learning, Deep Learning, Customer Experience, Data, Cloud, DevOps e Automação foram os tópicos que marcaram a agenda e que nos levam a identificar as três tendências tecnológicas sobre Inteligência Artificial na Web Summit 2019.

A próxima década vai ser um tempo extraordinário de oportunidades. Haverá uma quantidade de dados no universo digital 25 vezes superior à de 2010, surgindo mais data centers e formas inovadoras de guardar e processar dados.

Brad Smith, Presidente da Microsoft

As três principais tendências de Inteligência Artificial na Web Summit 2019

1 – Cloud e Data Centers

Segundo o Presidente da Microsoft, Brad Smith, vamos assistir a um aumento significativo e progressivo dos dados no universo digital, o que obrigará a um maior investimento em data centers e ao mesmo tempo no armazenamento de dados em cloud. Desta forma, as plataformas cloud que hoje já permitem reduzir em parte os custos associados à tecnologia, serão uma tendência crescente na próxima década, chegando a mais países, de uma forma global. Uma ideia partilhada por Marcus Weldon, CTO da Nokia, que falou sobre a necessidade de evoluirmos para clouds locais, que em conjunto com o 5G, permitirão melhorias exponenciais ao nível da performance e da latência, por forma a atingir um melhor desempenho na disponibilização dos dados em rede.

2 – Produtividade e Data-driven

A tecnologia pode ter um impacto positivo na forma como trabalhamos, tornando-nos mais produtivos. É desta forma que Marcus Weldon olha para o potencial da Realidade Aumentada e consequente conceito de produtividade aumentada, afirmando que “se o conhecimento que tínhamos em 2017 duplicava a cada 13 meses, no futuro passará a duplicar a cada 12 horas”. O que nos vai levar necessariamente para uma aposta em ferramentas de Intelligent Assistance que permitem filtrar a cada momento – e de forma contextual – a informação de que realmente precisamos, tornando-nos, desta forma, mais produtivos. Novamente, a cloud será imprescindível , agregando todos os dados que serão disponibilizados e trabalhados 24h/dia.

A inteligência artificial assume depois um papel fundamental pela enorme potencialidade para transformar grandes quantidades de dados em conhecimento e expertise, tornando as empresas mais data-driven e mais capazes de tomar melhores decisões.

3 – Assistentes virtuais e Customer Experience

AI também será decisiva na transformação da customer experience e na relação das empresas com os clientes. A voz é apontada como a grande tendência enquanto canal de comunicação, e as assistentes virtuais vão estar cada vez mais presentes no dia-a-dia das pessoas e na forma como as empresas interagem e comunicam com os seus clientes.

No seu testemunho, Rohit Prasad, VP & Head Scientist da Alexa Artificial Intelligence, lembrou a importância de Machine Learning para criar experiências cada vez mais inteligentes, úteis, conversacionais e naturais com os clientes, que serão ampliadas sobretudo pelas capacidades de:

  • Active learning – as assistentes virtuais conseguirão antecipar as necessidades dos clientes através das múltiplas interações e da aprendizagem contextual;
  • Natural language understanding – a linguagem de inteligência artificial que permite aos computadores e assistentes virtuais interpretar e compreender textos e frases bem como a estrutura da linguagem humana;
  • Automatic speech recognition – que permite traduzir o áudio para texto.

Outras tendências

DevOps num mundo Cloud Native

DevOps continuarão a ser extremamente relevantes num mundo Cloud-native enquanto cultura de colaboração, de trabalho, comunicação entre equipas que em todas as fases do processo e ciclo de entrega de uma solução/aplicação vai continuar a permitir automatizar, gerir, testar e fazer deploy com mais segurança, rapidez e qualidade, reduzindo o risco de experimentação.

AGI (Inteligência Artificial Geral)

O conceito de inteligência artificial geral, referido por Brad Smith, fala sobre um futuro em que AI se vai tornar mais abrangente e transversal, permitindo à tecnologia aprender e retirar insights em todo o tipo de disciplinas, ao invés de estar restrita a determinados temas.

O futuro do trabalho tech enquanto propósito e liderança

A era digital em que o conhecimento e os dados são poder leva-nos à crescente necessidade de selecionarmos e distinguirmos melhor a informação que utilizamos em cada momento, com um olhar atento para a autenticidade e qualidade do conteúdo. Da mesma forma, num mercado de trabalho competitivo e cheio de oportunidades como é o tecnológico, para atrair e reter os melhores profissionais tech é essencial as empresas desenvolverem produtos/soluções que tragam valor real tanto para os clientes como também um sentido de propósito para os profissionais. Os lideres de hoje e de amanhã terão, assim, o papel fulcral de liderar para inspirar as suas equipas, criando uma cultura, por um lado, de transparência e partilha de informação, e, por outro, de colaboração e confiança em que os colaboradores participam ativamente para desenvolver valor acrescentado.

0

Países

0

Oradores

0

Investidores

0

Visitantes

0

Startups

Conclusão

A Websummit 2019 colocou sem dúvida a Inteligência artificial no centro da discussão e da evolução tecnológica, deixando evidente que podemos esperar uma IA cada vez mais ao serviço das pessoas, das empresas e da sociedade.

A Xpand IT esteve presente em mais uma edição, e não podia deixar de apresentar aos attendees uma ativação em Inteligência Artificial na Web Summit, de reconhecimento facial, desenvolvida pela equipa de Digital Xperience, com Azure Cognitive Services. O desafio foi simples: os muitos participantes que nos visitaram tiveram a oportunidade de fazer match facial com as personagens do Star Wars. Esta solução utiliza serviços Cloud de Inteligência Artificial e Machine Learning para através do reconhecimento de imagens faciais identificar a idade, o género e as semelhanças físicas.

Para além de aplicarmos IA através de serviços cognitivos específicos para o efeito, o nosso AI Solution Center também dá resposta a desafios de Data Science, utilizando tecnologia que com base na análise de dados permite extrair insights relevantes para o negócio e, inclusivamente, desenvolver modelos preditivos.

Web Summit 2019; Inteligência Artificial na Web Summit 2019
Sara GodinhoTrês tendências tecnológicas de Inteligência Artificial na Web Summit 2019
read more

Três fases essenciais para implementar BPM numa organização

Enquanto criança nos anos 90 adorei o Knight Rider, uma série de TV em que um carro autónomo, inteligente e que sabia falar combatia a criminalidade e realizava acrobacias incríveis. Se sabes do que estou a falar, com certeza que te lembras do scanner de luz vermelha no capô do K.I.T.T, do display de voz na consola central ou até mesmo do emocionante botão de “Turbo Boost” para saltar sobre obstáculos.

Pretendo usar esta analogia para mostrar como o Business Process Management pode melhorar o negócio e ajudar as organizações a alcançar melhores desempenhos e resultados. But first things first: deixem-me começar por fazer uma breve introdução ao BPM e aos seus conceitos.

Carro KITT - implementar bpm numa organização

Business Process Management em poucas palavras

BPM é a arte de compreender o desempenho do negócio e inovar continuamente para alcançar melhores resultados, acrescentando valor às organizações e aos seus clientes. Existem muitas definições para BPM mas todas elas assentam numa mesma base:

  • É focado nos objetivos da organização;
  • Ambiciona o desempenho;
  • É um processo iterativo de otimização.

No seu core, é uma disciplina que põe em prática um conjunto de tarefas que modelam, executam, automatizam, controlam, monitorizam e melhoram continuamente todos os tipos de fluxo de negócio para implementar BPM numa organização. Estas tarefas estão intrinsecamente ligadas aos processos de negócio e às pessoas de uma organização – como os colaboradores, clientes, parceiros e todos os outros stakeholders relevantes – enquanto fazem o melhor uso da tecnologia para apoiar as suas atividades. Monitoriza o desempenho do negócio e promove a agilidade e inovação para torná-lo mais eficiente. Porque atua diretamente na forma como as pessoas (e uma organização de forma global) desempenham as suas tarefas, esta iniciativa deve ser bem suportada num processo de Gestão da Mudança para garantir o alinhamento e o compromisso globais.

A transformação cultural numa organização é como “nadar contra a corrente”: é preciso muito esforço para se atingir resultados e apenas um “piscar de olhos” para regressar ao ponto de partida. Se perdermos o foco ou pararmos de seguir na direção certa, rapidamente vamos acabar numa posição em que recomeçar se vai tornar torna bem mais difícil do que antes (ou até mesmo impossível). Todas as pessoas têm um papel na sua organização (um elo de uma corrente), por isso todas elas, sem exceção, devem dar o passo em frente em conjunto para que a mudança aconteça e, assim, conseguirem implementar BPM.

O ciclo de vida de BPM

ciclo de vida Business Process Management - implementar bpm numa organização

Enquanto processo iterativo, o BPM tem uma abordagem de 5 passos para melhorar os processos de negócio e ser possível implementar BPM numa organização:

  1. Desenho – consiste em identificar os processos de negócio existentes (sejam recentes ou já endereçados anteriormente pela inicativa) e desenhar as versões futuras, mais eficientes. Este desenho subentende um conjunto de requisitos e expectativas associados a cenários de sucesso ou insucesso (por exemplo, interrupções nos processos), como o fluxo atual e as suas dependências (humanas ou sistemas), alertas e notificações, necessidades de escalação, acordos de nível de serviço (SLA), mecanismos de transferência, etc.
  2. Modelação – com o desenho pronto, na fase de modelação vamos criar hipóteses e cenários que validem o desenho do processo. A maioria dos processos de negócio tem diferentes fluxos para diferentes inputs ou contextos, pelo que esta etapa vai ajudar a testar a validade do processo em diversas circunstâncias. A chamada “What-if analysis” é normalmente aqui aplicada.
  3. Execução – quando o processo está modelado, pode, então, ser executado até ser completado, através de tarefas manuais e ações automatizadas, armazenando informação detalhada da execução.
  4. Monitorização – permite fazer o rastreamento dos processos bem como das estatísticas e indicadores de desempenho mais relevantes, que podem ser visualizados em tempo real. Tal informação contribui não só para impulsionar a tomada de decisão como também para identificar oportunidades de melhoria.
  5. Otimização – Aqui a informação recolhida é interpretada para identificar estrangulamentos e oportunidades, através da utilização de técnicas ad-hoc de “mining” de processos, utilizando as descobertas para alimentar o redesenho o processo. Outras técnicas de previsão de última geração (por exemplo, machine learning) podem ser utilizadas para prever problemas nos processos atuais, ajudando a definir um desenho mais eficiente para o processo.

Três fases para implementar BPM numa organização

Voltando à analogia do Knight Rider, podemos então distinguir três fases essenciais para implementar BPM, de forma eficiente:

Normal Cruise – Business as usual

Representa o negócio tal e qual como está. Garante que podes fazer o deploy dos teus processos, tarefas e ferramentas de BPM com o mínimo ruído. A ideia é instalar uma framework de base que sirva de ponto de partida para a descoberta e geração de outputs e informação sobre os processos da organização. Será como tirar um raio-X inicial da organização sobre o qual poderás fazer a tua análise.

Auto Cruise – Automated business

Assim que conseguires descobrir e documentar os processos de negócio, irás certamente encontrar várias ineficiências que te permitirão explorar quick-wins. Podes dar prioridade àquilo que implicar alterações menores aos flows atuais dos processos (ou, pelo menos, com menores impactos na atividade diária das pessoas) e nos mecanismos de automação, para reduzir a latência dos processos. Aqui consegues garantir os melhores resultados com menor entropia, facilitando uma transição mais suave e com menor risco no impacto que estas alterações podem ter.

Pursuit – Super-fast and self-driving business

Agora que tens tudo encaminhado e já testaste as alterações e as ferramentas com as quick-wins anteriores, estás oficialmente no inicio de uma grande jornada: analisar continuamente dados estáticos (modelos) e dinâmicos (indicadores de desempenho) dos processos de negócio existentes, promovendo alterações que vão melhorar os resultados da organização. A partir desta altura é o momento certo para aplicar melhorias significativas, como por exemplo redesenhar os processos por inteiro. É essencial envolver cada stakeholder nas decisões, criando um sentimento de posse e de pertença e mostrando de que forma as coisas podem mudar para melhor. Se for uma prática contínua e recorrente, as pessoas irão habituar-se a contribuir ativamente e a procurar fazer as coisas melhor, reforçando positivamente a importância desta iniciativa, e a organização alavancará a inovação, criando um contexto perfeito para identificar novas oportunidades de negócio.

Tecnologia

A maioria das tecnologias de BPM disponibilizam um conjunto de funcionalidades que ajudam na transição de um modelo de processos desgovernado e invisível para uma realidade controlada e monitorizada para implementar BPM. Muitas destas funcionalidades são human-centric mas por estarem directamente ligadas ao negócio interligam-se facilmente com outras tecnologias, tais como soluções de middleware (para automação e integração com sistemas empresariais), sistemas de gestão de conteúdos (para armazenar documentos e informação adicional relevante) e  (para comunicação). Uma suite de BPM não é mais do que ferramentas colaborativas: um conjunto de ferramentas que juntas proporcionam as funcionalidades necessárias para dar suporte à melhoria do negócio.

Os principais componentes de uma suite de BPM são:

  • Motor de Processos – permite a modulação (utiliza notações standard como BPMN) e a execução de processos de negócio;
  • Motor de Regras – mantém as regras e avaliações de negócio à parte da execução do processo, garantindo um ambiente isolado que permite aos utilizadores não técnicos atualizarem as regras de forma dinâmica sempre que o negócio se altera;
  • Analytics – fornece informações em tempo real sobre a execução do negócio e suportam as tomadas de decisão;
  • Gestão de Conteúdos – permite guardar de forma segura informação e documentação de negócio relevante;
  • Ferramentas de Colaboração – promove a colaboração e discussão entre todos os participantes do negócio.

Adicionalmente, as suites de BPM fornecem frequentemente capacidades de desenvolvimento de front-ends personalizáveis para fácil e rapidamente construir e implementar cenários de negócio integrados, para os quais não existe um sistema user-facing que dê apoio a essas tarefas. Como serviços de longa duração e com estado, os processos são tratados enquanto workflow de estados, reagindo a eventos que podem ser manuais (tarefas humanas) ou automáticos (eventos de sistema, temporizadores, etc.).

No entanto, é a componente de analytics que fornece a informação mais relevante para a mudança (tal como os indicadores de performance da consola do K.I.T.T e as leituras externas dos seus sensores). Ao configurarmos as métricas e os KPI adequados para os processos, em estrito alinhamento com a estratégia de negócio e seus objetivos, conseguimos retirar insights cruciais acerca da execução dos processos atuais por forma a alimentar o próximo ciclo de redefinição, e alcançar a consequente melhoria dos mesmos.

Nuno SantosTrês fases essenciais para implementar BPM numa organização
read more

Economia de Experiência: 3 tendências para 2020

O conceito de economia de experiência não é novo, mas a sua constatação evidente e a consciencialização por parte das empresas vêem-se agora impulsionadas pelas possibilidades que a era digital proporciona e pela crescente utilização dos chamados dispositivos edge (smart watches, smart tvs, smart cars, home assistants…).

Joseph Pine e James Gilmore teorizaram sobre nós, enquanto consumidores modernos, e acordaram-nos para a realidade de que procuramos algo mais nas transações económicas, uma compra não é só a simples troca de dinheiro por um bem ou serviço. Estamos mais exigentes, e procuramos experiências memoráveis. Por isso mesmo, os autores argumentaram que cada venda realizada a um cliente deve ser tratada como um evento em si.

Mas quando é que um serviço faz a transição e pode passar a ser considerado uma experiência? Quando é altamente customizado. Como disse Joseh Pine, “Existe um antídoto para a comoditização e este chama-se customização”. Quando desenhamos uma oferta de forma tão apropriada e tão customizada para um determinado cliente, deixamos de ter um serviço e passamos a ter uma experiência de valor acrescentado – e, de facto, estamos dispostos a pagar um valor muito superior para usufruir de uma boa experiência.

Um dos exemplos clássicos desta quarta dimensão da oferta económica é o Starbucks. Quando vamos ao Starbucks não dizemos que vamos beber um café – porque, efetivamente, não vamos. Vamos, sim, pela experiência: pela decoração, pelo cheiro da loja, pelo coffe barista, pelas edições especiais de Halloween ou de Natal, pelo encontro com os amigos e porque somos tratados como um cliente único e especial. Somos chamados pelo nome. No Starbucks transforma-se uma simples mercadoria – café – numa verdadeira experiência premium. E é este o segredo. Veja-se outros exemplos semelhantes como a Uber, o Spotify ou a Airbnb.

Atualmente, as possibilidades de oferecer experiências diferenciadoras aos consumidores são infinitas, com toda a tecnologia que temos disponível e com a quantidade de dados que conseguimos recolher, e as aplicações mobile terão de ser uma forte aposta se as empresas quiserem realmente fidelizar os seus clientes. Por exemplo, aquilo que um consumidor com filhos pequenos pretende é que quando chegar ao supermercado, mesmo que as fraldas ou o leite não estejam na sua lista de compras, se estiverem em promoção, receba uma notificação a dar conta disso mesmo – experiência!

3 tendências para 2020

1. Dados Operacionais vs. Dados de Experiência

“Data is the new oil”, certo? Certo. No entanto, será que os dados que hoje em dia são recolhidos são aqueles que mais importam para uma marca conseguir proporcionar a melhor experiência aos seus clientes?

Na economia de experiência o que conta é a emoção, são os sentimentos e são os valores. E a recolha de dados tem estado centrada em dados operacionais sem ter em conta dimensões mais humanas. Por isso, como referido na talk Customer Directions: Five-Star Experience Economy, a propósito do IDC Directions 2019, as empresas devem focar-se em 5 pilares fundamentais:

  • Personalização (é necessário conhecer o cliente e falar com ele para perceber qual o seu estilo de vida, hábitos de consumo, etc);
  • Confiança (passar a mensagem aos clientes de que a marca nunca lhes irá falhar);
  • Empatia (respeitar cada cliente e as suas emoções);
  • Delivery;
  • Engagement (capacidade de relacionamento com os consumidores).

Com o cliente no centro das preocupações das empresas e com os sistemas preparados para recolher este tipo de insights – com poderosos CMS, por exemplo – tornar-se-á mais simples utilizar aquilo que sabem sobre nós realmente a nosso favor.

2. Personalização, personalização, personalização

A personalização das interações deve ser assegurada em todas as comunicações. Não basta recebermos e-mails diferentes dos nossos amigos, tendo em conta os nosso hábitos de consumo: queremos receber também newsletters customizadas, push-notifications no momento certo, descontos personalizados por mensagem… no fundo, os consumidores pretendem que as marcas antecipem as suas necessidades e que possam responder às suas questões nos momentos em que as suas necessidades se revelam.

3. Distribuição da experiência omnicanal

Se coloco um produto no meu carrinho num website, espero que esse mesmo produto me apareça na aplicação mobile. A experiência deve ser transversal aos vários canais de uma marca, e esta omnicanalidade começa nas plataformas digitais e termina nos dispositivos do nosso quotidiano, que agora são cada vez mais inteligentes: relógios, carros, televisões e até máquinas de lavar roupa (75% dos dados gerados hoje em dia já provém de dispositivos edge).

Conclusão

Vivemos numa era totalmente digital, e a forma como percecionamos o mundo, como nos relacionamos, como consumimos serviços ou produtos mudou por completo. As marcas têm forçosamente de se focar cada vez mais na experiência que oferecem aos seus consumidores, se quiserem captar a sua atenção num universo virtual cada vez mais competitivo.

Pine e Gilmore previram que as empresas teriam de centrar o seu negócio nas experiências que oferecem aos seus consumidores, e que é essa memória da experiência que se torna no seu produto – as empresas/ marcas que conseguem criar e oferecer essa experiência encontram neste modelo a sua vantagem competitiva.

Ana LamelasEconomia de Experiência: 3 tendências para 2020
read more

Apple Pay em Portugal: O que muda nas nossas vidas

O que têm em comum Crédito Agrícola, Revolut e N26? O Apple Pay!

São 7h20 de um dia de semana aparentemente igual aos outros.

Conseguem imaginar o caos da rotina matinal de preparar e tomar o pequeno-almoço, tomar banho, vestir, preparar a marmita ao mesmo tempo que tentam não se esquecer de calçar as meias ou, pelo menos, de calçar duas meias iguais? No meio do caos, há sempre qualquer coisa que fica a faltar. Um dia que começa assim tem tudo para correr bem, certo? Errado.

É óbvio que num dia assim, quando se preparam para ir pagar o almoço, não conseguem encontrar a carteira. É óbvio que num dia assim, a carteira ficou em casa.

Bastam apenas dois segundos para, depois de nos apercebermos de que não temos a carteira connosco, chegarmos à conclusão que perdemos a nossa independência financeira e temos que ligar a um colega para nos vir pagar o almoço e salvar-nos de uma tarde inteira de tarefas que nos permitam compensar o restaurante pela refeição que consumimos.

Há uns anos seriacompletamente plausível vermos uma situação destas acontecer, mas, atualmente, em vez de ligarmos ao colega para nos vir salvar, conseguimos realizar pagamentos através do nosso telefone. Em menos de 1 minuto, o pagamento é realizado, sem qualquer fricção. Como é que é possível, perguntam vocês? Com o Apple Pay, claro. Obrigada, deuses da tecnologia!

Mas afinal, o que é exatamente o Apple Pay, que implicações tem este novo serviço para os consumidores e o que significa para a indústria financeira a introdução deste serviço no mercado?

Esta é uma tecnologia já algo madura. O serviço foi inicialmente lançado pela Apple em outubro de 2014 no seu país de origem – Estados Unidos da América – e, ao longo destes 5 anos, tem vindo a expandir a sua presença para muitos outros países. De facto, neste momento, já mais de 50 países contam com este serviço, sendo que a Apple tem planos para continuar a evangelização e implementação deste serviço por outros países do mundo.

A partir de junho de 2019, Portugal passou a fazer parte da lista de países que suportam o serviço Apple Pay. O Crédito Agrícola, o Revolut, o N26, o Monese e, mais recentemente, o Moey! foram as primeiras empresas a oferecer este serviço em Portugal. E nós fomos das primeiras empresas a implementar a tecnologia!

A Xpand IT foi um parceiro que acompanhou o processo de implementação do serviço Apple Pay na aplicação móvel do Crédito Agrícola desde o início e teve de garantir a criação de um fluxo de navegação simples e intuitivo, de forma a assegurar que o processo de adição de cartões à Apple Wallet através da app seria fácil, rápida e sem quaisquer obstáculos para o utilizador. A Xpand IT, juntamente com o Crédito Agrícola, garantiu que a implementação desta solução passou em todos os testes de segurança e requisitos exigentes da Apple. Não de somenos importância, a intervenção da Apple em todo o processo de implementação releva a necessidade de contar com um parceiro que esteja focado na experiência de utilização – com a preocupação de manter a experiência coerente e com capacidade de resposta para conseguir dar vida a esta nova forma de pagamento.

Mas como funciona o Apple Pay? Pegando no exemplo inicial do pagamento da refeição no restaurante, após o setup inicial onde se pode adicionar os cartões à “carteira” do iPhone, passa a ser possível utilizar apenas o telemóvel para realizar pagamentos contactless. Os terminais de multibanco são os mesmos de sempre – caso estes já aceitem pagamentos contactless, basta aceder à app Wallet, fazer a autenticação através de TouchID ou FaceID, encostar o Iphone ao terminal de pagamento e, voilá, o pagamento está feito. Sem que sejam necessárias carteiras ou cartões físicos, que apenas acrescentam obstáculos a todo este processo que se quer rápido. Como medida adicional de segurança, ao realizar pagamentos que ultrapassem um determinado valor (para Portugal foi definido um valor de 20 euros), será solicitado ao utilizador que confirme o pagamento através de um PIN por ele definido.

A verdade é que este serviço é diferenciador, uma vez que oferece total conveniência ao ato de pagamento – posso pagar as minhas compras em qualquer canal, seja este online, físico ou até mesmo em apps móveis, recorrendo aos dispositivos que já fazem parte da minha vida diária (iPhone, iPad, Mac ou Apple Watch) e sem complicações ou perdas de tempo desnecessárias. Por outro lado, este método de pagamento oferece também mais segurança: não apenas porque os dados do cartão são armazenados de forma segura através da criação de uma representação virtual do cartão (através de um token – que pode ser desativado ou ativado a qualquer momento na aplicação e de uma forma independente dos cartões físicos),mas também porque, para autorizar o pagamento é necessária uma autenticação biométrica. Esta é uma das razões pelas quais este serviço está a ter tanta aceitação em diferentes setores da economia, bem como um impacto considerável na indústria de pagamentos.

Eu sei que neste momento devem estar a pensar que nem tudo são rosas com este serviço e é verdade. Existe uma limitação da qual nenhum de nós nos livramos –continuamos a precisar de ter bateria no nosso telefone para garantir que temos os nossos cartões acessíveis bem como a possibilidade de realizar pagamentos à distância de um toque.

Agora sim, posso esquecer-me da carteira em casa sem problemas. Apenas tenho que garantir que o telefone não fica sem bateria. Se isso acontecer, não há tecnologia que nos salve. A não ser que daqui a alguns anos possamos simplesmente pagar autenticando a nossa identidade sem sequer ser necessário um telefone como veículo de pagamento. Mas isso é matéria para outro blog post!

Filipa MorenoApple Pay em Portugal: O que muda nas nossas vidas
read more

Summer internships da Xpand IT: a minha primeira experiência profissional

No dia 10 de julho iniciei a minha primeira experiência profissional nos summer internships da Xpand IT na área de Business Intelligence.

A Xpand IT foi-me sugerida por um amigo que já tinha participado na edição dos summer internships do ano anterior, tendo partilhado comigo que foi uma ótima experiência, mesmo do ponto de vista cultural. Portanto, as minhas expectativas eram bastante elevadas, mas posso dizer que foram facilmente atingidas.

O meu projeto tecnológico

Começando pelas questões técnicas, estive integrado na área de Business Intelligence durante 2 meses. Resumidamente, BI é uma área que tira partido de diversas tecnologias e metodologias para:

  • Recolher dados em bruto
  • Modelá-los e prepará-los para serem analisados
  • apresentar os dados no apoio à decisão de processos chave de negócio das empresas

Para chegar aqui, utilizámos a plataforma Pentaho Data Integration que de uma forma completamente user-friendly permite criar e manter processos de BI.

Para percebermos o quão simples pode ser a sua utilização: o processo de carregamento de dados de uma base de dados é tão simples como fazer dragging de um “step” para o interface, chamado “table input” e depois preencher alguns parâmetros.

O projeto que desenvolvi com o Henrique Pereira e a Inês Alves foi o de criar um plugin (“step”) na plataforma para criptografar e descriptografar dados de acordo com o novo Regulamento Geral de Proteção de Dados.

O novo “step” oferece agora vários algoritmos de criptografia diferentes como AES, Twofish and Serpent para além de permitir que os utilizadores criem as suas próprias funções personalizadas.

Desenvolvemos o “step” em Java e utilizámos inclusivamente metodologias Agile durante todo o processo. Ao longo do desenvolvimento, tive o acompanhamento e o mentoring do Carlos Moreira e do Daniel Salgueiral que garantiram que tudo corria bem.

João Cardoso

Em termos da experiência que pude viver, tenho de dizer que houve momentos de muita diversão tanto nos escritórios de Braga como de Lisboa.

Aqui em Lisboa fui logo bem-recebido desde o início por todas as pessoas que me fizeram sentir como parte da “família”. Ao longo do internship, trabalhámos com afinco, mas o ambiente de trabalho foi sempre descontraído, tanto que tive espaço para conhecer novas pessoas e inclusivamente fazer algumas amizades com os Xpanders.

Entre os lanches divertidos, os jogos acesos na mesa de matraquilhos e o bom ambiente entre todos, não houve dias monótonos nos summer internships da Xpand IT.

João Cardoso

Uma vez que a parte final do meu projeto de estágio foi em Braga, acabei por também ter a oportunidade de estar alguns dias nesta bonita cidade – que os nossos amigos do Norte se apressaram a afirmar que é a mais antiga de Portugal e ao mesmo tempo a que tem a população mais jovem da Europa.

Em Braga fui “vítima” da incrível hospitalidade das pessoas de lá. Jogámos bubble football, uma experiência que recomendo a toda a gente e também fizemos uma visita a Viana do Castelo para conhecer o Daniel Salgueiral e escritório fantástico perto da praia.

Porque deves inscrever-te nos Summer internships da Xpand IT em 2020

No geral, os summer internships foram uma ótima experiência e se estás a decidir se vale a pena ou não fazer um estágio, só te posso recomendar que tenhas essa experiência na Xpand IT uma vez que vais:

  • poder criar um projeto do início ao fim utilizando metodologias que são aplicadas no mundo real
  • aprender novas tecnologias, como, por exemplo, Pentaho
  • compreender como utilizar diferentes ferramentas para lidar com diferentes problemas estejas na área de BI ou noutra área tecnológica
  • conhecer novas pessoas que partilham contigo do mesmo mindset

Para terminar, quero agradecer a todas as pessoas com quem tive o prazer de partilhar esta aventura, em especial às equipas de BI e Data Science com quem estive no meu dia-a-dia.

summer internships da Xpand IT
summer internships da Xpand IT
João CardosoSummer internships da Xpand IT: a minha primeira experiência profissional
read more

Sete conselhos que um júnior developer deve saber

À medida que crescemos, cada um de nós tem de decidir o que quer fazer da sua vida. “Que área profissional queremos seguir?” Se estás a ler este artigo, então provavelmente devemos ter escolhido caminhos semelhantes e este conteúdo é para ti que és um júnior developer.

Ser um software developer dá-nos a sensação de que muitas vezes podemos mudar as pessoas ou as organizações com as nossas ideias, do dia para a noite, e isso é fantástico! No entanto, quando iniciamos esta journey, ficamos extasiados com a grandeza da área tecnológica.

Paul Robinson, principal engineer na CircleCI, tem uma perspetiva interessante sobre o código, tendo partilhado num blog post:  

Just another day writing tomorrow’s legacy code. Coding for a living is learning for a living

Paul Robinson

Esta citação ilustra bem como as coisas podem mudar rapidamente no mundo tecnológico e como devemos estar realmente preparados para os múltiplos desafios que todos os dias surgem ao nível da melhoria constante da tecnologia, metodologias e necessidades das sociedades.

Chegados aqui, partilho, sete conselhos e boas práticas a ti que provavelmente és um júnior developer e estás a começar a dar os primeiros passos. Espero que consigas ter a melhor experiência possível enquanto developer, ao longo deste caminho que se inicia agora e poder ajudar com as minhas tips a concretizar esse objetivo.

Pratica os teus skills para te tornares expert

Esta é a razão pela qual o teu professor de matemática te deu tantos trabalhos de casa: a matemática tem tudo a ver com praticar. O mesmo se aplica ao software development: estás sempre em constante aprendizagem. Quanto mais praticares, mais vais aprender e melhores resultados terás. Mais importante ainda: com o tempo, estarás também mais preparado para desafios maiores e mais complexos.

A melhor forma de praticar é desafiares-te a fazer coisas diferentes e em que tens potencial para melhorar, saindo da tua zona de conforto. Cria um conjunto de mini projectos, talvez um “atalho” para te ajudar a melhorar o processo nas tuas tarefas diárias. Isto pode ajudar-te de muitas maneiras: a seres criativo, a encontrares as tuas próprias soluções, a explorares novas tecnologias e, acima de tudo, a arriscares, sem temeres possíveis erros, no caminho.

Abraça os teus erros

Não penses que estás perdido só porque falhaste no teu último compromisso. É habitual termos medo de ver o nosso código repleto de sublinhados a vermelho, concordas? Ou até pior: “E se alguém repara?” Não é o fim do mundo, acredita!

Errar é comum e devemos aceitá-lo para poderes crescer enquanto júnior developer.

Enfrentares os teus erros pode ser desafiante, mas dá-te o conhecimento necessário para não os cometeres novamente.

It’s hard enough to find an error in your code when you’re looking for it; it’s even harder when you’ve assumed your code is error-free

Steve McConnel

Para prevenir bugs, o meu conselho mais importante para ti é que definas, planeies e estrutures guidelines para o projeto que vais desenvolver.  Desta forma, vais conseguir minimizar os erros. Aqui é também importante aprenderes a utilizar ferramentas de debug, essenciais para detetares erros e perceberes como chegaste lá. Estas ferramentas ajudam-te não só a ir a fundo à origem do problema como também a planeares como resolver o bug que encontraste.

júnior developer
Rami Malek as Elliot Alderson in Mr. Robot. Gif via noluyo.tv

Diz sim aos testes

É de senso comum que quando algo está a ser criado tem de passar por várias fases: uma das mais importantes, neste caso, é testar o produto. No desenvolvimento de software, deves testar em todos os momentos do projeto. Não deixes para o fim.

Existe uma metodologia de desenvolvimento em que os testes são a base de tudo. Talvez já estejas familiarizado com a metodologia TDD (Test Driven Development) em que a primeira fase de todas é escrever test cases e só então depois criar o código capaz de passar nos test cases criados.

Naturalmente não tens de usar TDD, mas deves testar sempre, independentemente da metodologia que escolheres.

Existem várias técnicas que podes aplicar durante o processo:

  • Testes unitários, ao nível de código, ajudam-te a prevenir possíveis bugs
  • Testes de integração para garantir que a feature que estás a criar funciona corretamente com todas as outras na aplicação
  • Testes de regressão permitem-te garantir estabilidade na app quando os requisitos se alteram

Vantagens de testar

Olha para o projeto atual em que estás envolvido e criar alguns testes unitários para compreenderes como podem ser úteis.  Entre as várias vantagens, estas são algumas das que destaco, quando aplicares técnicas de teste durante um projeto:

  • consegues otimizar a qualidade do software
  • Reduzes a probabilidade de cenários inesperados
  • Certificas que estás a responder às especificações do projeto
  • Garantes a satisfação dos teus stakeholders

Dá forma ao teu código

Sam Morgan, head of product na Makers, diz algo que deves ter sempre em mente quando escreves código:

Your code has two users: the computer, and every other person who has to work with what you wrote

Sam Morgan

Isto significa que provavelmente não serás o único na equipa a trabalhar com o código que estás a criar. Mantém-no “limpo” e acessível para o próximo developer.

Vê o teu código como um conjunto de gavetas da tua secretária: mantém-nas limpas e organizadas. Partilho algumas das boas práticas para te ajudarem na manutenção e evolução do teu código:

  • Organiza o teu código o mais separadamente possível
  • Identifica, com clareza, todas as funcionalidades que vais desenvolver e cria packages para cada uma. Assim, vais melhorar a escalabilidade e a manutenção de cada uma, reduzindo possíveis impactos em outras partes da aplicacação, em que não fizeres alteações
  • Evita rescrever o mesmo código repetidamente. Compila aquelas funções que respondem a diversos propósitos, criando a tua ferramenta de utilitários que te permitirá usar em diferentes pontos do projeto.

Para além disto que estamos a falar, deves documentar objetivamente o código que escreves ao longo do projeto. É uma forma também de protegeres o teu trabalho.

No futuro, será mais fácil olhares para o mesmo e teres uma ideia clara do que fizeste para trás. Criar diagramas que te permitam ter uma visão técnica geral da tua solução é recomendável, bem como mantê-la atualizada ao longo do projeto. Documenta os passos que deste para resolver os requisitos do projeto e regista todas as alterações que fizeste. Isto vai ajudar-te a ti e a outros a ter uma ideia clara sobre a solução, simplificando o processo de manutenção.

Compreende o que estás a fazer e porque estás a fazer

Se alguém te disser para pores sal no teu café, presumo que não o irás fazer. Porquê? Porque sabes que o café não saberá tão bem e é daquelas coisas que precisas para te manteres “forte”.

Compreender o quadro geral de um projeto vai não só ajudar-te a construir uma solução mais robusta como também a compreenderes melhor como integrar todas as partes da aplicação.

Assim, tem tudo que ver com fazer uma análise do projeto apropriada, fazendo as questões necessárias para começar. Estas são algumas das questões que, eventualmente, te vão ajudar a perceber o propósito do projeto e o quão valioso serás nele:

  1. Qual é o desempenho atual da aplicação? O que está a funcionar mal?
  2. O que é preciso alterar funcionalmente para corrigir os problemas?
  3. Como é que as alterações vão afetar cenários reais do dia-a-dia?
  4. Existem outros exemplos semelhantes a este?

Do ponto de vista técnico, deves saber identificar como é que a tua solução funciona da forma como funciona. Às vezes, terás de dar o máximo para chegares lá, mas colherás frutos mais à frente. Tenta compreender como o teu código funciona como um todo, sem ficares preso ao fascínio de teres conseguido finalizá-lo com sucesso. Na verdade, não é um truque de magia. Portanto, consegues encontrar respostas mais rápidas quando algo não corre bem. Por outras palavras: dá-te a capacidade de entenderes a razão de uma tecnologia específica ser mais indicada para um objetivo do que outra ao mesmo tempo que consegues trabalhar em antecipação e prevenção.

Foca-te numa tarefa de cada vez

Sempre que estiveres numa reunião de projeto, isso significa que mais tarefas irão aparecer para adicionares ao teu backlog. Não entres em pânico, ninguém está à espera que sejas malabarista. Só precisas de ter em mente que deves focar numa tarefa de cada vez!

É quase certo que o teu project manager irá organizar tarefas por prioridade, mas mesmo em cada tarefa deves organizar os teus pensamentos e planear como fazê-lo. Podes dividir cada uma em tarefas menores, para orientares melhor o desenvolvimento. Desta forma, vais seguir um workflow passo a passo, definindo como iniciar e terminar, com sucesso.

Se és um júnior developer, mantém a mente aberta a mudanças

Sempre que estiveres numa reunião de projeto, isso significa que mais tarefas irão aparecer para adicionares ao teu backlog. Não entres em pânico, ninguém está à espera que sejas malabarista. Só precisas de ter em mente que deves focar numa tarefa de cada vez!

Tal como já partilhei no início do artigo, as tecnologias alteram-se constantemente. O que sabemos hoje pode já não ser verdade a curto-prazo. A tecnologia que utilizas agora vai, provavelmente, ser substituída por outra nova tendência, uma tecnologia disruptiva que vem mudar a forma como trabalhamos.

No entanto, para os júniores como tu, estas alterações podem ser mais “dolorosas”. Porque ainda agora estás a iniciar esta jornada e não apenas tu como também os teus managers terão de perceber aquilo que melhor se adequa ao teu perfil, para poderes trabalhar o teu potencial.

Não tenhas medo de mudar de uma tecnologia para outra ou até mesmo de uma unidade de negócio para outra. Isso significa que terás a possibilidade de aprender muitas coisas diferentes e saberes aquilo que verdadeiramente mais te apaixona. Continua com o bom trabalho, abraça a mudança e encara isso como o próximo passo para fazeres evoluir os teus skills.

Conclusão

Se chegaste até aqui no artigo, é porque provavelmente (espero) foi útil para ti. Ser um software developer e júnior developer é um desafio por inteiro. Confia em mim, as tuas dúvidas e medos, por esta altura, não são só tuas. Aposto que quase todas as pessoas na área profissional de TI sentem ou sentiram a dada altura o mesmo que tu. Mas vais ter de começar por algum lado. Confia em ti e nas tuas capacidades, não tenhas medo de explorar e mantém esse espírito aberto de querer sempre aprender.

Este blog post de Luís Simões, Senior Developer da Xpand IT, foi publicado num artigo de opinião do Sapo Tek.

Luís SimõesSete conselhos que um júnior developer deve saber
read more

Power Platform World Tour: A nossa experiência

Na última semana de agosto, a Xpand IT rumou mais uma vez a Londres onde nos dias 28 e 29 teve lugar a primeira paragem europeia na Power Platform World Tour de 2019. Partimos de Lisboa com algumas expetativas que tínhamos a esperança que fossem cumpridas: fomos com vontade de conhecer ainda melhor esta plataforma que está a experienciar um crescimento muito interessante e ainda perceber um pouco melhor o que nos reserva o seu futuro.

Para aqueles que não estão totalmente familiarizados com a Power Platform, interessa esclarecer que esta é uma plataforma que agrega 3 produtos Microsoft que, juntos, dão vida a uma plataforma que promete dinamizar e promover a Transformação Digital das empresas. As PowerApps, o Flow e o PowerBI são as ferramentas que permitem a digitalização e automatização de processos internos e têm um potencial enorme para transformar a forma como as empresas gerem os seus processos e tomam as suas decisões. Com estas ferramentas, as empresas conseguirão tomar decisões informadas com agilidade e com processos baseados em tecnologia, com todas as vantagens que daí advêm.

O Evento

Mas voltando a Londres… foram dois dias recheados de conteúdo interessante, onde foi possível encontrar a crescente e entusiasta comunidade da Power Platform, explorar os desafios que diferentes indústrias estão a responder com as PowerApps e, não menos importante, receber uma dose de inspiração com as soluções apresentadas e a forma como várias empresas estão já a tirar partido destas tecnologias. Com o The Shard como pano de fundo, o evento foi um encontro da comunidade e uma partilha genuína de experiências… De facto, uma das mensagens mais poderosas da Microsoft é a simplicidade de utilização desta plataforma. Quando dizem que todos nós podemos construir uma app com as PowerApps e o Flow, é mesmo verdade. Com esta solução, tanto developers como utilizadores de negócio têm as ferramentas certas e estão capacitados para obter melhores resultados na sua empresa ao construírem apps. Esta não é uma ferramenta que, de um momento para o outro, possa ser utilizada para resolver todo e qualquer problema. Mas é, sem dúvida, possível endereçar alguns dos desafios que as empresas enfrentam hoje em dia através de um conjunto de tecnologias extremamente poderosas.

Um dos momentos altos do evento foi a possibilidade de ouvir em primeira mão o que a Microsoft tem a dizer sobre a evolução de todos estes produtos e aquilo que o futuro reserva, especialmente no que toca a melhorias e novas funcionalidades que estarão disponíveis para todos os utilizadores já a partir do próximo dia 1 de outubro. O AI Builder é um exemplo de uma das novas funcionalidades com que podemos contar com esta plataforma: com capacidades como classificação binária, deteção de objetos e processamento de formulários passa a ser mais fácil incluir os serviços cognitivos da Microsoft nas business applications, oferecendo-lhes uma camada de inteligência que até então não estava ao alcance das aplicações que eram criadas através das PowerApps. É todo um conjunto de novas funcionalidades – mais de 400 nos últimos 6 meses segundo foi partilhado – que permitirão o aparecimento de um número crescente de Citizen Developers.

Outro dos pontos mais relevantes do evento esteve relacionado com a forma como este tipo de iniciativas terá de ser gerido nas empresas em parceria com o departamento de IT. É certo que existem muitas vantagens em colocar o poder de criação de uma aplicação nas mãos de qualquer utilizador – aliás, hoje em dia estes mesmos utilizadores já usam o Excel e o Access para resolver muitas questões – mas tem de se garantir que o tema de Enterprise Management é devidamente endereçado. E, mais do que tudo, tem de se olhar para estas iniciativas de uma forma programática: a sua adopção terá de ser promovida continuamente para que não sejam consideradas apenas como um projectos one-shot.

Confirmámos também as nossas suspeitas acerca do crescimento sem precedentes da plataforma: crescimento de 700% de apps em produção só no último ano e mais de 2 milhões e meio de developers activos mensalmente na Power Platform. Estes são números surpreendentes que nos mostram que o mercado de low-code está a crescer: a Gartner e a Forrester nomearam as Microsoft PowerApps como líderes de mercado. É caso para dizer que o futuro parece ser risonho para as PowerApps e restante Power Platform.

Em conclusão

Em resumo, podem esperar mais novidades acerca das PowerApps muito em breve. O evento foi uma oportunidade excelente de vermos inovação em movimento no espaço interno das empresas e aprendermos com as múltiplas experiências da comunidade. Voltámos a Lisboa com a certeza que a proposta de valor das PowerApps para cenários de empowerment interno é muito interessante e que nesse sentido, podem complementar a nossa própria oferta de mobile development, tanto no que toca ao desenvolvimento multiplataforma (Xamarin) como no desenvolvimento puramente nativo.

Em termos estratégicos, a nossa visão para Customer Facing apps não passa por ferramentas de low-code. No entanto, vemos um potencial interessante quando nos focamos em cenários internos e de Employee Empowerment. Mais novidades em breve!

Filipa MorenoPower Platform World Tour: A nossa experiência
read more