Meu Inicio de Carreira

Antonio Code
6 Feb 202421:48

Summary

TLDRIn this podcast episode, the host shares his journey into the tech industry, sparked by curiosity and the desire to enhance his gaming experience with mods for Counter Strike. He talks about his self-taught beginnings, the formation of a successful community, and his progression from amateur to professional. The host discusses his early struggles with understanding programming concepts, the importance of learning from the community, and the pivotal moment when he decided to formalize his education. He highlights the challenges faced during his career, the value of making mistakes, and the satisfaction of achieving senior status. The episode concludes with an encouragement to stay curious and understand the foundations of technology.

Takeaways

  • 🕹️ The speaker's career in programming began out of curiosity, sparked by the desire to customize the gaming experience in Counter Strike.
  • 🎮 He started by modifying game mods and plugins, which led to the discovery of programming and the creation of a community around a zombie plague mod in Brazil.
  • 🛠️ Initially self-taught, the speaker learned programming by translating and combining mods, gradually understanding code and contributing to game development.
  • 🏫 His formal education in computer science at a technical school in São Paulo helped him understand hardware and deepen his programming knowledge with languages like Visual Basic and Pascal.
  • 🔍 The speaker emphasizes the importance of learning from the community, using platforms like GitHub, Twitter, and especially YouTube for knowledge acquisition.
  • 📈 The transition from being self-taught to working professionally began with a recommendation from a classmate, leading to a job opportunity in a different tech stack.
  • 🛑 He discusses the challenges of learning new programming paradigms, such as understanding callbacks in Node.js, which was a shift from his experience with C# and .NET.
  • 🔧 The speaker highlights the use of tools like Resharper for code quality and the importance of performance optimization in early projects.
  • 📚 He underscores the value of continuous learning, taking courses on platforms like Udemy and Train Web, and learning from experienced developers in the community.
  • 🤝 The importance of teamwork is mentioned, suggesting that leveraging each team member's strengths and proactively seeking help can enhance productivity.
  • 🗓️ The speaker reflects on the difficulty of estimating time for tasks, the need for flexibility, and the importance of setting realistic deadlines.

Q & A

  • What sparked the speaker's initial interest in programming?

    -The speaker's interest in programming began out of curiosity due to the desire to add effects and sounds to the game Counter Strike, which they couldn't do with their basic copy of the game.

  • What did the speaker discover that allowed others to modify games like Counter Strike?

    -The speaker discovered that 'adons' or plugins from a community called 'led mods' were used to modify games, making them more lively and fun.

  • How did the speaker's fascination with game modifications lead to community building?

    -The speaker's fascination led them to download and modify plugins, which they shared with others. This resulted in the creation of a successful forum community for a zombie game mode in Brazil.

  • What was the speaker's first programming language and how did they learn it?

    -The speaker's first programming languages were Visual Basic and Pascal, which they learned at a technical school in São Paulo known as Etec.

  • How did the speaker transition from modifying game plugins to professional programming?

    -The speaker was recommended for a job by a classmate who recognized their potential after they performed well in a programming competition. This job used ASP.NET MVC, which became a technology the speaker worked with for many years.

  • What was the speaker's first project in their professional programming career?

    -The speaker's first project was developing a pilot for a CSV spreadsheet that inserted data into the company's database, specifically numbers related to people who did not want to be bothered by Procom.

  • How did the speaker's early experiences shape their approach to learning and seeking help?

    -The speaker was initially very independent and rarely sought help. They learned from their own experiences and through community resources like GitHub and YouTube, which were their main platforms for seeking knowledge and updates.

  • What programming tools and languages did the speaker mention using during their career?

    -The speaker mentioned using ASP.NET MVC, C#, .NET, jQuery, Bootstrap, and later Node.js, JavaScript, and MongoDB. They also worked with Java for integrations with Oracle and learned about APIs and workers.

  • What challenges did the speaker face when transitioning to new programming languages or paradigms?

    -The speaker faced difficulties in understanding the programming models of new languages, such as the use of callbacks in Node.js, which was a departure from the synchronous model they were used to with .NET.

  • How did the speaker approach learning and mastering new technologies?

    -The speaker consumed a lot of content from various sources, including YouTube, Udemy, and Train Web courses. They also learned from experienced colleagues and by working on increasingly complex projects.

  • What advice does the speaker give for someone starting their career in programming?

    -The speaker advises being curious, seeking to understand the underlying development of the technologies one uses, and not being afraid to make mistakes or take on new challenges.

Outlines

00:00

🎮 Gaming to Coding: The Origin Story

The speaker begins by recounting how their career in programming started 12 years ago out of curiosity, sparked by the game Counter Strike. They describe the excitement of LAN house gaming and the community's use of mods and plugins to enhance the gaming experience. This led to the speaker's discovery of game modifications, their fascination with how these mods could transform the game, and their eventual creation of a zombie plague community in Brazil. The narrative also touches on the speaker's self-taught journey into programming, their initial foray into coding with Visual Basic and Pascal, and how an opportunity from a classmate led to their first professional programming experience.

05:03

🛠️ Early Career Development and Learning

