Ffz123456 (discussão | contribs)
Etiqueta: visualeditor
 
(13 revisões intermediárias por 3 usuários não estão sendo mostradas)
Linha 6: Linha 6:
Telefone: (34) 9277-4040
Telefone: (34) 9277-4040
= Evolução na profissão =
= Evolução na profissão =
O profissional Jean conheceu programação cerca de um mês antes de entrar para a Faculdade de Sistemas de Informação na UFU. A primeira linguagem de programação que aprendeu foi Java. Ele entrou na Empresa Júnior Techmob logo em seu primeiro semestre e ficou durante 4 anos. Foi presidente, gestor de projetos, analista de requisitos, supervisor. Adquiriu conhecimento em programação Web (php) , banco de dados, gestão de projetos, e desenvolveu diversos sistemas ao longo de sua graduação. Atualmente trabalha na empresa TQI - Empresa de software em Uberlândia e participa de projetos de Front-End e Back-End, utilizando a linguagem java como principal tecnologia.
* O profissional Jean conheceu programação cerca de um mês antes de entrar para a Faculdade de Sistemas de Informação na UFU. A primeira linguagem de programação que aprendeu foi Java. Ele entrou na Empresa Júnior Techmob logo em seu primeiro semestre e ficou durante 4 anos. Foi presidente, gestor de projetos, analista de requisitos, supervisor. Adquiriu conhecimento em programação Web (php) , banco de dados, gestão de projetos, e desenvolveu diversos sistemas ao longo de sua graduação. Atualmente trabalha na empresa TQI - Empresa de software em Uberlândia e participa de projetos de Front-End e Back-End, utilizando a linguagem java como principal tecnologia.
 
= Descrição da atividade atual =
Informar sobre a atividade real do profissional, seja técnica ou administrativa. Apontar situações que envolvem alto nível de responsabilidade e seus possíveis impactos sobre o negócio ou pessoas. Se possível, demonstrar ao vivo e a cores, alguma atividade diária.
<br>


= Requisitos mínimos para exercer a profissão =
= Requisitos mínimos para exercer a profissão =
Um Full Stack tem que estar sempre curioso, não pode ser um profissional acomodado, deve estar sempre interessado em aprender mais com os outros a sua volta. Por ser múltiplo, não pode direcionar toda a sua atenção a um determinado assunto, tem que saber a hora de parar uma determinada especialização e partir pra outra, então requer paciência e bom controle de foco. É importante certificar seu conhecimento, pois serve para reconhecer e dar mais credibilidade, além de que muitas empresas exigem no mercado de trabalho. Algumas certificações são: Java(OCA, OPL, OCE), Certificação Oracle Database, Spring Certificate. Além disso, é fundamental que o profissional conhecer técnicas que aprimoram o trabalho em equipe, sabendo lidar com gerência de projetos e utilizar ou conhecer as práticas de desenvolvimento Ágil.
* Um Full Stack tem que estar sempre curioso, não pode ser um profissional acomodado, deve estar sempre interessado em aprender mais com os outros a sua volta. Por ser múltiplo, não pode direcionar toda a sua atenção a um determinado assunto, tem que saber a hora de parar uma determinada especialização e partir pra outra, então requer paciência e bom controle de foco. É importante certificar seu conhecimento, pois serve para reconhecer e dar mais credibilidade, além de que muitas empresas exigem no mercado de trabalho. Algumas certificações são: Java(OCA, OPL, OCE), Certificação Oracle Database, Spring Certificate. Além disso, é fundamental que o profissional conhecer técnicas que aprimoram o trabalho em equipe, sabendo lidar com gerência de projetos e utilizar ou conhecer as práticas de desenvolvimento Ágil.




Linha 19: Linha 15:


