SlideShare uma empresa Scribd logo
O perfil do Desenvolvedor Front End das atualidades mais atuais
Vai ter JavaScript sim!
E se reclamar vai ter até React!
- Não, pera...
William de Oliveira
Desenvolvedor Front End no Viva Decora (VivaReal)
Não gosto de MacBook.
http://woliveiras.com.br/about/
Motivação
“Outra coisa que tem dado o que falar são as vagas que
cobram muito mais JS do que qualquer outra tecnologia de
Front, o que acham de sentarmos para conversar sobre isso?”
William Oliveira - http://abc.femug.com/t/o-perfil-do-desenvolvedor-front-end-atual/
Meu objetivo
Tentar te convencer que JS é coisa do Front Ender sim e você precisa aprender
urgente (se ainda não sabe).
Desmistificar o que um Back Ender faz.
Te convencer que você não é o fodelão, pica das galáxia (erro proposital) por ter
muito conhecimento em JavaScript.
William Oliveira - http://abc.femug.com/t/o-perfil-do-desenvolvedor-front-end-atual/
Por que diabos as empresas querem um
cara que manje tanto de JavaScript?
Vamos voltar um pouco no
passado - rapidinho, prometo
Como funcionava uma página web
antigamente?
E se o usuário clicasse em um link ou desejasse
consumir mais conteúdo?
O que tinhamos com isso?
Páginas lentas (culpa do Banco de Dados
ou do Back End)
http://imasters.com.br/banco-de-dados/databasecast-65-front-end-back-end-e-dba
Maior consumo de banda/trafego
https://d36cz9buwru1tt.cloudfront.net/AWS_Pricing_Overview.pdf
Esse tipo de coisa
Mas ai veio um tal de Ajax sarvá nois! ;P
https://pt.wikipedia.org/wiki/AJAX_(programa%C3%A7%C3%A3o)
Muita magia cara…
Curiosidade para os amantes (SQN) da Microsoft
Em 1998, o primeiro componente XMLHTTP foi implementado no Outlook
Web
O Google só veio utilizar Ajax no Gmail em 2004.
https://en.wikipedia.org/wiki/Ajax_(programming)#History
=
JavaScript === Menos consumo de banda quando
um usuário acessa pelo 3G
JavaScript === Páginas que não precisam ser
recarregadas a toda iteração
Mas onde entra o Front End Developer
nessa história?
O Front é o cara que cuida do desenvolvimento
Client Side de um projeto
Hoje em dia temos mais JavaScript do que HTML! - E se o seu CSS
for bem feito, vai ter mais JS do que CSS também. Porém o JS estará cuidando dos dados e não dos efeitos,
afinal CSS animations já está ai né fio(a)? Pelamor.
https://css-tricks.com/almanac/properties/a/animation/
Hoje em dia não escrevemos mais HTML como
antigamente
http://jade-lang.com/
https://docs.angularjs.org/guide/templates
https://facebook.github.io/react/docs/reusable-components.html
Mas isso ai (JS) é coisa de programador!
Tá, pera… Vamos voltar mais uma vez...
Mercado antigo
Web Designers - Caras que criavam as telas e não codavam
tanto. Em sua maioria formados em Design.
Web Masters - Caras que codavam mais do que desenhavam
tela. Em sua maioria caras formados em Ciências da
Computação.
Front End developer - O cara que manja tudo sobre
desenvolvimento no Client Side. Antigo Web Designer/Master,
só que agora com foco no desenvolvimento para o navegador.
Mercado atual
http://pt.slideshare.net/marloscarmo/a-revoluo-do-frontend
Se hoje em dia até o CSS é gerado com lógica de
programação
$class-slug: for !default
@for $i from 1 through 4
.#{$class-slug}-#{$i}
width: 60px + $i
http://thesassway.com/intermediate/if-for-each-while
O Front Ender não é programador?
OK, mas JAVASCRIPT é coisa de Back Ender!
Back End vs Front End
O Back End manda os dados pro banco de dados, o Front End manda os dados
para o Back End. Ambos são desenvolvedores de Software, porém um mexe
com tela preta e outro com a tela que o usuário vê.
https://pt.wikipedia.org/wiki/Interface_de_programa%C3%A7%C3%A3o_de_aplica%C3%A7%C3%B5es
Qual dos dois é mais complicado?
O perfil do Desenvolvedor Front End atual, das
atualidades mais atuais.
O que é
Pessoa formada ou com conhecimento equivalente em Tecnologia
Conhecimento em programação
Ninja em JavaScript. Porém, os bons de verdade sabem o valor de um bom código HTML e uma
boa estruturação CSS
Controle de versão (Git <3)
Arquitetura de aplicações Client Side (SPA’s, HTTP, Navegadores, Mobile,
Padrões, Build tools, etc)
Mas e o cara que conhece menos sobre
JavaScript?
Esse é menos Front Ender?
NÃO!!!11ONZEONZE
Ele tem a mesma importância, porém as vagas para esse
perfil estão a cada dia mais escassas.
E, apesar de eu não concordar com o perfil do cara que só
sabe lógica de programação no Front End, não podemos
reclamar da falta de vagas para quem não conhece o
mínimo de JS.
Algumas pessoas já vinham avisando sobre essa mudança
no mercado a anos...
DAVIDSON FELLIPE - 2012
http://fellipe.com/blog/mercado-de-front-end-o-que-mudou-de-dois-anos-para-ca/
LEANDRO ORIENTE - 2013
https://leandrooriente.com/como-me-tornar-um-desenvolvedor-front-end/
DIEGO EIS - 2013
http://tableless.com.br/tornar-dev-front-end/
WILLIAM OLIVEIRA - 2014
http://woliveiras.com.br/posts/guia-de-estudos-desenvolvedor-front-end-iniciante/
WILLIAN JUSTEN - 2015
http://willianjusten.com.br/como-se-tornar-um-desenvolvedor-front-end/
Desde 2004 o mercado procura por JavaScript!
http://www.google.com.br/trends/explore#q=%2Fm%2F02p97&cmpt=q&tz=Etc%2FGMT%2B3
Depois veio a busca pelo Front End Developer
http://www.google.com.br/trends/explore#q=frontend%20developer&cmpt=q&tz=Etc%2FGMT%2B3
Em 2010 já tinha gente escrevendo que o mercado estava
mudando “a dois anos”. Estamos em 2016 e ainda temos
dúvidas de que o Front End precisa saber o mínimo de
JavaScript?
<opinião pessoal>
</opinião pessoal>
Como se preparar para uma vaga de trampo que pede
muito sobre JavaScript?
Primeiro você precisa aprender a programar, se não souber…
Somente conhecer uma linguagem (JS) não vai ajudar muito.
Lógica de programação é a chave para qualquer linguagem.
A linguagem é só uma ferramenta.
Você precisa saber HTML, CSS, Pré Processadores,
Acessibilidade, Ferramentas de Build, etc. Estou
falando somente de JS nessa apresentação, porém,
essas outras, são tecnologias mais que essenciais para
o Front Ender.
Não seja desses Fronts medíocres que pouco ligam
para o HTML + CSS.
Você é o cara (ou a moça) que vai cuidar do que o
usuário vai consumir. Procure não ser um(a) escroto(a).
Lógica de Programação
Opções pagas
● https://www.caelum.com.br/curso-logica-de-programacao/
● https://www.casadocodigo.com.br/products/livro-programacao
Opções gratuitas
● http://www.cursoemvideo.com/course/curso-de-algoritmos/
● http://www.softblue.com.
br/site/curso/id/6/CURSO+LOGICA+DE+PROGRAMACAO+BASICO+ON
+LINE+LO06
JavaScript <3
Opções pagas
● https://www.caelum.com.br/cursos-web-front-end/
● http://blog.da2k.com.br/curso-javascript-ninja/ => Foda
Opções gratuitas
● https://www.codecademy.com/
● https://www.codeschool.com/
JavaScript é uma boa linguagem para aprender a
programar?
http://wtfjs.com/
Outros conhecimentos necessários para o
Front P1K4 das galaxia
● Performance JavaScript: https://developers.google.
com/speed/articles/optimizing-javascript
● Organização de código: http://blog.caelum.com.br/organize-seu-codigo-
javascript-de-maneira-facil/
● Padrões de projeto: http://blog.da2k.com.br/2014/03/18/meu-workflow-
javascript-com-module-pattern/
● E um pouco mais: http://jstherightway.org/pt-br/ <= Feito pelo William
Oliveira, mas não o mesmo dessa talk. ;P
Dicas de livros
http://www.vitorbritto.com.br/blog/the-book-is-on-the-table/
Programar preciso é. JavaScript
preciso é. Cobrar isso o mercado de
trabalho vai, mas não se engane com
isso aqui...
Continua...
JS
Python é mais legal…