The speaker reflects on their early career, highlighting the importance of their first development project, which involved creating a pilot for a CSV spreadsheet. They discuss the role of partnerships in their educational journey, particularly with Centro Paula Souza, and how it led to their initial work experience. The speaker also talks about their self-study methods, including using notes and community resources like GitHub and YouTube, to overcome the lack of experienced guidance. They mention the influence of certain online figures like Professor Guanabara and the transition from using jQuery to exploring newer technologies like Bootstrap and .NET.

10:04

🌐 Broadening Technical Horizons

The speaker delves into their broadening technical skillset, discussing their move from C# to .NET and the impact of learning about various technologies and programming languages. They mention their experience with Java, Oracle integrations, and the challenges of understanding callback functions in Node.js. The speaker also talks about the shift to JavaScript and Node.js as their preferred programming method, the adoption of new features like Promises, and the importance of learning about different development tools and platforms, such as Udem and Train Web, which helped them grow both technically and professionally.

15:06

🚧 Overcoming Challenges in Software Development

The speaker shares their experiences with the challenges faced during their software development career. They discuss the difficulties of understanding business rules deeply, the stress of unrealistic deadlines, and the importance of learning to communicate effectively within a team. They also mention the need to understand different programming environments, the importance of performance considerations, and the value of learning from mistakes. The speaker emphasizes the importance of creativity, understanding client needs, and the transition from focusing on individual tasks to working more collaboratively within a team.

20:07

🏆 Aspirations and Achievements in Senior-Level Attainment

The speaker concludes by discussing their aspirations to reach a senior level in their career and the fulfillment they felt upon achieving that goal. They reflect on the importance of curiosity and continuous learning, the value of understanding the foundations of the technologies they work with, and the challenges of the initial stages of their career. The speaker encourages embracing the learning process, not being discouraged by initial difficulties, and maintaining a vision for personal and professional growth.

Mindmap

Keywords

💡Counter Strike

Counter Strike is a popular first-person shooter video game that has a significant presence in the script. It is the catalyst for the speaker's journey into programming. The game's mods, or modifications, piqued the speaker's curiosity, leading to the discovery of add-ons that enhanced gameplay. This sparked the speaker's interest in coding and ultimately shaped their career path.

💡Mods

Mods, short for modifications, are alterations made to video games by players or third parties to change the game's content or appearance. In the script, mods are crucial as they are what initially got the speaker interested in programming. They allowed the speaker to customize their gaming experience and later led to the creation of a community around these modifications.

💡Programming

Programming is the process of creating instructions that a computer can execute. The speaker's journey into programming began out of curiosity about game mods. This interest evolved into a full-fledged career, with the speaker learning various languages and becoming a self-taught developer, as detailed in the script.

💡Autodidact

An autodidact is someone who is largely self-taught. The term is used in the script to describe the speaker's approach to learning programming. Without formal education in the field, the speaker taught themselves through trial and error, online resources, and community engagement.

💡Community

In the context of the script, community refers to a group of people who share common interests or objectives. The speaker founded a community for a Counter Strike mod, which became successful and led to further opportunities in programming and collaboration with other gaming sites.

💡Visual Studio

Visual Studio is an integrated development environment (IDE) used for programming. The speaker mentions it as a turning point in their life when they became curious about how to create software for Windows, leading to a deeper dive into programming and software development.

💡C Sharp

C Sharp, often referred to as C#, is a programming language used for developing a wide range of applications. The speaker mentions it as one of the first languages they learned, which became a foundation for their understanding of programming concepts and their career in software development.

💡ASP.NET MVC

ASP.NET MVC is a web application framework used to build dynamic websites. The speaker's first professional project involved this technology, marking a significant step in their career where they transitioned from learning to applying programming skills in a professional context.

💡jQuery

jQuery is a fast, small, and feature-rich JavaScript library used for simplifying HTML document traversing, event handling, and animation. The speaker mentions jQuery as part of their early experiences with front-end development, highlighting its importance in creating interactive web applications.

💡GitHub

GitHub is a platform for version control and collaboration used by developers. The speaker mentions GitHub as a primary source for seeking knowledge and staying updated with new developments in the programming community, emphasizing its role in continuous learning.

💡Node.js

Node.js is a JavaScript runtime that allows for server-side JavaScript execution. The speaker's transition to Node.js represents a shift in their programming preferences, moving from C# to JavaScript for its flexibility and productivity in developing scalable network applications.

💡MongoDB

MongoDB is a NoSQL database used for storing and managing data. The script mentions it as part of the MEAN stack, which the speaker adopted early on, indicating their adaptation to new technologies and trends in web development.

💡Promises

Promises in JavaScript are used for asynchronous computations. The speaker mentions the shift from callbacks to Promises as a relief, highlighting an improvement in coding practices and a move towards more readable and maintainable code.

💡DDD

DDD stands for Domain-Driven Design, a software development approach that emphasizes complex models and domain logic. The speaker mentions applying DDD, indicating a move towards more sophisticated software design patterns and a deeper understanding of business requirements in their projects.

💡ReSharper

ReSharper is a productivity tool for Visual Studio that provides on-the-fly code analysis and refactoring. The speaker mentions ReSharper as an essential tool that helped in maintaining clean and formatted code, enhancing their development process.

💡Workflow

Workflow in the script refers to a system of steps or procedures involved in the completion of a task or project. The speaker talks about working on a workflow system for approval stages, indicating their involvement in creating business processes and automation within software applications.