= Ferramentas usadas no dia-a-dia =
= Ferramentas usadas no dia-a-dia =
A profissão exige conhecimento considerável tanto no
* A profissão exige conhecimento considerável tanto no Front-End quanto no Back-End. Desse modo, a quantidade de ferramentas é grande.
Front-End quanto no Back-End. Desse modo, a quantidade de ferramentas é grande.
* Podemos citar:  
Podemos citar: Eclipse, Netbeans, Intelli J, Sublime Text 3, Notepadd++, Atom.
** Eclipse, Netbeans, Intelli J, Sublime Text 3, Notepadd++, Atom. Frameworks Bootstrap(Front End), Spring MVC (Java).  
Frameworks Bootstrap(Front End), Spring MVC (Java). O automatizador de deploys
* O automatizador de deploys Jenkins, o qual é útil para agilizar o desenvolvimento dos projetos.  
Jenkins, o qual é útil para agilizar o desenvolvimento dos projetos. Pode-se
*Pode-se utilizar o Maven (ferramenta desenvolvida pela Apache para gerenciar as dependências e automatizar tarefas).
utilizar o Maven (ferramenta desenvolvida pela Apache para gerenciar as
dependências e automatizar tarefas).  


= Tecnologias envolvidas =
= Tecnologias envolvidas =
  O profissional deve conhecer tecnologias que envolvam o Front-End e o Back-End. Podemos citar: HTML5, CSS3(less, sass), Javascript
* O profissional deve conhecer tecnologias que envolvam o Front-End e o Back-End. Podemos citar:  
(Jquery, Node.js, Ajax, Angular.js), Java, php7, .NET, Ruby. Deve conhecer bancos de dados relacionais
** HTML5, CSS3(less, sass), Javascript (Jquery, Node.js, Ajax, Angular.js), Java, php7, .NET, Ruby.  
(SQL Server, MySQL, Oracle, PostgreSQL) e não relacionais (Redis, MongoDB). Não é necessário dominar todas as tecnologias, mas deve
* Deve conhecer bancos de dados relacionais
conhecer e saber aplicar boa parte delas, de acordo com as especificações da empresa.
** SQL Server, MySQL, Oracle, PostgreSQL
* e não relacionais:
** Redis, MongoDB.  
* Não é necessário dominar todas as tecnologias, mas deve conhecer e saber aplicar boa parte delas, de acordo com as especificações da empresa.


= Ética profissional =
= Ética profissional =
<br>
<br>


Comentar sobre alguma situação, vivenciada pelo profissional ou alguma que tenha conhecimento, envolvendo questões, positivas ou negativas, de ética profissional. Logicamente sem citar nomes de pessoas ou empresas.
* Em uma ocasião, Jean trabalhava para um banco, desenvolvendo e dando suporte a um sistema para o mesmo. Logicamente, para poder efetuar seu trabalho, o profissional tinha acesso a dados bancários, servidores restritos, entre outras informações confidenciais.A questão é que a ética nesse momento é de extrema importância para que o profissional não cometa nenhum tipo de atitude comprometedora, já que qualquer ação deste nível poderia trazer danos inimagináveis à empresa e aos clientes da mesma.
<br>


= Exemplo de resultado tangível =
= Exemplo de resultado tangível =
* Citar produtos, processos ou serviços nos quais o profissional participou e que hoje estão "rodando" em produção. Explicar rapidamenteo o objetivo de cada um.
* Eagle Flores
<br>
<br>


= Upload da apresentação =
= Upload da apresentação =
* [[Arquivo:GBC021-Apresentação Profissão Dev FullStack.pdf]]
https://mega.nz/#!YMYwSSSL!7u3HF2xcuGxFeY-e4QGk9OEku8f3OxJDqQmPBhhJysI
<br>
<br>
 
Link para baixar a apresentação
= Dúvidas =
<br>
<br>


* 01. Pode explicar melhor seu desafio de implementar um motor de busca? O que fez? Qual era o desafio?
= Dúvida =
**
<br>
<br>


* 02. Na sua visão, porque não compensa fazer certificação?
* 01. Na sua visão, porque não compensa fazer certificação?
**A certificação é algo que pode ou não compensar, quando se fala de como a pessoa irá utilizar. Tendo em vista que novas versões e atualizações são lançadas constantemente, uma certificação pode não ser útil depois de um tempo. Dessa forma, a certificação não traria tanto benefício, além de ter um custo elevado.
**A certificação é algo que pode ou não compensar, quando se fala de como a pessoa irá utilizar. Tendo em vista que novas versões e atualizações são lançadas constantemente, uma certificação pode não ser útil depois de um tempo. Dessa forma, a certificação não traria tanto benefício, além de ter um custo elevado.
<br>
<br>