Mais conteúdo relacionado

Mais procurados

JavaCE Conference 2012: ExtJS 4 + VRaptor
JavaCE Conference 2012: ExtJS 4 + VRaptorJavaCE Conference 2012: ExtJS 4 + VRaptor
JavaCE Conference 2012: ExtJS 4 + VRaptor
Loiane Groner
 
9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem
Fernando Henriques
 
DOM, CSSOM e RenderThree - Introdução ao Browser Render Path
DOM, CSSOM e RenderThree - Introdução ao Browser Render PathDOM, CSSOM e RenderThree - Introdução ao Browser Render Path
DOM, CSSOM e RenderThree - Introdução ao Browser Render Path
Diego Eis
 
Como encarar o desenvolvimento front-end
Como encarar o desenvolvimento front-endComo encarar o desenvolvimento front-end
Como encarar o desenvolvimento front-end
Jean Carlo Emer
 
MSP Tech Days Online 2018 - SPA além do JavaScript com Blazor
MSP Tech Days Online 2018 - SPA além do JavaScript com BlazorMSP Tech Days Online 2018 - SPA além do JavaScript com Blazor
MSP Tech Days Online 2018 - SPA além do JavaScript com Blazor
Gustavo Bellini Bigardi
 
SPA com CSharp
SPA com CSharpSPA com CSharp
SPA com CSharp
Gilmar Oliveira
 