💡Performance

In the context of software development, performance refers to the efficiency and speed of an application. The speaker emphasizes the importance of performance optimization in their projects, showcasing their proactive approach to ensuring applications run smoothly and quickly.

💡WebSocket

WebSocket provides a way to open a two-way interactive communication session between the user's browser and a server. The speaker mentions a project involving WebSocket for real-time chat functionality, illustrating their experience with real-time web technologies.

💡Senior

In the script, 'Senior' refers to a high level of professional expertise and experience. The speaker's aspiration to reach a 'Senior' level signifies their goal to be recognized for their deep understanding and mastery of software development.

Highlights

The speaker started programming out of curiosity, inspired by the game Counter Strike and its mods.

Initially, the speaker's game version lacked the exciting features found in LAN houses, sparking interest in game mods.

Discovery of 'adons' and community-led mods which enhanced the gaming experience significantly.

Began modifying game mods, translating them from English to Portuguese, and understanding the underlying codes.

Experimentation with combining different mods to create unique gaming experiences, such as changing in-game sounds.

Founded a community for 'zombie plague' mods in Brazil, which became highly successful with daily visitors and shared mods.

Involvement in notable Counter-Strike sites and becoming a moderator, indicating a shift from hobbyist to community leader.

Self-taught programming journey, starting with not knowing basic programming concepts to writing code.

Enrollment in a technical school (Etec) in São Paulo for a computer course, marking a structured learning approach.

Learning programming languages such as Visual Basic and Pascal, with a preference for Delphi.

First job opportunity came through a school partnership, emphasizing the importance of networking and connections.

Experience with ASP.NET MVC, a technology that became a significant part of the speaker's professional journey.

The importance of understanding the business logic deeply to avoid functionality deficits in software development.

Use of jQuery and Query UI in the early days of front-end development, before the rise of Bootstrap.

Emphasis on the role of community and platforms like GitHub and Twitter in learning and staying updated in the field.

YouTube as a primary source of knowledge, with a special mention of Professor Guanabara and Curso em Vídeo.

Transition from C# to .NET, reflecting a growing interest and expertise in the .NET framework.

Learning from online resources like Marco Oradi for C# doubts and Eduardo Pires for architecture insights.

Adoption of DDD, dependency injection, and unit testing as the speaker's projects increased in complexity.

Use of Resharper by Jet Brains for code formatting and improvement suggestions, highlighting the importance of tools in development.

Shift towards JavaScript and Node.js, influenced by the ease of development and the non-typed nature of the language.

Learning about full-stack development with Node.js and MongoDB, embracing the MERN stack.

Understanding the importance of performance optimization and the use of caching as a simple yet effective method.

Challenges in learning new languages and the importance of not comparing them directly to known languages.

The value of working in a team, leveraging each member's strengths, and the benefits of collaboration.

Importance of setting realistic deadlines and the pitfalls of overestimating what can be achieved in a given time.

Reflection on the journey from Junior to Senior developer, the challenges faced, and the sense of achievement.

Curiosity as a driving force in learning and development, and the importance of understanding the foundations of what you work on.

Transcripts

play00:01

[Música]

play00:07

E aí meus amigos começando mais um

play00:09

episódio do podcast hoje o tema vai ser

play00:12

início de carreira eu comecei na área já

play00:15

faz 12 anos e foi engraçado eu comecei a

play00:18

programar por curiosidade graças ao jogo

play00:21

famoso jogo Counter Strike naquela época

play00:23

tinha uma febre de lan house todo mundo

play00:25

ia frequentava tinha aquela galera que

play00:28

ficava no MSN outro já ficava no erkut

play00:31

tinha a galera do gram Chase do Resident

play00:33

Evil 4 e também tinha do gumbald e claro

play00:37

do Counter Strike 1.6 que até hoje foi

play00:40

um dos maiores jogos que já bombaram no

play00:43

Brasil sempre que eu jogava na La House

play00:45

era muito diferente do meu jogo pareciam

play00:47

mais vivos mais animados tinha vários

play00:50

efeitos quando a gente matava alguém

play00:52

dando tiro na cabeça falava Headshot E

play00:55

aí começava a falar Monster kill e tal e

play00:57

era muito legal e a minha cópia

play00:59

simplesmente era vazia não tinha nada

play01:01

não conseguia adicionar as botes não

play01:03

fazia nenhum som e eu ficava frustrado

play01:05

com aquilo e aí eu comecei a pesquisar o

play01:08

que fazia ter aquelas alterações nos

play01:10

jogos até que eu descobri que na verdade

play01:12

eram adons as pessoas baixavam alguns

play01:15

plugins de uma comunidade a led mods E

play01:18

aí com esses mods eles montavam com uns

play01:21

pacotes de modificação disponibilizavam

play01:23

na internet a galera lá baixava e

play01:25

instalava no jogo e eu fiquei muito

play01:27

fascinado com aquilo como o jogo ficava

play01:29

diferente como dava um efeito bem mais

play01:32

divertido e aí por curiosidade baixei um

play01:35

desses plugins e comecei a modificar ele

play01:38

comecei traduzindo de inglês para

play01:39

português e aí eu vi que aqueles códigos