* 03. Qual a diferença entre OCA x OCP x OCE?
* 02. Qual a diferença entre OCA x OCP x OCE?
**
**A OCA – Oracle Certified Asoociate – é o primeiro nível de certificação da Oracle, e isso independe da sua decisão de carreira. Seja para ser Desenvolvedor, seja para ser DBA, esta é uma certificação obrigatória caso você queira se especializar em outras certificações.Essa é uma prova destinada a profissionais de perfil Jr. a Pleno.
**A OCP – Oracle Certified Professional – é uma certificação bem mais técnica que a OCA, sendo a certificação mais requisitada no mercado e geralmente exigida em licitações de órgãos públicos, além de empresas privadas.
**A OCE – Oracle Certified Expert –  é uma nova categoria de certificação da Oracle. Com menos de 5 anos de existência, a certificação é voltada para profissionais que são especialistas em ferramentas, implementações ou linguagens como o SQL.
<br>
<br>


* 04. O que é um framework? O que é um servlet?  
* 03. O que é um framework? O que é um servlet?  
**Framework é uma biblioteca que reúne diversas funcionalidades ja testadas e implementadas, as quais servem para facilitar a vida do programador no desenvolvimento. Geralmente o framework encapsula um conjunto de códigos , devolvendo uma interface mais amigável.
**Framework é uma biblioteca que reúne diversas funcionalidades ja testadas e implementadas, as quais servem para facilitar a vida do programador no desenvolvimento. Geralmente o framework encapsula um conjunto de códigos , devolvendo uma interface mais amigável.
**Servilet pode ser definido como um componente semelhante um servidor, que gera dados HTML e XML para a camada de apresentação de uma aplicação Web. Ele processa dinamicamente requisições e respostas
**Servilet pode ser definido como um componente semelhante um servidor, que gera dados HTML e XML para a camada de apresentação de uma aplicação Web. Ele processa dinamicamente requisições e respostas
<br>
<br>


* 05. Pode esclarecer o que é Arquitetura de Software?
* 04. Pode esclarecer o que é Arquitetura de Software?
**Arquitetura de software é uma descrição abstrata de diferentes visões do sistema.É o resultado das decisões de design sobre a estrutura e o comportamento do software como um todo. A estrutura deve atender os requisitor funcionais e não funcionais do projeto.
**Arquitetura de software é uma descrição abstrata de diferentes visões do sistema.É o resultado das decisões de design sobre a estrutura e o comportamento do software como um todo. A estrutura deve atender os requisitor funcionais e não funcionais do projeto.
<br>
<br>


* 06. O que é o padrão MVC? Porque é usado?
* 05. O que é o padrão MVC? Porque é usado?
**MVC é um padrão de arquitetura de software que contem três estruturas básicas: Model, View e Controller. Ele separa essas estruturas para facilitar e padronizar o desenvolvimento, melhorando a visibilidade e reuso dos códigos através dessa separação de conceitos.
**MVC é um padrão de arquitetura de software que contem três estruturas básicas: Model, View e Controller. Ele separa essas estruturas para facilitar e padronizar o desenvolvimento, melhorando a visibilidade e reuso dos códigos através dessa separação de conceitos.
<br>
<br>


* 07. JSF x JSP x Bacth: Qual a relação entre eles? Para que são usados?
* 06. JSF x JSP x Batch: Qual a relação entre eles? Para que são usados?
**
**JSP: É uma tecnologia para criação de páginas web. Com Java Server Pages podemos criar aplicações web para vários servidores web, já que Java é uma linguagem multi-plataforma. JSF: É um framework que permite a elaboração de interfaces de usuário web colocando componentes em um formulário e ligando-os a objetos Java permitindo a separação entre lógica e regras de negócio, navegação, conexões com serviços externos e gerenciamento de configurações.
**Um processamento em Batch é a execução de uma série de ''jobs'' ou tarefas sendo adequado para ambientes que não precisem de interatividade, e que possua tarefas de longa execução. 
<br>
<br>


