Artur Ter-Stepanyan, da CodeRiders, compartilha insights convincentes sobre seus projetos de terceirização de software
Publicados: 2023-02-06Desenvolvedores de software e engenheiros odeiam falar; a maioria de nós já ouviu essa frase pelo menos uma vez. Mas seja verdade ou não, precisamos de opiniões diretamente de profissionais. Ninguém pode compartilhar insights mais aprofundados sobre o processo de desenvolvimento de software do que os próprios desenvolvedores e engenheiros.
A CodeRiders continua sua série de entrevistas com nossos principais desenvolvedores e engenheiros de software. Anteriormente, compartilhamos as jornadas de nossos funcionários em TI, juntamente com suas habilidades técnicas e interpessoais como engenheiros de software remotos profissionais.
Desta vez, continuamos com nosso desenvolvedor de software full-stack, Artur Ter-Stepanyan, que compartilha sua opinião sobre gerenciamento de terceirização de software, equipes Scrum e seus projetos favoritos.
Sobre Artur Ter-Stepanyan
Artur é um desenvolvedor de software sênior na empresa de desenvolvimento de software CodeRiders. Ele é um dos melhores ex-alunos da CodeRiders, tendo formado a equipe principal em 2016.
Se você acompanha a CodeRiders há algum tempo, já deve saber que a CodeRiders entrou na indústria internacional de TI como uma escola local de desenvolvimento de software em 2013. Em apenas um ano, a escola deu mais de 800 ex-alunos, 17 dos quais formaram a CodeRiders empresa de terceirização de software em 2014.
Artur tem contribuído muito para o reconhecimento internacional da CodeRiders como uma das melhores empresas de outsourcing de software do mercado. Ele trabalhou com seus colegas em alguns dos projetos de terceirização de software mais desafiadores e complexos. Artur é um dos nossos desenvolvedores de software dedicados que recebeu críticas positivas de clientes para nossa empresa. Ele também tem representado ativamente nossa empresa em vários eventos – o mais recente foi a Feira Internacional de Hannover Messe 2022 em Hanover, Alemanha.
Vamos começar no início!
Olá Artur. Obrigado por reservar um tempo para conversar conosco. Vamos começar com algumas informações básicas sobre você e sua jornada para se tornar um desenvolvedor de software de sucesso. Como você acabou na CodeRiders?
Olá. Obrigado pela oferta. Acho que muitos desenvolvedores de software armênios se identificariam com minha história. Já trabalho na indústria de TI há 7 anos, mas me tornar um desenvolvedor de software não era meu sonho de infância, e nem o desenvolvimento de software era minha especialização na universidade. Como um jovem adulto normal, eu estava interessado em muitas profissões aleatórias, incluindo medicina e saúde. Eu queria escolher uma profissão que realmente me interessasse. No final do dia, é nisso que você vai passar a maior parte do seu tempo. No entanto, também não esqueci o salário médio de certas profissões e seus ambientes.
Na época em que eu procurava uma oportunidade de carreira tão perfeita, meu irmão trabalhava na CodeRiders como diretor do departamento de desenvolvimento de negócios. O fundador e CTO da empresa é amigo de infância do meu irmão. Então, a empresa já era reconfortante para mim. Ele sugeriu que eu me matriculasse em seus cursos de PHP, Laravel e JavaScript para ver se a programação me interessaria. Em meados dos anos 2000, a indústria de tecnologia já estava florescendo na Armênia. A grande maioria dos recém-formados promissores escolheu profissões como desenvolvedores de software, engenheiros, arquitetos, testadores (especialistas em controle de qualidade), PMs e profissionais de marketing digital, e o setor de TI era muito forte e repleto de um milhão de oportunidades. A Armênia estava a caminho de se tornar o próximo centro tecnológico do mundo.
Então, resolvi experimentar e, como podem ver, foi uma excelente escolha. Eu me encontrei no desenvolvimento de software e a equipe era a combinação perfeita para mim. Depois de terminar com sucesso a escola de desenvolvimento de software, fui contratado como desenvolvedor de software back-end em 2016. CodeRiders é meu primeiro e único espaço de trabalho. Criamos uma atmosfera em que a frase “sou apenas um funcionário” não é adequada. Todos nós nos preocupamos honestamente com o bem-estar e a reputação da empresa, e é incrível o quão longe passamos de uma pequena startup para um fornecedor de software reconhecido internacionalmente. Sei que encontrar um local de trabalho ideal na primeira tentativa raramente acontece, por isso aprecio muito isso. Acho que o meu sucesso pessoal, assim como o sucesso da empresa, está fortemente ligado à nossa visão e dedicação. Somos como uma grande família que se reuniu para uma missão clara de ajudar as pessoas a trabalhar de forma mais produtiva e se divertir.
Você mencionou que a equipe é como uma família para você. Esse fato não cria um ambiente “solto” de trabalho e disciplina?
Muitos acreditam que ser amigo de seus colegas ou ter conexões próximas no trabalho prejudica a produtividade dos negócios/trabalho. Não vou discutir com isso porque os casos diferem. No entanto, na CodeRiders, isso é mais como um estímulo extra para trabalhar melhor. Com CodeRiders, eu sou eu mesmo. Não estou sob nenhuma coação, nem sinto necessidade de me exibir. Como resultado, apenas me concentro no meu trabalho e faço o que faço de melhor: codificação e desenvolvimento de software. Bons resultados e feedback positivo dos clientes comprovam a eficiência do meu trabalho.
Por favor, descreva seu dia de trabalho típico na CodeRiders.
Começamos com uma xícara de café, é claro. Se for segunda-feira, todos os membros da equipe, incluindo o departamento de desenvolvimento de negócios, se reúnem para uma reunião matinal. Compartilhamos o que estamos fazendo e garantimos que todos estejam no caminho certo. Então todos começam a trabalhar.
Todos nós trabalhamos em várias salas grandes e confortáveis. Não temos quartos separados, o que é ótimo na minha opinião, porque trabalhar juntos de alguma forma libera o estresse. Por exemplo, durante um dia de trabalho duro, um dos membros de nossa equipe pode contar uma piada e todos riem e continuam trabalhando.
Também temos salas separadas para discussões ou videochamadas. Portanto, se precisarmos de espaço privado e silêncio, podemos nos mudar para esses quartos. Para nós, desenvolvedores, isso geralmente acontece de manhã e à noite, quando temos ligações com um cliente e a equipe remota de desenvolvimento de software. Também podemos fazer várias pausas para o café, quando podemos apenas conversar sobre diferentes tópicos, relaxar e refrescar nossas mentes. A CodeRiders oferece um modelo de trabalho híbrido, o que significa que os funcionários podem escolher entre trabalhar remotamente ou no escritório. Prefiro o trabalho interno porque gosto de estar perto dos meus colegas (meu irmão e amigos próximos), o que me ajuda a trabalhar de forma ainda mais produtiva.
Você discutirá seu projeto atual com mais detalhes?
Atualmente, trabalho em uma plataforma de gerenciamento esportivo tudo-em-um. Tem como principal objetivo agilizar a organização dos clubes desportivos. É uma das principais plataformas de gestão esportiva do mercado internacional. Automatizamos a gestão de qualquer clube desportivo. Qualquer pessoa pode participar e incentivar seu clube local de qualquer lugar do mundo. O produto é como ter uma equipe administrativa inteira no seu bolso. Ele ajuda o usuário a gerenciar facilmente seu clube em qualquer lugar e a qualquer hora em todos os seus dispositivos. Trabalho com engenheiros e desenvolvedores de software remotos de quase todos os continentes. Temos vários gerentes de projeto que trabalham em estreita colaboração com todos os membros da equipe de tecnologia e com o cliente.
O que você mais gosta no seu projeto de desenvolvimento de software atual?
Além do fato de o projeto ser grande e nunca te entediar, gosto do nosso processo de trabalho e metodologia. Utilizamos a metodologia de desenvolvimento de software Scrum, perfeita para um projeto tão complexo. O Scrum é o framework Agile mais popular e, claro, segue os 5 princípios do Agile: comprometimento, foco, respeito, abertura e coragem. Em geral, os modelos iterativos de desenvolvimento de software são muito flexíveis e “amigos da mudança”. Você não precisa seguir o plano. Com o Scrum, você ainda pode ter sucesso no desenvolvimento e implementação de software, mesmo que não tenha a versão final do produto em mente. Enquanto isso, ao contrário dos modelos de software de preço fixo, as metodologias iterativas de terceirização de software garantem que o cliente pague apenas pelo trabalho comprometido.
Descreva seu dia de trabalho típico neste projeto. O que significa ser um desenvolvedor full-stack trabalhando com uma equipe internacional?
Nossa equipe é composta por gerentes de projeto, desenvolvedores de software back-end e front-end, engenheiros e testadores. Os gerentes de projeto dividem o trabalho em sprints e nós cooperamos estreitamente para concluir e testar cada sprint depois de avançar. Portanto, o processo de desenvolvimento de software e a linha do tempo se parecem com estes:
- Começamos com o planejamento do sprint. Cada sprint começa da seguinte forma: Os desenvolvedores de software, engenheiros e proprietários do produto discutem quais itens do backlog do produto (PBIs) devem ser incluídos no sprint. O proprietário do produto é responsável por priorizar os PBIs para uma tela específica. No entanto, também somos encorajados a compartilhar nossas opiniões, pensamentos e preocupações sobre a decisão, o que é ótimo. No final, concordamos com uma meta realista de sprint e backlog.
- O Scrum diário inclui reuniões diárias, que são ligações de 15 a 30 minutos para fazermos check-in, compartilharmos nosso progresso e revisarmos nossas atividades do dia.
- Continuamos com as revisões de sprint: ao final de cada sprint, temos uma reunião online com a equipe de gestão e mostramos nosso trabalho final. A equipe de gerenciamento analisa os recursos de trabalho que foram implementados durante o sprint e fornece feedback. O feedback é incorporado ao backlog do produto, ajudando-nos a priorizar melhor durante os sprints futuros.
- A etapa final é a retrospectiva do sprint. Este é o momento em que a equipe Scrum revisa as coisas que devemos melhorar e oferece métodos de melhoria para o futuro. Colaboramos e planejamos nosso próximo passo de acordo.
Por mais que você goste da metodologia Scrum, há alguma desvantagem em seu projeto que você gostaria de corrigir?
Para ser sincero, às vezes sinto que perdemos tempo. Gosto de conversar e garantir que todos os membros da equipe estejam no mesmo caminho. Isso, claro, é a chave para o sucesso. No entanto, às vezes algumas ligações ou bate-papos são desnecessários e podemos passar mais tempo discutindo um problema do que realmente trabalhando em um projeto.
Como é trabalhar com estrangeiros? Existem diferenças culturais?
Claro, a experiência é muito diferente e é natural. Vivemos em ambientes diferentes e temos hábitos, mentalidades e mentalidades diferentes. Às vezes, não entendemos as piadas uns dos outros. No entanto, isso não é grande coisa e não prejudica nosso processo de trabalho. De fato, isso é uma questão de tempo. Quanto mais trabalharmos juntos, melhor entenderemos a cultura local um do outro. De qualquer forma, com todas essas diferenças, continuo gostando de trabalhar com profissionais de outros países. Isso torna o trabalho ainda mais interessante.
Qual a importância de um bom gerenciamento de projetos para um desenvolvedor de software?
O gerenciamento de projetos é crítico. É provável que um projeto falhe 90% das vezes se não houver uma comunicação transparente entre o cliente e os membros da equipe. Uma sólida compreensão das responsabilidades é uma obrigação para o sucesso de um projeto.
Trabalhei em projetos que tiveram e não tiveram gerentes de projeto. No primeiro caso, comuniquei-me de maneira suave e fácil com meus colegas engenheiros e desenvolvedores de software. A equipe técnica às vezes tinha dificuldade em se comunicar com membros não técnicos da equipe, mas era uma questão de tempo. Isso também depende da experiência de um desenvolvedor de software trabalhando com pessoas não técnicas. Se o desenvolvedor de software for hábil em trabalhar com membros não técnicos da equipe e entender sua lógica, a comunicação é simples e consome menos tempo. Caso contrário, eles podem demorar um minuto, mas novamente voltarão aos trilhos. Projetos pequenos e simples nem precisam de gerentes de projeto. No entanto, não subestimarei o papel dos gerentes de projeto em pequenos projetos. Claro, eles gerenciam a cooperação de maneiras mais profissionais e benéficas.
Quais idiomas ou pilhas de tecnologia você gostaria de aprender no futuro?
Atualmente estou explorando o Unity. É um mecanismo de jogo multiplataforma. É muito popular e você provavelmente já sabe disso. O Unity oferece suporte a uma variedade de plataformas móveis, de console, de desktop e de realidade virtual. É usado principalmente para desenvolvimento de jogos iOS e Android e é especialmente popular para desenvolvimento de jogos indie (videogames independentes).
Uma das principais vantagens da publicação independente é que ela está disponível para um grande número de pessoas. Por exemplo, desenvolvedores e engenheiros de software individuais ou pequenas equipes de desenvolvimento de software podem criar seus jogos sem suporte técnico e financeiro de grandes editoras de jogos. Eu brinco com o mecanismo Unity para criar jogos 3D e 2D, simulações interativas e outras coisas interessantes.
CodeRiders é o seu primeiro e único espaço de trabalho. Isso não acontece com frequência. Por que é que?
Não tenho um espaço de trabalho anterior para comparar com CodeRiders e nunca pensei em deixá-lo. Isso já significa que é um espaço de trabalho único. Eu testemunhei o crescimento desta empresa de uma pequena startup para um fornecedor de software estabelecido e reconhecido internacionalmente. Confio e aprecio meus colegas porque somos responsáveis pela alta reputação da empresa. Eu acredito na empresa de desenvolvimento de software CodeRiders e em sua visão. Eu também tenho um membro da família e a maioria dos meus amigos próximos entre os funcionários, então acho que esses três fazem um resumo sólido dessa questão.
Terminemos esta entrevista com algumas informações sobre o Artur enquanto indivíduo. Seus hobbies e interesses?
Bem, eu gosto de esportes, especialmente futebol/futebol. Eu também gosto de jogar videogames.
Obrigado, Artur, por dedicar seu tempo para falar conosco. Acho que você compartilhou muitas informações úteis com nosso público.
Se você precisa de desenvolvedores de software e engenheiros talentosos como Artur, não hesite em nos enviar uma mensagem rápida aqui. Também estamos abertos a discussões gratuitas. Deixe-nos a sua mensagem e um dos membros da nossa equipe de desenvolvimento de negócios entrará em contato com você em um dia útil.