play01:42

começaram a fazer sentido para mim então

play01:44

eu comecei a juntar alguns plugins

play01:46

pegava ali dois plugins que faziam uma

play01:48

coisa e juntava eles em em um trocava os

play01:52

sons por exemplo naquela época tava

play01:54

bombando o pânico por exemplo então eu

play01:56

colocava algumas vinhetinhas durante o

play01:59

jogo tinha alguns plugins legais de

play02:01

câmera outros de adicionar chapéu tinha

play02:04

também mods de polícia ladrão tinha modo

play02:08

de surf tinha mod de zumbi que era meu

play02:11

favorito zumbi plag e eu fiquei

play02:13

fascinado com aquilo era muito divertido

play02:15

Foi aí que eu fundei uma comunidade de

play02:18

zombie plag no no Brasil o fórum fez

play02:21

muito sucesso muitas pessoas acessavam

play02:23

diariamente e vi muita gente

play02:25

compartilhando também os seus plugins

play02:27

editados Eu também postava que eu

play02:30

editava e aí foi formando uma comunidade

play02:32

com isso outros sites famosos de Counter

play02:35

Strike me chamavam para participar de

play02:37

alguns projetos cheguei a virar

play02:38

moderador de um dos maiores sites da

play02:40

época era cess onlinebr e foi uma época

play02:43

muito legal muito legal mesmo e eu

play02:45

comecei a programar de certa forma

play02:48

totalmente autodidata eu não sabia que

play02:50

era uma variável o que era uma constante

play02:53

que que era uma string não sabia eu

play02:55

simplesmente ia lá e escrevi o código e

play02:57

aí que eu fiquei muito doido um dos

play02:59

membros desse fórum postou um

play03:01

visualizador de imagens que ele tinha

play03:03

criado para instalar no Windows mesmo e

play03:05

eu fiquei cara como você fez isso e tal

play03:07

ele ah fiz com uma linguagem de

play03:09

programação utilizando visual Studio

play03:11

caramba o que que é visual Studio como

play03:13

que instala isso eu fiquei muito louco

play03:15

com vontade de aprender aquilo aí que

play03:18

tive uma virada de chave na minha vida

play03:21

que eu conhecia a Escola Técnica aqui em

play03:24

São Paulo que a gente chama de Etec e lá

play03:26

tinha um curso de informática e eu

play03:28

fiquei muito interessado a assim eu

play03:30

fazia o ensino médio à noite fazia o

play03:33

ensino técnico à tarde e foi lá que eu

play03:35

comecei a entender um pouco mais sobre

play03:37

esse mundo comecei com as aulas de

play03:39

hardware para entender que que é uma

play03:40

memória que é um CPU Como montar o

play03:42

computador que é mais voltado a uma

play03:44

coisa mais de assistência ali mais

play03:46

técnico E aí comecei com as aulas de

play03:49

programação as minhas primeiras

play03:51

linguagens foram Visual Basic e Pascal

play03:54

que no caso a gente usava Delf Eu

play03:56

particularmente sempre gostei mais do

play03:58

Delf achava interface do programa muito

play04:01

mais legal criava alguns formulários até

play04:03

mais bonitos e aquilo lá foi deixando

play04:06

mais animado e claro sem menosprezar

play04:09

também esquecer do visual G que é uma

play04:11

das Ferramentas mais legais assim para

play04:14

quem tá começando para estudar a lógica

play04:16

as instruções são todas em português

play04:19

então é muito fácil de entender o que tá

play04:21

escrito ali que o código tá querendo

play04:23

proporcionar e aquilo foi trazendo uma

play04:26

experiência fui praticando o

play04:28

desenvolvimento do algoritmo cada vez

play04:30

mais até que chegou uma oportunidade

play04:32

para mim é um colega de sala e ele ia

play04:36

recomendar algumas pessoas da sala dele

play04:38

e ele lembrou de mim aquela época teve

play04:40

um campeonato de programação ele já

play04:42

estava trabalhando alguns meses na área

play04:44

e ele ficou em primeiro lugar eu fiquei

play04:47

em segundo então ele viu o potencial ali

play04:50

viu que tava indo bem e me indicou pro

play04:53

trabalho dele lá era um pouco diferente

play04:55

e lá tinha como linguagem principal você

play04:59

e utilizavam a tecnologia aspnet mvc foi

play05:03

uma tecnologia que eu fiquei por muitos

play05:04

anos trabalhando e gostava bastante

play05:06

Lembro até hoje da minha primeira tela

play05:08

que eu desenvolvi era um Pilot de uma

play05:10

planilha csv que fazia a inclusão na

play05:14

base de dados da empresa de números da

play05:17

base de dados de pessoas que não queriam

play05:19

ser incomodados do Procom e essa

play05:21

oportunidade eu consegui graças a

play05:23

parceria que a escola tinha então aesa

play05:25

era conveniada com o Centro Paula Souza

play05:28

E aí começou o meu estádio então aí foi

play05:30

o pontapé inicial naquela época o jquery

play05:33

estava reinando ainda então frontend

play05:36

sempre era com o jquery em questões de

play05:38

estilo também era de query ui porque

play05:41

ainda não tinha bombado o Bootstrap tava

play05:43

quase para lançar então foi nesse

play05:45

período que eu percebi que tinha muito

play05:48

potencial na área eu fui gostando cada

play05:50

vez mais fui empolgando com tudo que eu

play05:53

ia aprendendo e cada coisa que eu fazia

play05:56

eu salvava num bloco de notas eu usava

play05:58

ele para ter referên

play06:00

para outros projetos outras telas outros

play06:03

desenvolvimentos Então sempre que tinha

play06:05

uma dúvida de como limpar um campo ali

play06:07

um formulário com jquery como adicionar

play06:10

uma validação com 5 Nativa eu ia lá

play06:13

olhava meus blocos de notas com as

play06:15

minhas anotações de código no começo eu

play06:18

era muito independente raramente

play06:19

procurava ajuda se eu tivesse uma

play06:22

máquina do tempo voltasse com aquela

play06:23

memória com aquela cabeça eu com certeza

play06:25

Faria diferente eu iria pedir mais ajuda

play06:28

trocar mais ideia com quem é mais

play06:30

experiente porque pode ser muito rico a

play06:32

gente aprender com quem já passou por

play06:34

aquela dificuldade com aquele problema e

play06:36

entender Quais foram as soluções

play06:38

adotadas por aquela pessoa e na época eu

play06:41

tinha muita falta disso como era algo

play06:43

muito novo para mim querendo não eu não

play06:45

tinha nenhum conhecido algum parente ali

play06:48

algum amigo muito próximo que já tava na

play06:50

área H algum tempo tudo era novo as

play06:52

minhas referências também eram novas e

play06:55

às vezes sabiam até menos do que eu

play06:56

então eu tinha muita dificuldade de

play06:59

saber em quais lugares buscar

play07:01

conhecimento corretamente então eu

play07:03

tentava sempre me aten aí com coisas da

play07:06

comunidade através do github por exemplo

play07:08

e às vezes o Twitter alguma notícia

play07:12

alguma coisa que galera comenta mas a

play07:14

minha plataforma principal para buscar

play07:17

conhecimento novidades era o YouTube

play07:20

YouTube acho que foi a plataforma mais

play07:21

importante para mim e até hoje é a mais

play07:24

importante o conhecimento que a gente

play07:25

pode adquirir através dos vídeos que são

play07:28

gratuitos eu posso mencionar aí por

play07:30

exemplo Professor Guanabara que tem

play07:32

diversos cursos incríveis aí totalmente

play07:35

gratuitos para você começar na área É

play07:37

muito difícil você não ter passado por

play07:39

algum vídeo do canal curso em vídeo é

play07:41

muito difícil mesmo então hoje eu posso

play07:43

tranquilamente falar você quer começar

play07:45

na área uma das melhores formas é começa

play07:48

uma faculdade como Fatec faça um curso

play07:50

como eec são ótimas maneiras de entrar

play07:53

no mercado de trabalho se isso realmente

play07:55

é para você você tá empenhado a chance

play07:57

de você conseguir um emprego é muito

play07:59

muito alta realmente se você pegar a

play08:01

estatística de número de pessoas que

play08:03

estudaram na as Fatec e pessoas que

play08:04

saiam de lá empregadas Vocês já vão ver

play08:07

que a taxa é altíssima aqui na cidade de

play08:09

Franca por exemplo onde que eu moro que

play08:11

cerca de 90% dos alunos vão sair de lá

play08:14

empregados é um número absurdo pois bem

play08:18

após ficar um pouco melhor em C Sharp

play08:20

comecei a gostar mais de dotnet comecei

play08:23

a pegar projetos mais importantes de ser

play08:25

o o criador da da Solution d o nson no

play08:29

projeto e eu vi bastante conteúdo sobre

play08:32

dtnet Com certeza se você programa C

play08:36

Sharp você vai conhecer também um cara

play08:37

aí chamado Marco oradi sempre que eu

play08:39

tinha alguma dúvida de c sharp tinha

play08:42

algum post dele alguma coisa então

play08:44

Agradeço também bastante na época também

play08:47

eu gostava bastante dos vídeos do

play08:49

Eduardo Pires ele tinha boas dicas sobre

play08:52

arquitetura de como organizar os

play08:54

projetos nomenclatura como era algo

play08:57

muito novo para mim me ajudou muito como

play08:59

referência na época também eu consumi

play09:01

bastante conteúdo do André baltieri que

play09:04

também junto com o Eduardo Pires aí

play09:06

tinha vários conteúdos bacanas sobre

play09:09

padrões de projeto até que eu comecei a

play09:11

fazer do meu jeito com as minhas

play09:13

necessidades com as necessidades da

play09:15

regra de negócio e aí eu fui aumentando

play09:17

meu nível de complexidade do projeto

play09:19

aplicando já DDD injeção de dependência

play09:23

começando a trabalhar com testes

play09:25

unitários também tinha uma extensão

play09:27

muito boa pro visual Studio que chamava

play09:29

resharper da Jet Brains lá era uma mão

play09:32

na roda deixava o código totalmente

play09:34

formatado bonitinho dava sugestões de

play09:36

melhorias era Fantástico aquela

play09:38

ferramenta cada vez foi aumentando os

play09:40

desafios para mim criando projetos mais

play09:42