Introdução ao Asp.Net Mvc
Introdução ao Asp.Net MvcIntrodução ao Asp.Net Mvc
Introdução ao Asp.Net Mvc
Giovanni Bassi
 
Guia prático de desenvolvimento front-end para django devs
Guia prático de desenvolvimento front-end para django devsGuia prático de desenvolvimento front-end para django devs
Guia prático de desenvolvimento front-end para django devs
Davidson Fellipe
 
Desenvolvimento Mobile Web usando PHP
Desenvolvimento Mobile Web usando PHPDesenvolvimento Mobile Web usando PHP
Desenvolvimento Mobile Web usando PHP
Bruno Fernandes "PorKaria"
 
Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
Gustavo Lopes
 
SPA's com Blazor e .NET Core
SPA's com Blazor e .NET CoreSPA's com Blazor e .NET Core
SPA's com Blazor e .NET Core
Gustavo Bellini Bigardi
 
PHP e o Desenvolvimento Mobile Web - PHPhederal
PHP e o Desenvolvimento Mobile Web - PHPhederalPHP e o Desenvolvimento Mobile Web - PHPhederal
PHP e o Desenvolvimento Mobile Web - PHPhederal
Bruno Fernandes "PorKaria"
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
iMasters
 
Groovy Power
Groovy PowerGroovy Power
Groovy Power
Diego Pacheco
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular js
Cloves Moreira Junior
 
JavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma JavaJavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma Java
jesuinoPower
 
Ria e Java FX
Ria e Java FXRia e Java FX
Ria e Java FX
Marcelo Quinta
 
ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?
Douglas Aguiar
 

Mais procurados (20)

JavaCE Conference 2012: ExtJS 4 + VRaptor
JavaCE Conference 2012: ExtJS 4 + VRaptorJavaCE Conference 2012: ExtJS 4 + VRaptor
JavaCE Conference 2012: ExtJS 4 + VRaptor
 
9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem9 erros que desenvolvedores Node.js cometem
9 erros que desenvolvedores Node.js cometem
 
DOM, CSSOM e RenderThree - Introdução ao Browser Render Path
DOM, CSSOM e RenderThree - Introdução ao Browser Render PathDOM, CSSOM e RenderThree - Introdução ao Browser Render Path
DOM, CSSOM e RenderThree - Introdução ao Browser Render Path
 
Como encarar o desenvolvimento front-end
Como encarar o desenvolvimento front-endComo encarar o desenvolvimento front-end
Como encarar o desenvolvimento front-end
 
MSP Tech Days Online 2018 - SPA além do JavaScript com Blazor
MSP Tech Days Online 2018 - SPA além do JavaScript com BlazorMSP Tech Days Online 2018 - SPA além do JavaScript com Blazor
MSP Tech Days Online 2018 - SPA além do JavaScript com Blazor
 
SPA com CSharp
SPA com CSharpSPA com CSharp
SPA com CSharp
 
Introdução ao Asp.Net Mvc
Introdução ao Asp.Net MvcIntrodução ao Asp.Net Mvc
Introdução ao Asp.Net Mvc
 
It's Javascript Time
It's Javascript TimeIt's Javascript Time
It's Javascript Time
 
Guia prático de desenvolvimento front-end para django devs
Guia prático de desenvolvimento front-end para django devsGuia prático de desenvolvimento front-end para django devs
Guia prático de desenvolvimento front-end para django devs
 
Desenvolvimento Mobile Web usando PHP
Desenvolvimento Mobile Web usando PHPDesenvolvimento Mobile Web usando PHP
Desenvolvimento Mobile Web usando PHP
 
Curso de ReactJS
Curso de ReactJSCurso de ReactJS
Curso de ReactJS
 
SPA's com Blazor e .NET Core
SPA's com Blazor e .NET CoreSPA's com Blazor e .NET Core
SPA's com Blazor e .NET Core
 
PHP e o Desenvolvimento Mobile Web - PHPhederal
PHP e o Desenvolvimento Mobile Web - PHPhederalPHP e o Desenvolvimento Mobile Web - PHPhederal
PHP e o Desenvolvimento Mobile Web - PHPhederal
 
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
[JS EXPERIENCE 2018] Do jQuery aos microfrontends: os desafios de manter uma ...
 
Groovy Power
Groovy PowerGroovy Power
Groovy Power
 
Introdução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular jsIntrodução ao desenvolvimento front end usando bootstrap e angular js
Introdução ao desenvolvimento front end usando bootstrap e angular js
 
JavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma JavaJavaFX: A nova biblioteca gráfica da plataforma Java
JavaFX: A nova biblioteca gráfica da plataforma Java
 
Ria e Java FX
Ria e Java FXRia e Java FX
Ria e Java FX
 
Testes Automatizados
Testes AutomatizadosTestes Automatizados
Testes Automatizados
 
ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?ASP .NET MVC - Você esta pronto para a pílula vermelha?
ASP .NET MVC - Você esta pronto para a pílula vermelha?
 

Semelhante a JavaScript e o perfil do desenvolvedor front end das atualidades mais atuais

Hangout Tempo Real Eventos - Javascript - Os Primeiros Passos
Hangout  Tempo Real Eventos - Javascript - Os Primeiros PassosHangout  Tempo Real Eventos - Javascript - Os Primeiros Passos
Hangout Tempo Real Eventos - Javascript - Os Primeiros Passos
Jackson F. de A. Mafra
 
