Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução - **Introduction**:
Thank you for the opportunity to interview for the position of Software Engineer."Hi! I’m
Matheus Almeida. I’m software engineer from Brazil. I have 29-year-old. I'm married and have
three wonderful children – two girls and a boy. I hold a degree in Information Systems from
Pitagorás College in Uberlandia, Minas Gerais, which is also where I currently reside."
"I've been working in software development for over 5 years, primarily focusing on the .NET
development platform. My expertise lies in working with relational databases, including SQL
Server and Oracle. I'm fluent in languages such as C#, VB.Net, and Javascript. Additionally, I
have hands-on experience with frameworks like React and Angular, and I'm proficient in HTML
and CSS."
"At the moment, I'm deepening my understanding of cloud computing concepts, particularly
on the Azure platform. While I already have practical experience with Azure, I'm committed to
advancing my knowledge further. I'm also actively engaged in studying React and Typescript,
with a specific emphasis on their application in front-end development."
"I've had the opportunity to work with prominent companies in the Brazilian market, including
Luiza Labs, Martins Atacadista, and huge banks like Bradesco and Itaú."
Encerramento - **Closing:**
"I'm passionate about software development and constantly seek ways to enhance my skills.
I'm excited about the opportunity to contribute my expertise to your team. Please feel free to
ask any questions or delve deeper into any aspect of my background or experience."
1 - Can you tell me about a challenging software development project you’ve worked on and
how you overcome those challenges?
Trabalhei no meu último emprego em uma aplicação bancária aqui no Brasil. Enfrentamos um
problema significativo de processamento ao gerar relatórios extensos para os investidores
desses bancos. Como solução, sugeri e implementei um método em que recuperávamos
todos os dados duplicados relacionados aos relatórios que entravam no sistema. Essa
abordagem mitigou o risco de um "lock" nas tabelas usadas diariamente pelo sistema.
Consequentemente, essa tabela duplicada foi configurada como somente leitura, nos
permitindo gerar relatórios com menos dificuldade e em menos tempo. A duplicação dos
dados era necessária devido à legislação de registro de dados bancários no Brasil. Para
reduzir o tempo de processamento, simplesmente direcionamos o sistema para a tabela
existente, aproveitando-a para mais de uma função além do simples registro legal.
2 - Can you tell me about a time when you had to work with someone who was difficult to get
along with? how did you handle it?
Yes, I once had to work with a teammate who had been with the company longer. I was the
newcomer and didn't have a strong command of the code and its business rules. Therefore, I
focused on maintaining clear and precise communication about everything that was common
to both of us. I created concise documentation, tried to consistently deliver high-quality and
well-tested work, and always demonstrated that we were working as a team rather than
against each other.
2 - Você pode me contar sobre uma vez em que teve que trabalhar com alguém que era difícil
de lidar? Como você lidou com isso?
Sim, uma vez tive que trabalhar com um colega de equipe que estava na empresa há mais
tempo. Eu era o novato e não tinha um amplo domínio do código e das regras de negócios.
Portanto, concentrei-me em manter uma comunicação clara e precisa sobre tudo que era
comum a ambos. Criei documentação concisa, procurei entregar consistentemente trabalhos
de alta qualidade e bem testados, e sempre demonstrei que estávamos trabalhando como
uma equipe, em vez de um contra o outro.
3 - But let me challenge you a bit here - what if this colleague of yours didn’t respond to your
efforts and continued being difficult? What Would be you next step?
In this case, I would likely meet with the team manager to understand the best approach with
my colleague. I wouldn't expose him initially or jeopardize his position on the team. I would
also seek guidance from other team members to improve how we handle our common issues
collaboratively.
3 - Mas permita-me desafiá-lo um pouco aqui - e se esse colega seu não respondesse aos
seus esforços e continuasse sendo difícil? Qual seria o seu próximo passo?
Nesse caso, provavelmente eu me reuniria com o gerente da equipe para entender a melhor
abordagem com meu colega. Não o exporia inicialmente ou colocaria em risco sua posição na
equipe. Também buscaria orientação de outros membros da equipe para aprimorar a maneira
como lidamos colaborativamente com nossos problemas comuns.
I’ve decide to study the software development for the abundant job opportunities, for being an
opportunity to work in the technology market, and for understanding that it would challenge
me as a professional.
In the code review of a colleague from my team, I observe the quality of the coding, that is, is
this code easy to maintain? Does this code follow the best practices? Is this code easy to
read? Based on these parameters, I consider the code to be good.
I’ve already used as management tools the Azure Devops, MeisterTask, KanbanForce, Zoho
and Trello.
Já utilizei ferramentas como Azure DevOps, MeisterTask, KanbanForce, Zoho e Trello como
ferramentas de gerenciamento.
I'm looking for an opportunity to deepen my knowledge of technological tools, learn more
about different business rules, have international experiences within product development
and improve my technical and interpersonal skills within software development.
I believe that my experience of software development in Brazil can contribute greatly to the
growth and deepening of the team's capabilities in dealing with the most different situations
that will be imposed on the development of the new company's products. Within this I can add
that this is a very big and enriching opportunity for me, so I will dedicate myself a lot to make
this relationship fruitful and satisfactory for both sides, both the company and myself.
One of the mistakes I made most throughout my career and that I learned a lot during all this
time was to write the code in the cleanest, most organized and most optimized way possible,
but this was only possible when I deepened my knowledge about the language I was using
and so I was able to extract the best that language could offer me in terms of features and
tools.
Um dos erros que cometi com mais frequência ao longo da minha carreira e do qual aprendi
muito durante todo esse tempo foi escrever o código da maneira mais limpa, organizada e
otimizada possível. No entanto, isso só foi possível quando aprofundei meu conhecimento
sobre a linguagem que estava utilizando, permitindo-me extrair o melhor que essa linguagem
poderia oferecer em termos de recursos e ferramentas.
Generally I try to solve problems, always breaking them into smaller parts, so within software
development, when this type of problem occurs, be it a bug or the resolution of a problem in
the development itself, I first analyze the code and reduce it. the scope of the problem to be
solved, from that point I organize it by difficulty levels and do the quickest and easiest first
and leave the most difficult ones for last, this way I have more time to dedicate myself to the
real difficulties and solve easier problems first.
Time estimates may vary depending on how much control I have over the project or code, but
in general I take into account what my colleagues also estimate, bring this into my context and
add 10% to 30% more to have a little more peace of mind in case something unforeseen
happens, within this I always try to deliver the cleanest, highest quality and most optimized
code possible.
Currently, I work with a banking application aimed at attracting new investors for investment
funds, within this we seek to optimize the forms as much as possible to obtain the necessary
registration information for these new investors to join the system. This system is built with
C# (.NET platform) on the back-end, on the front-end we use Angular and SQL server
database.
Atualmente, trabalho em uma aplicação bancária voltada para atrair novos investidores para
fundos de investimento. Dentro desse contexto, buscamos otimizar ao máximo os formulários
para obter as informações de cadastro necessárias para que esses novos investidores
possam ingressar no sistema. Este sistema é construído com C# (plataforma .NET) no back-
end, e na parte da frente, utilizamos Angular, além de um banco de dados SQL Server.
I always choose to work in a team because I need the support of other teammates to acquire
more knowledge about the tools we use on a daily basis, to clarify doubts about business
rules and to have better comparison parameters to improve codes to be developed.
Through courses and personal projects, I always try to stay up to date with what the market is
asking for and what makes the most sense for me at the moment. To stay up to date with news
in the Tech area, I listen to a lot of podcasts, read blogs and websites focused on software
development and follow channels that have content focused on software development and
technology.
Através de cursos e projetos pessoais, sempre busco me manter atualizado com o que o
mercado está demandando e o que faz mais sentido para mim no momento. Para ficar
atualizado com as novidades na área de Tecnologia, ouço muitos podcasts, leio blogs e sites
focados em desenvolvimento de software, e sigo canais que têm conteúdo voltado para o
desenvolvimento de software e tecnologia.
17 - What do you consider your strengths? What do you consider your weaknesses?
I believe that my strengths are determination, focus and being self-taught, these points helped
me get to where I am today. In terms of improvement, I would say it would be improving my
communication with leadership and the team, thus being able to be clearer about day-to-day
problems within software development.
Eu acredito que minhas forças são a determinação, o foco e a capacidade de aprender por
conta própria; esses aspectos me ajudaram a chegar onde estou hoje. Em termos de áreas
para melhoria, eu diria que seria aprimorar minha comunicação com a liderança e a equipe,
permitindo-me ser mais claro sobre os problemas do dia a dia no desenvolvimento de
software.
18 - What do you think makes a great engineer?
I think that what makes a software engineer good at what they do is having a broad command
of the tools they use on a daily basis, good abstraction skills, effective communication
abilities, the skill to transmit their knowledge clearly, and the ability to write clean, well-
organized, and highly optimized code.
Eu acredito que o que torna um engenheiro de software competente em sua área é ter amplo
domínio das ferramentas que utiliza diariamente, boas habilidades de abstração, eficazes
habilidades de comunicação, a habilidade de transmitir conhecimento de maneira clara e a
capacidade de escrever código limpo, bem organizado e altamente otimizado.
Currently, what I enjoy the most in the software development field in general is the constant
need to deal with challenges that require intelligent and optimized solutions. Another
important factor is the ability to create solutions that will help people in their daily lives who
need that tool.
I hold a degree in Information Systems from Pitagorás College in Uberlandia, Minas Gerais,
Brasil. I graduated in 2021.
Yes, currently, I work at Codecyle Company, where we develop solutions for attracting
investors to investment funds of major Brazilian banks such as Bradesco and Itaú.
Professionally, I’ve never worked with freelances, only with full-time jobs, but I am open to
freelances as well, no issues with that.
Profissionalmente nunca trabalhei com freelances, somente com fulltime jobs, mas estou
aberto a freelances também, sem problemas quanto a isso.
Within the workplace, I haven't had the opportunity for that yet. However, I have a mentoring
project for beginners in the software development, where I give weekly classes, provide
project support, and answer questions for a group of friends who are already in college but
don't yet have the necessary requirements for internships, trainee positions, or even junior
developer roles in a company. I've also recently started a YouTube channel where I give tips
on tools and teach how to develop projects aimed at those interested in entering the
development field but don't know where to start.
Dentro do ambiente de trabalho ainda não tive essa oportunidade, porém eu possuo um
projeto de mentoria para iniciantes na aréa de desenvolvimento de software, ao qual eu dou
uma aulas semanalmente, faço acompanhamento dos projetos e tiro duvidas de um grupo de
amigos que já estão na faculdade, mas que ainda não possuem os requisitos necessarios
para o ingresso em uma vaga de Estagiario, Trainee ou até dev junior em alguma empresa.
também abri recentemente um canal no youtube ao qual eu dou dicas de ferramentas e ensino
a desenvolver alguns projetos voltados a quem tem interesse em entrar na aréa de
desenvolvimento mas ainda não sabe por onde começar.
24 - Currently, within your skills, do you define yourself as a Front-end, Back-end, or Fullstack
developer?
Actually, I define myself as a Fullstack developer, with 60% proficiency in the back-end,
specifically in .NET languages such as C# and VB.Net, and 40% in the front-end with
languages like JavaScript, HTML, CSS, and frameworks like React and Angular.
24 - Atualmente dentro das suas habilidades você se define como desenvolvedor: Front-end,
back-end ou Fullstack?
Atualmente eu me defino como Fullstack, sendo 60% de dominio em back-end, no caso .NET
linguagens como C# and VB.Net e 40% em front-end em linguagens como Javascipt, HTML,
CSS e frameworks com React e Angular.
24 - If we proceed with the process, how soon could you start in the new position?
In approximately one week, I could start the new job without any issues.
25 - Se caso prosseguirmos com o processo, em quanto tempo você poderia iniciar no novo
trabalho?
25- In case with move forward with the process, how soon could you start in the new
position?
In around one week, I could start the new job without any issues.
Minha expectativa salarial está em torno de 4 mil dolares, atualmente. Ou 25 dolares por hora.
Dicas uteis: