| Linha 22: | Linha 22: | ||
= Ferramentas usadas no dia-a-dia = | = Ferramentas usadas no dia-a-dia = | ||
* JSON - Editor de JavaScript | * JSON - Editor de JavaScript | ||
*SQL Editor Usado para manuseio de banco de dados. | *SQL Editor Usado para manuseio de banco de dados. | ||
* Postman e Apiary Facilitam a criação de API´s | * Postman e Apiary Facilitam a criação de API´s | ||
* Wunderlist - Gerenciador de tarefas e projetos | * Wunderlist - Gerenciador de tarefas e projetos | ||
* Sketch - Editor de gráficos vetoriais/Designer gráfico | * Sketch - Editor de gráficos vetoriais/Designer gráfico | ||
<br> | <br> | ||
Edição das 21h40min de 2 de dezembro de 2018
Evolução na profissão
Primeiramente um Desenvolvedor de Aplicativos mobile deve saber programar nas linguagens mais usadas no desenvolvimento das aplicações, fato que é ajudado por cursos técnicos extensivos ou por uma graduação em um curso da área, como Ciência da Computação e Sistema de Informação. Nos cursos técnicos, é aprendido diretamente as técnicas de programação, mostrando diretamente a linguagem que o futuro profissional deseja especializar-se. Já na graduação, aprende-se de tudo um pouco, com um nível um pouco menos detalhado, visto que deve se aprender diversas técnicas e linguagens, sendo assim, uma opção que garante um leque maior de conhecimentos. No caso de Nicolas, foi necessário cursos técnicos online e 6 períodos do curso de Ciência da Computação para começar a atuar na área.
Após (ou durante) o período de aprendizado nesses cursos é muito recomendado os estágios, que são " amostras " do que você pode vim exercer em sua carreira. Nesses estágios se aprende geralmente sobre coisas técnicas e muito úteis, visando o aprimoramento profissional na sua área de estudo. Nesse percurso é de suma importância obter diversas certificações na área, para ter garantia da validade de seu conhecimento. Os mais famosos na área (ITIL, CISSP e DELL EMC) são os mais almejados pelos programadores, e podem ser obtidos por variados métodos, sendo eles de acordo com a especialidade das certificações. Nicolas, por sua vez não participou de nenhum estágio. Ele partiu direto para a prática, caso que também é muito recorrente em empresas recém criadas que procuram novos programadores.
Por fim, vale ressaltar também que, para um desenvolvedor, existem 3 níveis de cargo, sendo eles Júnior, Pleno e Sênior. O comum é um dev começar com tarefas de Dev Junior, com complexidade menor de tarefas, sem tantas exigências de competências profissionais e normalmente sem autonomia para decisões. Assim evoluindo, após um tempo de trabalho, para Dev Pleno, que tem complexidade maior de tarefas, maior maturidade profissional e capacidade ampla de tomada de decisões. E por fim, em seu cargo final, se torna Dev Sênior, que consta com ampla complexidade de tarefas, exigência de maturidade profissional e emocional, poder de decisão e capacidade para assumir funções de liderança. No entanto, apesar da dificuldade crescer na medida em que o cargo cresce, o aumento salarial também cresce, sendo diretamente proporcional ao nível de complexidade do trabalho exigido. No caso de Nicolas, por tratar-se de um jovem programador, que ingressou a pouco mais de um ano na área, ele se enquadra como um Dev Júnior, apesar de estar trabalhando em um aplicativo que requer um grau de competência elevado.
Descrição da atividade atual
Em seu dia-a-dia, atua no desenvolvimento de aplicativos ou sistemas, usando múltiplas linguagens de programação. Os principais sistemas operacionais mobile utilizados no mundo atualmente são o Android, da Google, e o iOS, da Apple. Além disso, é de suma importância sempre estar em contato com outras pessoas da área de TI, uma vez que sua profissão depende exclusivamente do trabalho conjunto de diversas pessoas .
O mercado de trabalho para um dev mobile é bem amplo, dando diversas opções para o profissional. No entanto , para a atuação nessa área, é necessário ter experiencia comprovada a partir de certificações, além de saber falar inglês fluente, visto que no mundo da tecnologia, a língua inglesa é a mais utilizada.
Requisitos mínimos para exercer a profissão
Para exercer a função de Dev Mobile, é necessário ter conhecimento amplo em programação, além de ter experiencias em projetos anteriores de TI. Além disso, é de suma importância o conhecimento dos diversos sistemas operacionais existentes, para que os aplicativos sejam feitos com uma boa optimização para cada SO.
Por outro lado, cumprir os valores estabelecidos pelos superiores é imprescindível, fato que melhora o ambiente de trabalho .
Ferramentas usadas no dia-a-dia
- JSON - Editor de JavaScript
- SQL Editor Usado para manuseio de banco de dados.
- Postman e Apiary Facilitam a criação de API´s
- Wunderlist - Gerenciador de tarefas e projetos
- Sketch - Editor de gráficos vetoriais/Designer gráfico
Tecnologias envolvidas
Conhecimento técnico e científico aplicado na atividade profissional utilizando ferramentas, processos e recursos físicos. Neste caso, escolher uma tecnologia e aprofundar a ponto de poder discutir em sala de aula Exemplos:
- SO, Banco de Dados, Linguagens, Metodologia ágil para o Engenheiro de Software
- Redes de Computadores, Roteamento, sistemas de comunicação e comutação para o Analista de Redes
- Criptografia, Certificação Digital, Banco de Dados, Ambiente Web para Analistas de Segurança
- Banco de Dados, Normalização, Tuning, redundância para o DBA
- E assim por diante ....
Ética profissional
- Apontar qualquer situação em que é necessário ética. Seja alguma situação vivida pelo profissional ou que ele tenha tido conhecimento. Importante ressaltar o comportamento adequado do profissional dentro de uma empresa ou de um negócio.
- Caso o profissional não sugira nada, a equipe deverá pesquisar e discutir algum caso
- Os casos, tanto podem tratar de comportamentos éticos positivos quanto de situações onde a ética tenha sido desvirtuada.
Exemplo de resultado tangível
- Citar um exemplo de algum resultado real produzido pelo profissional. Aqui pode ser o exemplo de um equipamento, de um sistema embarcado, de um sistema web ou mobile, de um projeto ou documento que retrate a contribuição do convidado no negócio onde ele atua.
Upload da apresentação
https://drive.google.com/file/d/1DFrPq9uC6iA9-5VD1kXAdkQXEuCrP46W/view
Dúvidas
- 01. AWS, é importante para desenvolvimento de aplicações móveis? Por quê?
- A Amazon Web Services se trata de uma plataforma de serviços na nuvem , ela é de extrema importância no desenvolvimento de apps , pois é através dela que , a maioria dos desenvolvedores, hospedam os bancos de dados dos aplicativos , garantem a transferência de dados entre usuário e servidor , acontecem as chamadas da API's,entre outros.Além disso, tudo isso ocorre de forma rápida e segura , o que a torna uma ferramenta essencial no desenvolvimento mobile.
- 02. O que é site responsivo? Cite algumas ferramentas que permite desenvolvê-lo.
- Os sites responsivos são aqueles que se encaixam automaticamente com dispositivo utilizado , mudam sua aparência e disposição baseado no tamanho da tela que o usuário esta utilizando no momento.Alguns das melhores ferramentas para criação de sites responsivos são : WebFlow, Froont, Reflow, Macaw.
- 03. Quais as diferenças básicas entre Dev Jr, Dev Pleno e Dev Senior?
- O Developer Jr é , em grande parte das vezes , o profissional que ainda não possui muita experiência no mercado e costuma ter conhecimento das ferramentas de desenvolvimento mas ainda não consegue desenvolver projetos sozinhos.O Dev Pleno é o profissional com certa experiência ,consegue desenvolver projetos sozinhos mas não interfere em decisões da arquitetura do projeto. O Dev Senior é o profissional que lida com toda equipe , consegue desenvolver projetos sozinhos e toma decisões referentes a arquitetura do projeto.
- 04. É interessante usarmos Bancos de Dados não-relacionais? Cite soluções de BD NoSQL.
- No contexto de desenvolvimento mobile é muito interessante a utilização de BD NoSQL , uma vez que ao se desenvolver apps não se sabe a quantidade de usuários que utilizarão o app , logo a escalabilidade que o NoSQL oferece se torna de extrema importância,diferentemente do SQL , o qual é complexo e caro para escalar.
- 05. Por quê o palestrante veio citou a expressão "Cuida bem do seu código""?
- O palestrante citou esta expressão , pois quando você é um Developer e trabalha em projetos próprios ou de empresas os códigos desenvolvidos por você serão utilizados durante muito tempo assim desenvolver um bom código devidamente comentado auxiliaria em possíveis futuros ajustes nesse código. Além disso , quando se trabalha em equipe ou em empresas os códigos desenvolvidos por você serão utilizados por diversos outros desenvolvedores e manter seu código bem organizado e comentado trará uma melhor imagem sua perante a empresa e a equipe , e isso costuma ser o diferencial entre desenvolvedores pleno e sênior.
- 06. O que é um Hackathon? Como funciona?
- Hackathon é uma maratona de programação que reúne programadores ,designers , entre outros profissionais ligados ao desenvolvimento de softwares.O objetivo de uma Hackathon costuma ser desenvolver um software que atenda a um fim específico ou projetos que sejam inovadores e utilizáveis , essas maratonas podem durar entre um dia ou uma semana , essas maratonas costumam premiar os melhores classificados além de promover a interação de diferentes grupos de programadores em um ambiente específico de programação.
- 07. React, Angular JS, para que servem estas ferramentas?
- React e Angular JS são ambos frameworks,bibliotecas, de JavaScript , essas ferramentas auxiliam no desenvolvimento de interfaces para páginas web e de aplicações moveis.