O Papel do desenvolvedor Front End
O Papel do desenvolvedor Front EndO Papel do desenvolvedor Front End
O Papel do desenvolvedor Front End
Rael Max
 
Front-End do Século XXI.I
Front-End do Século XXI.IFront-End do Século XXI.I
Front-End do Século XXI.I
Luiz Oliveira
 
Minicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Minicurso Ajax - 5. Semana de Informática PUC Minas São GabrielMinicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Minicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Marcelo Linhares
 
Take It To The Next Level
Take It To The Next LevelTake It To The Next Level
Take It To The Next Level
Gabriel Laet
 
Aplicacoes responsivas
Aplicacoes responsivasAplicacoes responsivas
Aplicacoes responsivas
Jackson F. de A. Mafra
 
Desenvolvimento Web com Java Script Full Stack
Desenvolvimento Web com Java Script Full StackDesenvolvimento Web com Java Script Full Stack
Desenvolvimento Web com Java Script Full Stack
Erick Petrucelli
 
O que você precisa saber para se tornar um dev front-end
O que você precisa saber para se tornar um dev front-endO que você precisa saber para se tornar um dev front-end
O que você precisa saber para se tornar um dev front-end
Diego Eis
 
Desenvolvimento Mobile Web e o PHP
Desenvolvimento Mobile Web e o PHPDesenvolvimento Mobile Web e o PHP
Desenvolvimento Mobile Web e o PHP
Bruno Fernandes "PorKaria"
 
O dia a dia de uma Desenvolvedora Front-end
O dia a dia de uma Desenvolvedora Front-endO dia a dia de uma Desenvolvedora Front-end
O dia a dia de uma Desenvolvedora Front-end
Tatiane Aguirres Nogueira
 
Os cuidados e os limites do Responsive Web Design
Os cuidados e os limites do Responsive Web DesignOs cuidados e os limites do Responsive Web Design
Os cuidados e os limites do Responsive Web Design
Diego Eis
 
Javascript levado a serio
Javascript levado a serioJavascript levado a serio
Javascript levado a serio
Jaydson Gomes
 
Java: Por onde começar nos dias de hoje?
Java: Por onde começar nos dias de hoje?Java: Por onde começar nos dias de hoje?
Java: Por onde começar nos dias de hoje?
Thiago Mazarão Maltempi
 
Java Script.pdf
Java Script.pdfJava Script.pdf
Java Script.pdf
LucasSantos516772
 
Node não é filme de Terror
Node não é filme de TerrorNode não é filme de Terror
Node não é filme de Terror
Paulo Pires
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sitesthiagolima
 
A revolução do client side
A revolução do client sideA revolução do client side
A revolução do client side
Cristiano Gonçalves
 
Aspectos profissionais 3pontos
Aspectos profissionais 3pontosAspectos profissionais 3pontos
Aspectos profissionais 3pontos
Miguel Alho
 
Mod1 Final
Mod1 FinalMod1 Final
Kyrios: Infra-estrutura livre para desenvolvimento de software
Kyrios: Infra-estrutura livre para desenvolvimento de softwareKyrios: Infra-estrutura livre para desenvolvimento de software
Kyrios: Infra-estrutura livre para desenvolvimento de softwareFábio Nogueira de Lucena
 

Semelhante a JavaScript e o perfil do desenvolvedor front end das atualidades mais atuais (20)

Hangout Tempo Real Eventos - Javascript - Os Primeiros Passos
Hangout  Tempo Real Eventos - Javascript - Os Primeiros PassosHangout  Tempo Real Eventos - Javascript - Os Primeiros Passos
Hangout Tempo Real Eventos - Javascript - Os Primeiros Passos
 
O Papel do desenvolvedor Front End
O Papel do desenvolvedor Front EndO Papel do desenvolvedor Front End
O Papel do desenvolvedor Front End
 
Front-End do Século XXI.I
Front-End do Século XXI.IFront-End do Século XXI.I
Front-End do Século XXI.I
 
Minicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Minicurso Ajax - 5. Semana de Informática PUC Minas São GabrielMinicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
Minicurso Ajax - 5. Semana de Informática PUC Minas São Gabriel
 
Take It To The Next Level
Take It To The Next LevelTake It To The Next Level
Take It To The Next Level
 
Aplicacoes responsivas
Aplicacoes responsivasAplicacoes responsivas
Aplicacoes responsivas
 
Desenvolvimento Web com Java Script Full Stack
Desenvolvimento Web com Java Script Full StackDesenvolvimento Web com Java Script Full Stack
Desenvolvimento Web com Java Script Full Stack
 
O que você precisa saber para se tornar um dev front-end
O que você precisa saber para se tornar um dev front-endO que você precisa saber para se tornar um dev front-end
O que você precisa saber para se tornar um dev front-end
 
Desenvolvimento Mobile Web e o PHP
Desenvolvimento Mobile Web e o PHPDesenvolvimento Mobile Web e o PHP
Desenvolvimento Mobile Web e o PHP
 
O dia a dia de uma Desenvolvedora Front-end
O dia a dia de uma Desenvolvedora Front-endO dia a dia de uma Desenvolvedora Front-end
O dia a dia de uma Desenvolvedora Front-end
 
Os cuidados e os limites do Responsive Web Design
Os cuidados e os limites do Responsive Web DesignOs cuidados e os limites do Responsive Web Design
Os cuidados e os limites do Responsive Web Design
 
Javascript levado a serio
Javascript levado a serioJavascript levado a serio
Javascript levado a serio
 
Java: Por onde começar nos dias de hoje?
Java: Por onde começar nos dias de hoje?Java: Por onde começar nos dias de hoje?
Java: Por onde começar nos dias de hoje?
 
Java Script.pdf
Java Script.pdfJava Script.pdf
Java Script.pdf
 
Node não é filme de Terror
Node não é filme de TerrorNode não é filme de Terror
Node não é filme de Terror
 
Apresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo SitesApresentação Minas - Desenvolvendo Sites
Apresentação Minas - Desenvolvendo Sites
 
A revolução do client side
A revolução do client sideA revolução do client side
A revolução do client side
 
Aspectos profissionais 3pontos
Aspectos profissionais 3pontosAspectos profissionais 3pontos
Aspectos profissionais 3pontos
 
Mod1 Final
Mod1 FinalMod1 Final
Mod1 Final
 
Kyrios: Infra-estrutura livre para desenvolvimento de software
Kyrios: Infra-estrutura livre para desenvolvimento de softwareKyrios: Infra-estrutura livre para desenvolvimento de software
Kyrios: Infra-estrutura livre para desenvolvimento de software
 