* 08. Quais os 3 ambientes normalmente utilizados num processo de desenvolvimento e para que é usado cada um?
* 07. Quais os 3 ambientes normalmente utilizados num processo de desenvolvimento e para que é usado cada um?
**
**Os 3 ambientes são o Ambiente de desenvolvimento, o de Produtos e o Outsorcing.
**O ambiente de desenvolvimento geralmente é para desenvolver o sistema para a empresa, internamente. o de Produtos é para analisar os requisitos e verificar o que o produto deve entregar de Valor para a empresa. Já o Ousorcing é para desenvolver sistemas para empresas externamente.
<br>
<br>


* 09. Qual a função do Analista de Requsitos? Cite um exemplo que ilustre essa atividade,
* 08. Qual a função do Analista de Requsitos? Cite um exemplo que ilustre essa atividade,
**O Analista de Requisitos é a peça fundamental na criação do produto que se transformará no software. Transmite para a equipe de desenvolvimento o que foi relatado pela parte que encomendou o software e outros detalhes que o analista de requisitos conseguiu mapear por observações e entrevistas. O analista, portanto, é o profissional que conversa com o cliente e faz as perguntas para descobrir as funcionalidades e particularidades do sistema.
**O Analista de Requisitos é a peça fundamental na criação do produto que se transformará no software. Transmite para a equipe de desenvolvimento o que foi relatado pela parte que encomendou o software e outros detalhes que o analista de requisitos conseguiu mapear por observações e entrevistas. O analista, portanto, é o profissional que conversa com o cliente e faz as perguntas para descobrir as funcionalidades e particularidades do sistema.
<br>
<br>


* 10. Qual a função do Maven, Spring e Docker?  
* 09. Qual a função do Maven, Spring e Docker?  
**Maven é ferramenta desenvolvida pela Apache para gerenciar as dependências e automatizar tarefas, principalmente para a linguagem Java.  
**Maven é ferramenta desenvolvida pela Apache para gerenciar as dependências e automatizar tarefas, principalmente para a linguagem Java.  
**Spring é um framework, portanto, é um conjunto de soluções prontas para serem implementadas na sua aplicação, de forma que padronize muitas funções no projeto, facilitando, muitas vezes, a leitura e a implementação.  
**Spring é um framework, portanto, é um conjunto de soluções prontas para serem implementadas na sua aplicação, de forma que padronize muitas funções no projeto, facilitando, muitas vezes, a leitura e a implementação.  
**O Docker possibilita o empacotamento de uma aplicação ou ambiente inteiro dentro de um container, e a partir desse momento o ambiente inteiro torna-se portável para qualquer outro Host que contenha o Docker instalado.Isso reduz drasticamente o tempo de deploy de alguma infraestrutura ou até mesmo aplicação, pois não há necessidade de ajustes de ambiente para o correto funcionamento do serviço, o ambiente é sempre o mesmo, configure-o uma vez e replique-o quantas vezes quiser.
**O Docker possibilita o empacotamento de uma aplicação ou ambiente inteiro dentro de um container, e a partir desse momento o ambiente inteiro torna-se portável para qualquer outro Host que contenha o Docker instalado.Isso reduz drasticamente o tempo de deploy de alguma infraestrutura ou até mesmo aplicação, pois não há necessidade de ajustes de ambiente para o correto funcionamento do serviço, o ambiente é sempre o mesmo, configure-o uma vez e replique-o quantas vezes quiser.

Edição atual tal como às 19h42min de 20 de setembro de 2018

Palestrante: Jean Fabricio

Email: jeanufu21@gmail.com

Telefone: (34) 9277-4040

Evolução na profissão

  • O profissional Jean conheceu programação cerca de um mês antes de entrar para a Faculdade de Sistemas de Informação na UFU. A primeira linguagem de programação que aprendeu foi Java. Ele entrou na Empresa Júnior Techmob logo em seu primeiro semestre e ficou durante 4 anos. Foi presidente, gestor de projetos, analista de requisitos, supervisor. Adquiriu conhecimento em programação Web (php) , banco de dados, gestão de projetos, e desenvolveu diversos sistemas ao longo de sua graduação. Atualmente trabalha na empresa TQI - Empresa de software em Uberlândia e participa de projetos de Front-End e Back-End, utilizando a linguagem java como principal tecnologia.

Requisitos mínimos para exercer a profissão

  • Um Full Stack tem que estar sempre curioso, não pode ser um profissional acomodado, deve estar sempre interessado em aprender mais com os outros a sua volta. Por ser múltiplo, não pode direcionar toda a sua atenção a um determinado assunto, tem que saber a hora de parar uma determinada especialização e partir pra outra, então requer paciência e bom controle de foco. É importante certificar seu conhecimento, pois serve para reconhecer e dar mais credibilidade, além de que muitas empresas exigem no mercado de trabalho. Algumas certificações são: Java(OCA, OPL, OCE), Certificação Oracle Database, Spring Certificate. Além disso, é fundamental que o profissional conhecer técnicas que aprimoram o trabalho em equipe, sabendo lidar com gerência de projetos e utilizar ou conhecer as práticas de desenvolvimento Ágil.



Ferramentas usadas no dia-a-dia

  • A profissão exige conhecimento considerável tanto no Front-End quanto no Back-End. Desse modo, a quantidade de ferramentas é grande.
  • Podemos citar:
    • Eclipse, Netbeans, Intelli J, Sublime Text 3, Notepadd++, Atom. Frameworks Bootstrap(Front End), Spring MVC (Java).
  • O automatizador de deploys Jenkins, o qual é útil para agilizar o desenvolvimento dos projetos.
  • Pode-se utilizar o Maven (ferramenta desenvolvida pela Apache para gerenciar as dependências e automatizar tarefas).

Tecnologias envolvidas

  • O profissional deve conhecer tecnologias que envolvam o Front-End e o Back-End. Podemos citar:
    • HTML5, CSS3(less, sass), Javascript (Jquery, Node.js, Ajax, Angular.js), Java, php7, .NET, Ruby.
  • Deve conhecer bancos de dados relacionais
    • SQL Server, MySQL, Oracle, PostgreSQL
  • e não relacionais:
    • Redis, MongoDB.
  • Não é necessário dominar todas as tecnologias, mas deve conhecer e saber aplicar boa parte delas, de acordo com as especificações da empresa.

Ética profissional


  • Em uma ocasião, Jean trabalhava para um banco, desenvolvendo e dando suporte a um sistema para o mesmo. Logicamente, para poder efetuar seu trabalho, o profissional tinha acesso a dados bancários, servidores restritos, entre outras informações confidenciais.A questão é que a ética nesse momento é de extrema importância para que o profissional não cometa nenhum tipo de atitude comprometedora, já que qualquer ação deste nível poderia trazer danos inimagináveis à empresa e aos clientes da mesma.

Exemplo de resultado tangível

  • Eagle Flores


Upload da apresentação

https://mega.nz/#!YMYwSSSL!7u3HF2xcuGxFeY-e4QGk9OEku8f3OxJDqQmPBhhJysI
Link para baixar a apresentação

Dúvida


  • 01. Na sua visão, porque não compensa fazer certificação?
    • A certificação é algo que pode ou não compensar, quando se fala de como a pessoa irá utilizar. Tendo em vista que novas versões e atualizações são lançadas constantemente, uma certificação pode não ser útil depois de um tempo. Dessa forma, a certificação não traria tanto benefício, além de ter um custo elevado.


  • 02. Qual a diferença entre OCA x OCP x OCE?
    • A OCA – Oracle Certified Asoociate – é o primeiro nível de certificação da Oracle, e isso independe da sua decisão de carreira. Seja para ser Desenvolvedor, seja para ser DBA, esta é uma certificação obrigatória caso você queira se especializar em outras certificações.Essa é uma prova destinada a profissionais de perfil Jr. a Pleno.
    • A OCP – Oracle Certified Professional – é uma certificação bem mais técnica que a OCA, sendo a certificação mais requisitada no mercado e geralmente exigida em licitações de órgãos públicos, além de empresas privadas.
    • A OCE – Oracle Certified Expert – é uma nova categoria de certificação da Oracle. Com menos de 5 anos de existência, a certificação é voltada para profissionais que são especialistas em ferramentas, implementações ou linguagens como o SQL.


  • 03. O que é um framework? O que é um servlet?
    • Framework é uma biblioteca que reúne diversas funcionalidades ja testadas e implementadas, as quais servem para facilitar a vida do programador no desenvolvimento. Geralmente o framework encapsula um conjunto de códigos , devolvendo uma interface mais amigável.
    • Servilet pode ser definido como um componente semelhante um servidor, que gera dados HTML e XML para a camada de apresentação de uma aplicação Web. Ele processa dinamicamente requisições e respostas


  • 04. Pode esclarecer o que é Arquitetura de Software?
    • Arquitetura de software é uma descrição abstrata de diferentes visões do sistema.É o resultado das decisões de design sobre a estrutura e o comportamento do software como um todo. A estrutura deve atender os requisitor funcionais e não funcionais do projeto.


  • 05. O que é o padrão MVC? Porque é usado?
    • MVC é um padrão de arquitetura de software que contem três estruturas básicas: Model, View e Controller. Ele separa essas estruturas para facilitar e padronizar o desenvolvimento, melhorando a visibilidade e reuso dos códigos através dessa separação de conceitos.


  • 06. JSF x JSP x Batch: Qual a relação entre eles? Para que são usados?
    • JSP: É uma tecnologia para criação de páginas web. Com Java Server Pages podemos criar aplicações web para vários servidores web, já que Java é uma linguagem multi-plataforma. JSF: É um framework que permite a elaboração de interfaces de usuário web colocando componentes em um formulário e ligando-os a objetos Java permitindo a separação entre lógica e regras de negócio, navegação, conexões com serviços externos e gerenciamento de configurações.
    • Um processamento em Batch é a execução de uma série de jobs ou tarefas sendo adequado para ambientes que não precisem de interatividade, e que possua tarefas de longa execução. 


  • 07. Quais os 3 ambientes normalmente utilizados num processo de desenvolvimento e para que é usado cada um?
    • Os 3 ambientes são o Ambiente de desenvolvimento, o de Produtos e o Outsorcing.
    • O ambiente de desenvolvimento geralmente é para desenvolver o sistema para a empresa, internamente. o de Produtos é para analisar os requisitos e verificar o que o produto deve entregar de Valor para a empresa. Já o Ousorcing é para desenvolver sistemas para empresas externamente.


  • 08. Qual a função do Analista de Requsitos? Cite um exemplo que ilustre essa atividade,
    • O Analista de Requisitos é a peça fundamental na criação do produto que se transformará no software. Transmite para a equipe de desenvolvimento o que foi relatado pela parte que encomendou o software e outros detalhes que o analista de requisitos conseguiu mapear por observações e entrevistas. O analista, portanto, é o profissional que conversa com o cliente e faz as perguntas para descobrir as funcionalidades e particularidades do sistema.


  • 09. Qual a função do Maven, Spring e Docker?
    • Maven é ferramenta desenvolvida pela Apache para gerenciar as dependências e automatizar tarefas, principalmente para a linguagem Java.
    • Spring é um framework, portanto, é um conjunto de soluções prontas para serem implementadas na sua aplicação, de forma que padronize muitas funções no projeto, facilitando, muitas vezes, a leitura e a implementação.
    • O Docker possibilita o empacotamento de uma aplicação ou ambiente inteiro dentro de um container, e a partir desse momento o ambiente inteiro torna-se portável para qualquer outro Host que contenha o Docker instalado.Isso reduz drasticamente o tempo de deploy de alguma infraestrutura ou até mesmo aplicação, pois não há necessidade de ajustes de ambiente para o correto funcionamento do serviço, o ambiente é sempre o mesmo, configure-o uma vez e replique-o quantas vezes quiser.