Pedro Fonseca Front End Developer

Entrevista

Pedro Fonseca é Front End Web Developer na KWAN e será tutor do Workshop Git e GitHub.

Há coisas que para um cliente podem parecer simples mas que na verdade são muito complexas de programar. Diria que a parte mais complicada é gerir essas expectativas.


Conta-nos um pouco sobre o teu percurso académico e profissional, e o que te levou a enveredar por esta área e profissão?

Comecei a programar no secundário e fascinava-me a lógica implementada em cada desafio. Via muito potencial na tecnologia e queria saber mais sobre como tudo era criado. Como é que apareciam os websites e as apps que usamos diariamente?

Tirei a licenciatura em Engenharia Informática na Universidade de Aveiro e foi aí que cimentei os meus conhecimentos das variadas áreas da informática.

Perto do final do curso fiz um estágio de dois meses na Critical Software, em Coimbra, e foi aí que descobri o que queria fazer: tornar-me Front End Developer. Ser quem implementa a interface com a qual o utilizador vai interagir, ver a “cara” do produto aparecer a funcionar à minha frente à medida que vou adicionando mais uma e mais outra linha de código.

Comecei a trabalhar como Full Stack Developer mas sempre a estudar sobre Front End, a aprender sobre React JS e à procura de me focar nessa área. Cheguei mesmo a frequentar o curso de Front End Development da EDIT.

Estou neste momento a trabalhar na KWAN como Front End Developer e é o meu cargo ideal. Trabalho com React JS, TypeScript, Git e outras tecnologias diariamente para que o cliente tenha um website construído com as melhores e mais recentes tecnologias.

Sou também mentor e um dos membros da equipa da associação As Raparigas do Código onde dou formação e faço mentoria de alunas em diferentes fases das suas aventuras neste ramo da informática.


Como é o teu dia a dia de trabalho? Tens algum tipo de rotina?

O dia começa sempre com uma boa caneca de café e uma reunião com a restante equipa de desenvolvimento e de qualidade de software. Falamos rapidamente sobre o que temos planeado para o dia e alinhamo-nos como equipa.

No início de cada sprint (período de desenvolvimento de 3 semanas, no nosso caso) tenho muitas tarefas e features para desenvolver, é quando vejo mais frutos do meu trabalho a aparecer. À medida que vou acabando cada tarefa, o meu código é passado para o nosso Git e alguém da minha equipa revê o que eu fiz. Quatro olhos, ou mesmo seis, são sempre melhores do que apenas dois e assim prevenimos pequenas falhas que possam ocorrer.

Mais perto do final do sprint passo mais do meu tempo a limar arestas, melhorar o que desenvolvi, escrever alguma documentação e resolver bugs que possam ter sido detetados pela equipa de qualidade durante o sprint.


Quais são os maiores desafios para um Front End Developer?

Há coisas que para um cliente podem parecer simples mas que na verdade são muito complexas de programar. Diria que a parte mais complicada é gerir essas expectativas.

Às vezes para se mudar um botão de posição é preciso pensar em como passar toda a lógica associada ao funcionamento do mesmo para outro lugar dentro do projeto, por exemplo. E apesar de visualmente parecer uma alteração simples podem ser coisas que demoram um pouco mais a desenvolver. Isto é apenas um exemplo.

Outra dificuldade é quando não somos amigos de nós próprios e não nos preocupamos com o futuro do projeto. É importante ter em conta as boas práticas de desenvolvimento desde o início, tendo cuidado com o código que entregamos para que seja fácil de entender e de adicionar algo novo. Fazer testes e documentação do projeto também são boas práticas que devemos usar.

Caso contrário passamos muito tempo a re-aprender o projeto quando já não nos lembramos do nosso raciocínio de há umas semanas ou meses e podemos também subir a complexidade de futuras tarefas que poderiam ser simples se o projeto estivesse melhor trabalhado. Daí ser também importante o versionamento do código com o uso de Git e o review do nosso código por mais colegas.


Para serem bem sucedidos e conseguirem destacar-se no mercado, que skills e know-how devem ter estes profissionais, na tua opinião?