importantes em larga escala com trup

play09:45

putos maiores em com mais usuários e a

play09:48

responsabilidade foi aumentando naquela

play09:50

época também utilizei bastante oracon

play09:52

criava procedures e elas eram bem

play09:54

padronizadas organizadas com

play09:56

documentação data de criação autor a

play09:59

performance ficava bem legal só que você

play10:01

acabava imputando uma regra dentro do

play10:04

oraco né naquela época também comecei a

play10:07

trabalhar no sistema de workflow de

play10:09

aprovação de etapas de líderes e foi uma

play10:12

experiência muito legal porque essa

play10:14

ferramenta tá até hoje no ar e naquela

play10:16

época também foi bom porque comecei a

play10:19

trabalhar com outras tecnologias como

play10:21

por exemplo Java para utilizar algumas

play10:23

integrações com Oracle aprendi que nem

play10:26

tudo é só api também existe um workers

play10:29

chown Jobs comecei a entender para que

play10:32

serviria o Cash onde utilizar para quê

play10:35

também tive uma boa experiência com o

play10:37

node s no princípio eu tinha um pouco de

play10:41

raiva de node porque eu não conseguia

play10:43

entender muito bem Como funcionava os

play10:45

callbacks Eu encontrava algumas funções

play10:48

com callback real e aquilo me deixava

play10:50

doido como eu sempre acostumei com o

play10:52

dnet chamar a função e ela retornava ali

play10:55

na variável eu não conseguia entender o

play10:58

como que aqu aquilo funcionava né É

play11:00

difícil você mudar a sua forma de pensar

play11:02

quando algo é muito novo mas como eu já

play11:04

gostava bastante de JavaScript acabou

play11:06

sendo muito natural para mim e aí eu fui

play11:08

gostando cada vez mais de node na época

play11:12

também veio forte o mongo Deb na famosa

play11:15

min stack e quando começou a liberar pra

play11:18

uso as Promises Nossa eu fui o primeiro

play11:21

acho quei um dos primeiros a adotar eu

play11:23

fiquei muito aliviado quando a gente

play11:25

saiu daqueles callbacks Malditos E aí eu

play11:27

fui deixando um pouco de lado o c sharp

play11:30

fui aproximando mais do JavaScript com o

play11:33

node até hoje já é minha forma de

play11:35

programar favorita e só de não ter a

play11:38

necessidade de tipar tudo eu achei que

play11:40

aquilo adiantava muito o trabalho claro

play11:42

que eu tinha que garantir que aqueles

play11:44

atributos existiam ali para não termos

play11:46

aquele famoso underfed mas era tão

play11:49

produtivo tão mais fácil de desenvolver

play11:52

que mesmo o Framework na época aspnet

play11:54

com várias coisas encapsuladas eu achava

play11:57

que a complexidade era muito alta e para

play11:59

criar uma coisa tão simples como um

play12:01

crude demorava muito tempo ao contrário

play12:03

do que eu fazia no node que era tão

play12:05

rápido tão rápido que eu achava até que

play12:07

tava errado quando eu fazia nessa época

play12:09

eu gostava de olhar outros projetos no

play12:12

github ver como foram as decisões

play12:14

técnicas como eles desenvolviam e

play12:17

aprender a utilizar melhor as

play12:19

ferramentas como linter que ajudavam a

play12:21

estilizar o código padronizando ele e aí

play12:24

comecei um site muito bom chamado udem

play12:26

que ele disponibiliza vários cursos por

play12:29

um determinado tempo com um preço muito

play12:31

abaixo do normal cerca de r$ 1 r$ 2 você

play12:34

comprava um curso completo na empresa

play12:36

também que eu trabalhava a gente tinha

play12:37

parceria com a train web foi uma das

play12:40

plataformas mais legais também de curso

play12:42

que eu aprendi bastante sobre angular 1

play12:46

na App aprendi também sobre node e

play12:49

aquilo foi muito bom pro meu

play12:50

conhecimento da APP e combinando com o

play12:52

angl JS foi uma combinação muito

play12:54

poderosa como a Spa tava muito forte foi

play12:57

um conceito que eu consegui aprender

play12:59

muito rápido como eu já tinha

play13:01

conhecimento sobre Ajax na época que eu

play13:03

usava jquery era basicamente como se a

play13:06

gente usasse Ajax para tudo para

play13:08

preencher as informações necessárias na

play13:10

nossa tela e mudava muito a abordagem

play13:12

que eu tava acostumado também que era da

play13:15

Model View Controller do aspnet como as

play13:17

camadas eram separadas agora a gente

play13:20

tinha o desafio de manter uma

play13:21

compatibilidade maior entre o payload do

play13:24

do seu backend com o do front Porque

play13:27

qualquer ajuste ali sem essa

play13:29

sincronização já poderia quebrar esse

play13:31

frontend mas eu gostava muito da

play13:33

abordagem de criação de componente e

play13:35

nessa época muitas pessoas queriam

play13:37

seguir outras abordagens tinha uma

play13:39

galera que era muito defensora do PHP

play13:41

por exemplo com o laravel que lembrava

play13:43

muito o aspnet mvc mas eu nunca fui

play13:45

muito fã de PHP tinha um pouco também de

play13:47

preconceito mas eu entendo hoje que o

