Etiqueta: visualeditor |
Etiqueta: visualeditor |
||
| Linha 36: | Linha 36: | ||
<br> | <br> | ||
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 = | = Exemplo de resultado tangível = | ||
| Linha 60: | Linha 58: | ||
* 03. Qual a diferença entre OCA x OCP x OCE? | * 03. 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> | ||
| Linha 76: | Linha 76: | ||
<br> | <br> | ||
* 07. JSF x JSP x | * 07. 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> | ||
Edição das 01h06min de 23 de outubro de 2017
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.
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.
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
- 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.
Upload da apresentação
Dúvidas
- 01. Pode explicar melhor seu desafio de implementar um motor de busca? O que fez? Qual era o desafio?
- 02. 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.
- 03. 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.
- 04. 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
- 05. 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.
- 06. 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.
- 07. 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.
- 08. Quais os 3 ambientes normalmente utilizados num processo de desenvolvimento e para que é usado cada um?
- 09. 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.
- 10. 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.