Um Front End developer tem de se manter sempre em cima do acontecimento. Há sempre uma tecnologia nova a aparecer, mais moderna, eficiente e intuitiva. É preciso ter essa adaptabilidade e gostar mesmo do que fazemos. Ter gosto por proporcionar ao utilizador a melhor experiência possível.

Em termos de conhecimento técnico é importante estar confortável com uma tecnologia popular no mercado. JavaScript e TypeScript e respetivos frameworks são talvez as tecnologias mais populares neste mercado, mas não são as únicas. Associado a isso é preciso aprender também coisas como a metodologia da equipa em que vão trabalhar, seja ela SCRUM, Kanban ou outra, e uma tecnologia de versionamento como o Git, para que a qualidade do código seja a melhor possível e ninguém se atropele no desenvolvimento.


Como é que alguém se pode tornar Front End developer? É preciso ter licenciatura ou algo equivalente?

Não. É preciso dedicação e trabalho, mas não necessariamente ter frequentado uma universidade para conseguir trabalho na área. Isto aplica-se para Front End bem como para outras áreas de desenvolvimento.

Um curso intensivo como os da EDIT são muito excelentes para nos dar as bases para começar a aprender, ou para cimentar os conhecimentos que já temos. Foi o que eu fiz também e os resultados foram exatamente os que procurava.

Para além disso, é preciso muito estudo e investigação da nossa parte. Aprender as tecnologias que o mercado pede e mostrar o fruto do nosso trabalho em plataformas como o LinkedIn e o GitHub. No GitHub não só aprendemos a usar a tecnologia Git como também podemos expor publicamente os nossos projetos com os quais vamos aprendendo e melhorando. Alguém com um perfil com projetos bem construídos e documentados pode ser muito mais interessante do que alguém que tem uma licenciatura na área mas não mostra o seu trabalho e conhecimento de forma adequada.


Qual é a importância do Git no teu trabalho do dia-a-dia?

Toda a equipa de desenvolvimento usa o Git para publicar o seu trabalho com os restantes colegas. Temos milhares de versões do nosso projeto, cada uma correspondendo a cada alteração feita por um elemento da equipa, chamados os commits. Em cada commit conseguimos também ver as modificações feitas linha a linha e caracter a caracter. O que foi alterado, adicionado ou removido e em que ficheiros, por quem e quando. Torna-se muito mais fácil saber quem consultar se tivermos alguma dúvida sobre o código existente, remediar problemas voltando atrás nas versões para eliminar algum problema adicionado recentemente, entre outras ações.

Cada equipa pode também trabalhar independentemente através do uso das branches, que são como realidades paralelas do mesmo projeto. Quando é oportuno fundem-se as branches das diferentes equipas e é mais fácil garantir que não nos atropelamos ao desenvolver algo, mesmo que trabalhemos nos mesmos ficheiros de código.


Serás tutor do Workshop de Git e GitHub na EDIT.. Quais são as expectativas? De que forma planeias lecionar as tuas aulas?

Estou entusiasmado com esta nova aventura e pronto para ajudar os alunos a sentirem-se o mais confortáveis possível com a tecnologia Git e a plataforma GitHub. Já tenho alguma experiência a dar formação nestes assuntos mas nunca aprofundei tanto alguns dos temas quanto o que planeio fazer neste Workshop. Como o conteúdo também não é específico para apenas uma área de desenvolvimento, espero encontrar uma turma muito diversificada também em termos de perfis, o que me parece fantástico.

Tendo em conta o foco do Workshop, as aulas não podiam deixar de ser muito práticas. Inicialmente vai ser necessário algum enquadramento teórico para termos os conceitos base bem definidos, mas teremos de pôr as mãos na massa para percebermos a implicação de cada ação no Git e o potencial do GitHub como plataforma.

No final do curso, os alunos devem conhecer bem a plataforma GitHub, ter um bom perfil e sentir-se confortáveis com o uso de GitHub em paralelo com o seu trabalho habitual nos seus projetos.



Partilhar:

    Fale connosco

    Interesses

      Subscrever Newsletter

      Interesses