JavaScript e o perfil do desenvolvedor front end das atualidades mais atuais

  • 1. O perfil do Desenvolvedor Front End das atualidades mais atuais Vai ter JavaScript sim! E se reclamar vai ter até React! - Não, pera...
  • 2. William de Oliveira Desenvolvedor Front End no Viva Decora (VivaReal) Não gosto de MacBook. http://woliveiras.com.br/about/
  • 3. Motivação “Outra coisa que tem dado o que falar são as vagas que cobram muito mais JS do que qualquer outra tecnologia de Front, o que acham de sentarmos para conversar sobre isso?” William Oliveira - http://abc.femug.com/t/o-perfil-do-desenvolvedor-front-end-atual/
  • 4. Meu objetivo Tentar te convencer que JS é coisa do Front Ender sim e você precisa aprender urgente (se ainda não sabe). Desmistificar o que um Back Ender faz. Te convencer que você não é o fodelão, pica das galáxia (erro proposital) por ter muito conhecimento em JavaScript. William Oliveira - http://abc.femug.com/t/o-perfil-do-desenvolvedor-front-end-atual/
  • 5. Por que diabos as empresas querem um cara que manje tanto de JavaScript?
  • 6.
  • 7. Vamos voltar um pouco no passado - rapidinho, prometo
  • 8. Como funcionava uma página web antigamente?
  • 9. E se o usuário clicasse em um link ou desejasse consumir mais conteúdo?
  • 10. O que tinhamos com isso?
  • 11. Páginas lentas (culpa do Banco de Dados ou do Back End) http://imasters.com.br/banco-de-dados/databasecast-65-front-end-back-end-e-dba
  • 12. Maior consumo de banda/trafego https://d36cz9buwru1tt.cloudfront.net/AWS_Pricing_Overview.pdf
  • 13. Esse tipo de coisa
  • 14. Mas ai veio um tal de Ajax sarvá nois! ;P https://pt.wikipedia.org/wiki/AJAX_(programa%C3%A7%C3%A3o)
  • 16. Curiosidade para os amantes (SQN) da Microsoft Em 1998, o primeiro componente XMLHTTP foi implementado no Outlook Web O Google só veio utilizar Ajax no Gmail em 2004. https://en.wikipedia.org/wiki/Ajax_(programming)#History
  • 17. =
  • 18. JavaScript === Menos consumo de banda quando um usuário acessa pelo 3G
  • 19. JavaScript === Páginas que não precisam ser recarregadas a toda iteração
  • 20. Mas onde entra o Front End Developer nessa história?
  • 21. O Front é o cara que cuida do desenvolvimento Client Side de um projeto
  • 22. Hoje em dia temos mais JavaScript do que HTML! - E se o seu CSS for bem feito, vai ter mais JS do que CSS também. Porém o JS estará cuidando dos dados e não dos efeitos, afinal CSS animations já está ai né fio(a)? Pelamor. https://css-tricks.com/almanac/properties/a/animation/
  • 23. Hoje em dia não escrevemos mais HTML como antigamente http://jade-lang.com/ https://docs.angularjs.org/guide/templates https://facebook.github.io/react/docs/reusable-components.html
  • 24.
  • 25. Mas isso ai (JS) é coisa de programador!
  • 26. Tá, pera… Vamos voltar mais uma vez...
  • 27. Mercado antigo Web Designers - Caras que criavam as telas e não codavam tanto. Em sua maioria formados em Design. Web Masters - Caras que codavam mais do que desenhavam tela. Em sua maioria caras formados em Ciências da Computação.
  • 28. Front End developer - O cara que manja tudo sobre desenvolvimento no Client Side. Antigo Web Designer/Master, só que agora com foco no desenvolvimento para o navegador. Mercado atual http://pt.slideshare.net/marloscarmo/a-revoluo-do-frontend
  • 29. Se hoje em dia até o CSS é gerado com lógica de programação $class-slug: for !default @for $i from 1 through 4 .#{$class-slug}-#{$i} width: 60px + $i http://thesassway.com/intermediate/if-for-each-while
  • 30. O Front Ender não é programador?
  • 31. OK, mas JAVASCRIPT é coisa de Back Ender!
  • 32. Back End vs Front End
  • 33. O Back End manda os dados pro banco de dados, o Front End manda os dados para o Back End. Ambos são desenvolvedores de Software, porém um mexe com tela preta e outro com a tela que o usuário vê. https://pt.wikipedia.org/wiki/Interface_de_programa%C3%A7%C3%A3o_de_aplica%C3%A7%C3%B5es
  • 34. Qual dos dois é mais complicado?
  • 35. O perfil do Desenvolvedor Front End atual, das atualidades mais atuais.
  • 36. O que é Pessoa formada ou com conhecimento equivalente em Tecnologia Conhecimento em programação Ninja em JavaScript. Porém, os bons de verdade sabem o valor de um bom código HTML e uma boa estruturação CSS Controle de versão (Git <3) Arquitetura de aplicações Client Side (SPA’s, HTTP, Navegadores, Mobile, Padrões, Build tools, etc)
  • 37. Mas e o cara que conhece menos sobre JavaScript? Esse é menos Front Ender?
  • 39. Ele tem a mesma importância, porém as vagas para esse perfil estão a cada dia mais escassas.
  • 40. E, apesar de eu não concordar com o perfil do cara que só sabe lógica de programação no Front End, não podemos reclamar da falta de vagas para quem não conhece o mínimo de JS.
  • 41. Algumas pessoas já vinham avisando sobre essa mudança no mercado a anos...
  • 42. DAVIDSON FELLIPE - 2012 http://fellipe.com/blog/mercado-de-front-end-o-que-mudou-de-dois-anos-para-ca/ LEANDRO ORIENTE - 2013 https://leandrooriente.com/como-me-tornar-um-desenvolvedor-front-end/ DIEGO EIS - 2013 http://tableless.com.br/tornar-dev-front-end/ WILLIAM OLIVEIRA - 2014 http://woliveiras.com.br/posts/guia-de-estudos-desenvolvedor-front-end-iniciante/ WILLIAN JUSTEN - 2015 http://willianjusten.com.br/como-se-tornar-um-desenvolvedor-front-end/
  • 43. Desde 2004 o mercado procura por JavaScript! http://www.google.com.br/trends/explore#q=%2Fm%2F02p97&cmpt=q&tz=Etc%2FGMT%2B3
  • 44. Depois veio a busca pelo Front End Developer http://www.google.com.br/trends/explore#q=frontend%20developer&cmpt=q&tz=Etc%2FGMT%2B3
  • 45. Em 2010 já tinha gente escrevendo que o mercado estava mudando “a dois anos”. Estamos em 2016 e ainda temos dúvidas de que o Front End precisa saber o mínimo de JavaScript? <opinião pessoal> </opinião pessoal>
  • 46. Como se preparar para uma vaga de trampo que pede muito sobre JavaScript?
  • 47. Primeiro você precisa aprender a programar, se não souber… Somente conhecer uma linguagem (JS) não vai ajudar muito. Lógica de programação é a chave para qualquer linguagem. A linguagem é só uma ferramenta.
  • 48. Você precisa saber HTML, CSS, Pré Processadores, Acessibilidade, Ferramentas de Build, etc. Estou falando somente de JS nessa apresentação, porém, essas outras, são tecnologias mais que essenciais para o Front Ender.
  • 49. Não seja desses Fronts medíocres que pouco ligam para o HTML + CSS. Você é o cara (ou a moça) que vai cuidar do que o usuário vai consumir. Procure não ser um(a) escroto(a).
  • 50. Lógica de Programação Opções pagas ● https://www.caelum.com.br/curso-logica-de-programacao/ ● https://www.casadocodigo.com.br/products/livro-programacao Opções gratuitas ● http://www.cursoemvideo.com/course/curso-de-algoritmos/ ● http://www.softblue.com. br/site/curso/id/6/CURSO+LOGICA+DE+PROGRAMACAO+BASICO+ON +LINE+LO06
  • 51. JavaScript <3 Opções pagas ● https://www.caelum.com.br/cursos-web-front-end/ ● http://blog.da2k.com.br/curso-javascript-ninja/ => Foda Opções gratuitas ● https://www.codecademy.com/ ● https://www.codeschool.com/
  • 52. JavaScript é uma boa linguagem para aprender a programar? http://wtfjs.com/
  • 53. Outros conhecimentos necessários para o Front P1K4 das galaxia ● Performance JavaScript: https://developers.google. com/speed/articles/optimizing-javascript ● Organização de código: http://blog.caelum.com.br/organize-seu-codigo- javascript-de-maneira-facil/ ● Padrões de projeto: http://blog.da2k.com.br/2014/03/18/meu-workflow- javascript-com-module-pattern/ ● E um pouco mais: http://jstherightway.org/pt-br/ <= Feito pelo William Oliveira, mas não o mesmo dessa talk. ;P
  • 55. Programar preciso é. JavaScript preciso é. Cobrar isso o mercado de trabalho vai, mas não se engane com isso aqui...
  • 57.
  • 58.
  • 59.
  • 60. JS Python é mais legal…