play13:50

PHP foi muito importante ele sustentou

play13:53

bastante a web aí nos anos 2000 e graças

play13:57

a ele a gente qu que a gente tem hoje né

play14:00

Por mais que eu não goste muito mesmo

play14:02

não teno muita experiência é importante

play14:04

lembrar que a linguagem paga boleta

play14:05

ainda então ainda tem muita demanda tem

play14:08

muito programador de PHP ainda dá para

play14:10

fazer muita coisa legal ainda mas

play14:12

voltando minhas maiores dificuldades

play14:14

foram entender em quais ambientes

play14:16

deveria publicar as minhas aplicações

play14:19

como deveria testar fazer aquele

play14:21

trabalho de eu entender Qual a regra de

play14:24

negócio a nível Tão Profundo que eu

play14:27

consiga evitar possíveis déficits de

play14:30

funcionalidades Às vezes alguma

play14:32

validação tão simples poderia evitar uma

play14:34

dor de cabeça então isso ajuda muito na

play14:37

época não tinha tanta comunicação como

play14:39

eu não conhecia muito é a quem recorrer

play14:42

quem buscar ajuda eu ficava um pouco

play14:44

perdido no começo foi muito frustrante

play14:46

porque não tinha alguém ali ao meu lado

play14:48

para me apoiar a pessoa Às vezes Dava

play14:50

algum conselho básico coisas bem assim ó

play14:53

essa tela faz isso e já era se vira nos

play14:56

30 então acho que foi uma das maiores

play14:59

dificuldades que eu já tive nessa época

play15:00

e eu não sabia me expressar para

play15:03

conseguir obter essas respostas e

play15:05

conforme o tempo passa a gente começa a

play15:07

ter um pouco mais de criatividade a

play15:09

gente consegue enxergar a necessidade do

play15:11

cliente pelas experiências prévias para

play15:14

a gente ter um software bem desenvolvido

play15:16

a gente tem que se Enxergar como se

play15:18

fosse o cliente como se aquela aplicação

play15:21

fosse realmente para nós Outro ponto

play15:23

também que me trouxe dificuldade na

play15:24

época poderia ter evitado antes de sair

play15:27

adotando uma linguagem diferente igual

play15:29

no primeiro contato que eu tive com Java

play15:32

eu tava com a cabeça muito em csharp E

play15:34

aí eu queria programar csharp usando

play15:36

Java e não é bem assim as linguagens têm

play15:38

as suas particularidades e eu já passei

play15:41

muito perrengue por conta de comparação

play15:43

de valores eu usava igual igual onde

play15:47

deveria ser equals então isso me trouxe

play15:49

muito stress muitos xingamentos e até

play15:52

descobri foi foi chão Outro ponto também

play15:55

é saber lidar um pouco melhor com a

play15:57

pressão às vezes as nossas lideranças

play15:59

chegavam com um prazo absurdo e a gente

play16:02

já pensava nossa quantas horas eu vou

play16:04

varar a noite aqui desenvolvendo isso

play16:06

Correndo Atrás só que não é bem assim

play16:09

você tem que se preocupar com o prazo de

play16:11

forma Saudável Saber que aquilo lá é

play16:14

importante e a gente precisa da

play16:15

prioridade mas o tempo é limitado a

play16:18

gente não consegue fazer milagre Então

play16:20

se a gente não conseguiu desenvolver

play16:21

aquilo lá em 10 horas do seu dia com

play16:24

certeza você não vai conseguir em mais

play16:26

tempo do que isso e o que você conseguir

play16:28

Além disso vai ser pouca coisa que vai

play16:31

realmente fazer diferença então é melhor

play16:33

ter um dia proveitoso um dia bem focado

play16:36

do que querer sair Fazendo tudo com a

play16:39

cabeça cansada e fazer uma jornada maior

play16:42

de trabalho e acabar não rendendo nada

play16:44

isso é send um dia desperdiçado eu acho

play16:46

que é pior uma outra grande dificuldade

play16:48

também foi a questão de saber mensurar

play16:52

prazo sabia o que leva um dia 1 hora 3

play16:56

horas e esquecer de com um prazo com uma

play16:59

ressalva uma gordurinha Então sempre que

play17:02

eu mensurava que eu gastava sei lá 3

play17:04

horas uma coisa eu colocava pelo menos

play17:06

uma hora a mais porque a chance de

play17:08

acontecer alguma coisa ali no meio do

play17:10

caminho é grande a gente sempre vai

play17:12

encontrar uma dificuldade uma alb que

play17:15

quebrou a versão algum problema de

play17:17

compatibilidade ou um Breaking change de

play17:20

versão novidades podem surgir a qualquer

play17:22

momento e é sempre quando a gente tá

play17:24

menos esperando um outro ponto também

play17:26

que hoje eu faria bem melhor queria

play17:29

saber trabalhar em equipe de forma que

play17:31

fosse mais aproveitosa cada tarefa para

play17:34

cada desenvolvedor do time aproveitando

play17:36

melhor suas qualidades e quem tem mais

play17:39

proatividade em alguma determinada

play17:42

linguagem por exemplo nem tudo Você

play17:44

precisa fazer sozinho você pode também

play17:46

pedir ajuda e isso é bom que você

play17:49

reforça sua confiança com outras pessoas

play17:51

do time e também Outro ponto que é

play17:53

também muito importante sempre se

play17:55

preocupar com performance nos primeiros

play17:58

projetos e Mesmo não tendo tanta noção

play18:01

sobre escabilidade

play18:03

sobre como dar um um gás naquela

play18:07

aplicação Eu Sempre busquei alguma

play18:10

alternativa para melhorar a performance

play18:13

através por exemplo de Cash que é um

play18:14

recurso muito simples de ser

play18:16

implementado que traz uma diferença

play18:18

muito grande e também não ter medo de

play18:20

errar sempre buscar novos desafios Eu

play18:23

lembro que eu tive um desafio de

play18:25

trabalhar com um chat e foi muito legal

play18:28

legal porque nunca tinha utilizado o

play18:30

websocket e fazer aquele chat funcionar

play18:34

com as modelagens do banco de dados para

play18:37

armazenar aquelas mensagens fazer

play18:40

funcionalidades como envio de imagens

play18:42

envio de arquivo de vídeo envio de áudio

play18:47

saber se a pessoa tá online ou não e

play18:49

aparecer a mensagem em tempo real aquilo

play18:51

lá foi muito legal Foi um um um

play18:53

aprendizado assim genial e esse foi um

play18:56

dos projetos que eu trabalhei ao ao lado

play18:58

de uma pessoa que já era Sênior então eu

play19:01

tentava seguir sozinho e quando eu ia

play19:03

validar com ele falava que estava

play19:06

correto eu ficava muito animado eu

play19:07

ficava muito empolgado mesmo cada vez

play19:09

mais eu buscava transparecer essa

play19:13

confiança que eu ia ganhando EA

play19:15

assumindo maiores desafios e isso foi

play19:18

deixando cada vez mais confiante com o

play19:21

meu trabalho teve época que eu cheguei a

play19:24

estudar bastante até deixei de passar

play19:27

tempo é com h e tal mas eu acho que

play19:30

valeu a pena esse tempo porque ele me

play19:32

trouxe bastante insumo para conseguir

play19:36

trabalhar no que eu queria claro que é

play19:38

difícil você encontrar um equilíbrio

play19:40

perfeito entre trabalho e vida pessoal

play19:43

mas tenta sempre buscar de forma que um

play19:46

ajude o outro às vezes em um momento

play19:48

você vai priorizar um pouco mais o

play19:49

trabalho mas a recompensa que você vai

play19:51

ter com uma remuneração maior pode te

play19:53

dar um conforto maior com a sua vida

play19:55

pessoal o importante é sempre buscar at

play19:58

um objetivo Ah eu em quanto tempo quero

play20:01

chegar a ser Senior então quando eu era

play20:04

Júnior a meu primeiro grande desafio é

play20:07

quando que eu vou ser pleno e meu grande

play20:09

sonho era chegar a nível de Senior ser

play20:11

considerado um desvendador Senior para

play20:13

mim era uma meta que eu queero um sonho

play20:15

para mim e quando eu cheguei nisso nesse

play20:18

nível eu fiquei muito feliz foi uma

play20:20

felicidade imensa e saber que o meu

play20:23

trabalho trouxe isso é muito

play20:25

gratificante a gente tem a sensação de

play20:27

tá agando o valor que seu trabalho não é

play20:30

inútil tem um significado vai ter um

play20:33

impacto ali na frente esse

play20:34

desenvolvimento vai mudar a vida de

play20:36

alguém para melhor então recapitulando

play20:38

graças a minha curiosidade com os mods

play20:40

de Counter Strike criei a comunidade de

play20:43

desenvolvedores que eu nem sabia que

play20:45

eram desenvolvedores desses scripts que

play20:47

faziam esses plugins do MX mod x que era

play20:51

o Framework responsável juntamente do

play20:53

metam MOD se eu não me engano que fazia

play20:55

essa capacidade de editar armas plug pro

play20:58

jogo então assim seja curioso vai lá

play21:01

busca entender o que tá fazendo não saia

play21:03

só desenvolvendo sem saber o que tá

play21:04

rolando por trás é importante você ter

play21:07

uma noção de como aquilo foi

play21:09

desenvolvido Para que serve pelo menos a

play21:11

base é muito legal isso quando você pega

play21:13

um projeto que já está pronto já tem

play21:15

toda aquela arquitetura desenvolvida com

play21:17

aqueles midor desenvolvidos e plugins

play21:20

etc você fica com um projeto muito

play21:23

automático Então pelo menos entenda para

play21:27

que serve mids Para que serve esse

play21:29

determinado midor Entenda como funciona

play21:31

as coisas isso vai mudar a sua visão de

play21:33

tudo no começo é difícil mesmo você vai

play21:36

ter muita pressão dificuldade você vai

play21:38

se sabotar mas faz parte do processo

play21:41

Aproveite ele porque é um momento único

play21:43

e não desanime e é isso Pessoal espero

play21:45

que tenha gostado até a próxima

Rate This

5.0 / 5 (0 votes)

Related Tags
Game ModsCareer StartProgrammingCommunity BuildingSelf-TaughtCoding PassionSoftware DevelopmentTech EducationWeb DevelopmentGaming to Coding