(17 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 6: Linha 6:


= Evolução na profissão =
= Evolução na profissão =
:Descrever como o profissional evoluiu deste que descobriu o interesse na área. Pode começar pelo estágio, pelo curso técnico e evoluir por todas as fases da carreira, seja empresarial ou acadêmica. até a atual função, incluindo pós-graduação e especialização caso tenha feito.
 
<br>
* '''Como estudante:'''
 
'''Estágio na empresa CTBC, projeto de reconhecimento de fala (entre 2001 e 2002):'''
 
Primeiro contato com o ambiente corporativo.
 
A tecnologia de reconhecimento de fala era muito nova e o projeto era inovador para a época.
 
Hoje consigo entender o importância de inovar, e que as tecnologias evoluem muito com o tempo, bem como o seu contexto de utilização.
 
'''Estágio no Núcleo Avançado de Computação Sônica e Multimídia UFU:'''
 
Foi uma oportunidade de trabalhar com Redes e Linux, dois assuntos que me interessavam muito na época que era estudante.
 
* '''Como profissional'''
 
'''Empresa sondaimarés (www.sonda.com) no período de Fevereiro de 2004 a Fevereiro de 2006:'''
 
Cargo: analista de produção.
 
A maior responsabilidade era desenvolver scripts de automação.
 
Importante para entender o funcionamento e criticidade de ambiente de produção.
 
Em termos de tecnologia percebi a importância de padronização de código.
 
'''Empresa SWB (www.swb.com.br) no período de Março de 2006 até Fevereiro de 2007 como Analista de Sistemas:'''
 
O cargo de analista/desenvolvedor Java.
 
Primeiros projetos profissionais da minha carreira utilizando tecnologias do universo Java.
 
'''Empresa TQI (www.tqi.com.br) no período de Fevereiro de 2007 até Outubro de 2009 como Analista de sistemas:'''
 
O cargo de analista/desenvolvedor.
 
Nessa época especializei na tecnologia Java, fazendo curso de especialização em desenvolvimento corporativo em Java - UNIFENAS/IGAP/FIEMG e me certificando: SCJA - Sun Certified Associate for Java Plataform e SCJP - Sun Certified Programmer for Java Plataform.
 
Além de participar de projetos para empresas de Uberlândia, tive a oportunidade de trabalhar em projetos de empresas de fora de Uberlândia como UOL, BUNGE, Vivo.
 
Os projetos eram de contextos de negócios diferentes e tecnologias diversas, porém o objetivo final sempre era produzir uma solução tecnológica aderente ao negócio do cliente. Dessa forma, além de codificar foi necessário entender e aprender sobre o processo de desenvolvimento de software e boas práticas de gestão de projeto.
 
Além de me envolver com tecnologias, tive que desenvolver habilidades de criar documentação de requisitos técnicos e funcionais (Diagramas UML, técnicas de elaboração de casos de uso), elaborar e executar plano de testes e trabalhar no contexto de metodologias (RUP, Scrum).
 
'''Empresa União Atacado e Distribuidor (www.uniaoatacado.com.br) de Outubro de 2009 até Julho de 2011 como Analista de Sistemas:'''
 
Cargo: Analista/desenvolvedor atuando como líder técnico.
 
Nessa época iniciei o MBA em Gerenciamento de Projetos - FGV, com o objetivo de entender sobre boas práticas de gerenciamento de projetos, tomar decisões e argumentar sobre o controle de escopo, tempo e custo.
 
Surgiu a oportunidade atuar no planejamento técnico de novos projetos e integração com sistemas legados.
 
O desafio foi propor, implementar e implantar a solução tecnológica aderente ao negócio. Dentre as dificuldades enfrentadas estavam o fato de contar com uma equipe reduzida e também de ainda não tinha sido realizado projeto nesse modelo com uma equipe interna.
 
Para atingir o resultado primeiro foi necessário entender o contexto de negócio da empresa, os recursos tecnológicos disponíveis e que seriam possíveis de adquirir, para então definir e implantar uma infraestrutura de desenvolvimento com controle de versão e automação de entregas, repositório de código e artefatos, padronização de arquitetura de desenvolvimento e integração com sistemas legados.
 
No segundo momento foi definida a forma de comunicação com as pessoas da empresa para entender os objetivos do projeto e escrever os requisitos.
 
Dessa forma, foi possível escrever os requisitos, codificar, implantar, controlar versões e rastrear novas implementações, manutenção e alterações.
 
'''Empresa TQI (www.tqi.com.br) de Julho de 2011 a Novembro de 2014 como Analista de Sistemas:'''
 
Cargo: Analista/desenvolvdedor.
 
Novas oportunidades em projetos de fora de Uberlândia: UOL, Buscapé, Iguatemi Empresas de Shopping Centers.
 
A realização de codificação e argumentação era feita com mais maturidade.
 
'''Empresa Callink (www.callink.com.br) desde Dezembro de 2014 como Arquiteto de Sistemas:'''
 
Cargo: Arquiteto de sistemas.
 
Participação na concepção, implementação, implantação de produtos externos e internos.
 
Apoio em projetos de operação.


= Descrição da atividade atual =  
= 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.
:A função do Arquiteto de Software é fazer toda a conexão entre as propriedades externas e internas, baseando-se em padrões, informações, premissas e restrições para montar a comunicação entre os elementos existentes
<br>
<br>


= Requisitos mínimos para exercer a profissão =
= Requisitos mínimos para exercer a profissão =
:Identificar algumas formações necessárias para que o profissional adquira a capacitação necessária para a função. Importante citar certificações da área ou tópicos vistos na escola que merecem aprofundamento. Em alguns casos, citar formações fora da área, como, Gerência de Projetos, Práticas como Desenvolvimento Ágil ou outras como administração, economia, etc.
* Pelo menos ler e escrever em inglês.
*Ser curioso e gostar de entender as coisas.
*Certificações técnicas sempre são bem vindas.
*Conhecimento em ITIL (Information Technology Infrastructure Library) que é o framework para gerenciamento de serviços de TI mais adotado mundialmente.
*Conhecimento em Gestão de TI e Gestão de Projeto.
*Conhecimento em contabilidade (matemática financeira).
*Conhecimento em tecnologia cloud.
 
<br>
<br>


= Ferramentas usadas no dia-a-dia =
= Ferramentas usadas no dia-a-dia =
:Citar, informando as versões e fornecedores, sobre algumas ferramentas efetivamente usados pelo profissional no dia-a-dia. Pode incluir IDEs, Frameworks, SGBDs, Tools, Aplicações ou sistemas específicos.
*JDK(Java Development Kit), Springframework (um framework não intrusivo, baseado nos padrões de projeto inversão de controle e injeção de dependência.
*Eclipse
*GIT e SVN (ferramentas de versionamento).
*Nexus (ramificação de projetos).
*Maven ( ferramenta de automação de compilação).
*AWS (uma plataforma de serviços de computação em nuvem, que formam uma plataforma de computação na nuvem oferecida pela Amazon.com).
*Crontab (programa do Unix que edita o arquivo onde são especificados os comandos a serem executados e a hora e dia de execução pelo cron, um serviço que executa comandos agendados nos sistemas operacionais do tipo Unix).
*Jira (ferramenta que permite o monitoramento de tarefas e acompanhamento de projetos garantindo o gerenciamento de todas as suas atividades em único lugar).
*SoapUI (ferramenta de testes).
*Postman (ajuda analisar APIs).
*Enterprise Architect (análise de design).
*VMWare, VirtualBox, Vagrant (softwares de máquinas virtuais).
 
<br>
<br>


= Tecnologias envolvidas =
= Tecnologias envolvidas =
:Destacar algumas tecnologias com as quais o profissional lida diretamente ou que precisará lidar num certo tempo. Se for uma acrõnimo (sigla) especificar claramente o nome completo. Exemplo: ASR, neste caso escrever, ASR - Automatic Speech Recognition (Reconhecimento Automático de Voz ou da Fala)
*SQL Server e MySQL (banco de dados).
*SQL Management Studio (ambiente integrado para gerenciar qualquer infraestrutura de SQL).
*Elastic Search (Big Data)
*Shell script, bat (linguagens utilizadas em vários sistemas operacionais).
 
<br>
<br>


= Ética profissional =
= Ética profissional =
: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.
:* '''Situação Positiva:'''
:Liderança de equipe: Gerente blinda a equipe e sempre procurava uma solução para o problema, e não o culpado.
:A equipe era composta por profissionais em início de carreira. Quando ocorria algum problema as pessoas de outras áreas queriam falar direto com membros da equipe, nesses casos o gerente não permitia a cobrança direta, então ele procurava saber o que estava acontecendo com a pessoa que estava reclamando, e dependendo da situação, de forma separada. Era exposta a situação para a equipe, que escutava e propunha uma solução, e então a conversa só terminava depois que a equipe chegava a um consenso.
:* '''Situação Negativa:'''
:Dar feedback de maneira incorreta: Criticar o trabalho de um companheiro de trabalho em público.
:Não é “saudável” expor um erro ou uma maneira de trabalhar de outra pessoa em público. Dessa forma, pode gerar um constrangimento desnecessário e contaminar o ambiente de trabalho negativamente.
:Os feedback negativos ou críticas devem ser feitos sim, mas pela pessoa certa (nível hierárquico) e em local e momento adequado.
<br>
<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.
:
:'''Produto:''' Portal de Cobrança.
:'''Objetivo:''' Recuperação de crédito.
:'''Funcionamento:'''  Sistema faz a seleção de usuários e negociações de dívidas. O usuário recebe uma proposta de negociação de dívidas via e-mail ou sms com as orientações de acesso no portal. O usuário acessa o portal de cobrança a qualquer momento e analisa a melhor opção de parcelamento e data de pagamento da dívida de maneira privada e sem a necessidade de interação com o ser humano.
:'''Portal de cobrança digital DigiCop:''' <nowiki>https://www.digicob.com/</nowiki>
:'''Mais sobre:''' <nowiki>https://pt.linkedin.com/pulse/digicob-cobrança-digital-dna-redação-digicob</nowiki>
<br>
<br>


Linha 38: Linha 146:
= Dúvidas =
= Dúvidas =


* 01. Qual a diferença entre um Arquiteto e um Engenheiro de Software ? (Explicar cada um)
* '''01. Qual a diferença entre um Arquiteto e um Engenheiro de Software ? (Explicar cada um)'''
Depende, cada empresa divide as funções de acordo com a necessidade do projeto.No entanto , no geral o  arquiteto de software define os componentes de um sistema , suas propriedades ,como será sua comunicação com sistemas exteriores , além de criar a documentação sobre o software.Já o engenheiro de software está diretamente ligado a criação,desenvolvimento,manutenção e organização dos projetos.
:R: Depende, cada empresa divide as funções de acordo com a necessidade do projeto. No entanto, no geral o  arquiteto de software define os componentes de um sistema, suas propriedades, como será sua comunicação com sistemas exteriores, além de criar a documentação sobre o software. Já o engenheiro de software está diretamente ligado a criação, desenvolvimento, manutenção e organização dos projetos.
<br>
<br>


* 02. O que é padronização? (de quê?) explicar melhor
* '''02. O que é padronização?'''
A padronização é um meio que as empresas tem de organizar suas atividades gerando como consequente uma otimização de seus processos.A padronização consiste em criar uma serie de procedimentos e normas(padrões) sobre como determinada atividade deve ser executada. Assim facilita o controle da operação e aumenta a qualidade do produto a ser entregue .
:R: A padronização é um meio que as empresas tem de organizar suas atividades gerando como consequente uma otimização de seus processos. A padronização consiste em criar uma serie de procedimentos e normas (padrões) sobre como determinada atividade deve ser executada. Assim facilita o controle da operação e aumenta a qualidade do produto a ser entregue.
<br>
<br>


* 03. O que é RUP? Cite outra metodologia que compete com o RUP.
* '''03. O que é RUP? Cite outra metodologia que compete com o RUP.'''
RUP  é uma metodologia de processos .São documentos que descrevem o software e os projetos a serem executados ,anteriormente a seu desenvolvimento.É dividido em quatro fases :
:R: RUP  é uma metodologia de processos. São documentos que descrevem o software e os projetos a serem executados, anteriormente a seu desenvolvimento. É dividido em quatro fases:
*fase inicial : Quando o desenvolvedor e o cliente discutem como será o sistema ou software a ser desenvolvido;
:*fase inicial: Quando o desenvolvedor e o cliente discutem como será o sistema ou software a ser desenvolvido;
*fase de elaboração: Fase voltada ao desenvolvimento da documentação , da arquitetura , levantamento de recursos e custos;
:*fase de elaboração: Fase voltada ao desenvolvimento da documentação, da arquitetura, levantamento de recursos e custos;
*fase de construção:é a fase de desenvolvimento do software em si;
:*fase de construção: é a fase de desenvolvimento do software em si;
*fase de transição: Ocorre a entrega do software, implementação e o controle de qualidade;
:*fase de transição: Ocorre a entrega do software, implementação e o controle de qualidade;
uma outra metodologia que compete com o RUP é chamada SCRUM.
:uma outra metodologia que compete com o RUP é chamada SCRUM.
<br>
<br>


* 04. O que é SCRUM? Como são feitas as reuniões do Scrum e o que se discute nelas?
* '''04. O que é SCRUM? Como são feitas as reuniões do Scrum e o que se discute nelas?'''
Scrum é uma metodologia de processos para otimizar o desempenho de grandes equipes em projetos.No scrum o projeto é dividido em ciclos , os quais possuem seus objetivos chamados sprints. A equipe é dividida em sub equipes , as quais receberam uma certa atividade a ser executada e possuem um lider chamado de scrum master. No inicio de cada dia de trabalho serão realizadas reuniões sobre o que já foi feito , o que será feito ,como será feito e a melhor forma de faze-lo.
:R: Scrum é uma metodologia de processos para otimizar o desempenho de grandes equipes em projetos. No scrum o projeto é dividido em ciclos , os quais possuem seus objetivos chamados sprints. A equipe é dividida em sub equipes , as quais receberam uma certa atividade a ser executada e possuem um líder chamado de scrum master. No inicio de cada dia de trabalho serão realizadas reuniões sobre o que já foi feito, o que será feito, como será feito e a melhor forma de faze-lo.
<br>
<br>


* 05. Você já participou de um projeto de um sistema ,no qual  sabia que sua tecnologia estava ultrapassada?
* '''05. Você já participou de um projeto de um sistema, no qual  sabia que sua tecnologia estava ultrapassada?'''
Sim,é ruim pois tenho que garantir uma boa comunicação para informar que o sistema não se sustenta.
:R: "Sim, é ruim pois tenho que garantir uma boa comunicação para informar que o sistema não se sustenta."
<br>
<br>


* 06. O que é Jira? Dê um exemplo de uma atividade ou de um print das telas.
* '''06. O que é Jira? Dê um exemplo de uma atividade ou de um print das telas.'''
De forma simplificada , é uma software que auxilia na organização das atividades da equipe.
:R: De forma simplificada, é uma software que auxilia na organização das atividades da equipe.
<br>
<br>
[[Arquivo:jira.png]]
:[[Arquivo:jira.png]]
<br>
<br>
* 07. Você usa o Git e o SVN? Porque usá-los?
* '''07. Você usa o Git e o SVN? Porque usá-los?'''
Sim uso , pois dependendo do projeto a situação me força a usar um ou outro.A utilização dessas ferramentas é importante, pois possibilita o versionamento do projeto
:R: "Sim uso , pois dependendo do projeto a situação me força a usar um ou outro. A utilização dessas ferramentas é importante, pois possibilita o versionamento do projeto, dessa forma impedindo erros incluídos no código sejam incorrigíveis e facilitando o trabalho em equipe."
dessa forma impedindo erros incluídos no código sejam incorrigíveis e facilitando o trabalho em equipe.  
<br>
<br>


* 08. O que é ITIL e porque se recomenda sua utilização?
* '''08. O que é ITIL e porque se recomenda sua utilização?'''
Information Technology Infrastructure Library ou ITIL é uma biblioteca de infraestrutura em TI que possui as melhores praticas em serviços de TI. Descreve praticas testadas por organizações do mundo todo.A utilização do ITIL é recomendada ,pois reduz falhas operacionais , otimiza a correção de bugs , acelera a produção de diagnostico do sistema ,etc.
:R: Information Technology Infrastructure Library ou ITIL é uma biblioteca de infraestrutura em TI que possui as melhores praticas em serviços de TI. Descreve praticas testadas por organizações do mundo todo. A utilização do ITIL é recomendada, pois reduz falhas operacionais, otimiza a correção de bugs, acelera a produção de diagnostico do sistema, etc.
<br>
<br>


* 09. Para que devemos usar o crontab: Dê um exemplo de atividade onde seu uso é importante.
* '''09. Para que devemos usar o crontab? Dê um exemplo de atividade onde seu uso é importante.'''
O crontab deve ser usado para efetuar atividades eventuais e repetitivas.Como exemplo , um backup periódico de algum servidor pode ser automaticamente iniciado com um agendamento no crontab
:R: O crontab deve ser usado para efetuar atividades eventuais e repetitivas.Como exemplo, um backup periódico de algum servidor pode ser automaticamente iniciado com um agendamento no crontab.
<br>
<br>


*10. O que é integração contínua? Porque as empresas estão adotando esse modelo de trabalho?
*'''10. O que é integração contínua? Porque as empresas estão adotando esse modelo de trabalho?'''
Integração contínua consiste em uma pratica , na qual os desenvolvedores juntam suas alterações de códigos em um repositório central e testes serão efetuados com esses códigos. As empresas vem adotando esse modelo ,pois facilita bastante a localização e correção de bugs e como isso acelera a produção de atualizações para os softwares.
:R: Integração contínua consiste em uma pratica, na qual os desenvolvedores juntam suas alterações de códigos em um repositório central e testes serão efetuados com esses códigos. As empresas vem adotando esse modelo, pois facilita bastante a localização e correção de bugs e como isso acelera a produção de atualizações para os softwares.
<br>
<br>


= Livro indicado =
= Livro indicado =
[[Arquivo:livroindicado.jpg]]
[[Arquivo:livroindicado.jpg]]

Edição atual tal como às 17h58min de 21 de outubro de 2017

Dados do profissional

  • Nome: Celso Borges de Souza Júnior
  • E-mail: celsoborgessouza@gmail.com
  • Telefone: (34) 99146-3392


Evolução na profissão

  • Como estudante:

Estágio na empresa CTBC, projeto de reconhecimento de fala (entre 2001 e 2002):

Primeiro contato com o ambiente corporativo.

A tecnologia de reconhecimento de fala era muito nova e o projeto era inovador para a época.

Hoje consigo entender o importância de inovar, e que as tecnologias evoluem muito com o tempo, bem como o seu contexto de utilização.

Estágio no Núcleo Avançado de Computação Sônica e Multimídia UFU:

Foi uma oportunidade de trabalhar com Redes e Linux, dois assuntos que me interessavam muito na época que era estudante.

  • Como profissional

Empresa sondaimarés (www.sonda.com) no período de Fevereiro de 2004 a Fevereiro de 2006:

Cargo: analista de produção.

A maior responsabilidade era desenvolver scripts de automação.

Importante para entender o funcionamento e criticidade de ambiente de produção.

Em termos de tecnologia percebi a importância de padronização de código.

Empresa SWB (www.swb.com.br) no período de Março de 2006 até Fevereiro de 2007 como Analista de Sistemas:

O cargo de analista/desenvolvedor Java.

Primeiros projetos profissionais da minha carreira utilizando tecnologias do universo Java.

Empresa TQI (www.tqi.com.br) no período de Fevereiro de 2007 até Outubro de 2009 como Analista de sistemas:

O cargo de analista/desenvolvedor.

Nessa época especializei na tecnologia Java, fazendo curso de especialização em desenvolvimento corporativo em Java - UNIFENAS/IGAP/FIEMG e me certificando: SCJA - Sun Certified Associate for Java Plataform e SCJP - Sun Certified Programmer for Java Plataform.

Além de participar de projetos para empresas de Uberlândia, tive a oportunidade de trabalhar em projetos de empresas de fora de Uberlândia como UOL, BUNGE, Vivo.

Os projetos eram de contextos de negócios diferentes e tecnologias diversas, porém o objetivo final sempre era produzir uma solução tecnológica aderente ao negócio do cliente. Dessa forma, além de codificar foi necessário entender e aprender sobre o processo de desenvolvimento de software e boas práticas de gestão de projeto.

Além de me envolver com tecnologias, tive que desenvolver habilidades de criar documentação de requisitos técnicos e funcionais (Diagramas UML, técnicas de elaboração de casos de uso), elaborar e executar plano de testes e trabalhar no contexto de metodologias (RUP, Scrum).

Empresa União Atacado e Distribuidor (www.uniaoatacado.com.br) de Outubro de 2009 até Julho de 2011 como Analista de Sistemas:

Cargo: Analista/desenvolvedor atuando como líder técnico.

Nessa época iniciei o MBA em Gerenciamento de Projetos - FGV, com o objetivo de entender sobre boas práticas de gerenciamento de projetos, tomar decisões e argumentar sobre o controle de escopo, tempo e custo.

Surgiu a oportunidade atuar no planejamento técnico de novos projetos e integração com sistemas legados.

O desafio foi propor, implementar e implantar a solução tecnológica aderente ao negócio. Dentre as dificuldades enfrentadas estavam o fato de contar com uma equipe reduzida e também de ainda não tinha sido realizado projeto nesse modelo com uma equipe interna.

Para atingir o resultado primeiro foi necessário entender o contexto de negócio da empresa, os recursos tecnológicos disponíveis e que seriam possíveis de adquirir, para então definir e implantar uma infraestrutura de desenvolvimento com controle de versão e automação de entregas, repositório de código e artefatos, padronização de arquitetura de desenvolvimento e integração com sistemas legados.

No segundo momento foi definida a forma de comunicação com as pessoas da empresa para entender os objetivos do projeto e escrever os requisitos.

Dessa forma, foi possível escrever os requisitos, codificar, implantar, controlar versões e rastrear novas implementações, manutenção e alterações.

Empresa TQI (www.tqi.com.br) de Julho de 2011 a Novembro de 2014 como Analista de Sistemas:

Cargo: Analista/desenvolvdedor.

Novas oportunidades em projetos de fora de Uberlândia: UOL, Buscapé, Iguatemi Empresas de Shopping Centers.

A realização de codificação e argumentação era feita com mais maturidade.

Empresa Callink (www.callink.com.br) desde Dezembro de 2014 como Arquiteto de Sistemas:

Cargo: Arquiteto de sistemas.

Participação na concepção, implementação, implantação de produtos externos e internos.

Apoio em projetos de operação.

Descrição da atividade atual

A função do Arquiteto de Software é fazer toda a conexão entre as propriedades externas e internas, baseando-se em padrões, informações, premissas e restrições para montar a comunicação entre os elementos existentes


Requisitos mínimos para exercer a profissão

  • Pelo menos ler e escrever em inglês.
  • Ser curioso e gostar de entender as coisas.
  • Certificações técnicas sempre são bem vindas.
  • Conhecimento em ITIL (Information Technology Infrastructure Library) que é o framework para gerenciamento de serviços de TI mais adotado mundialmente.
  • Conhecimento em Gestão de TI e Gestão de Projeto.
  • Conhecimento em contabilidade (matemática financeira).
  • Conhecimento em tecnologia cloud.


Ferramentas usadas no dia-a-dia

  • JDK(Java Development Kit), Springframework (um framework não intrusivo, baseado nos padrões de projeto inversão de controle e injeção de dependência.
  • Eclipse
  • GIT e SVN (ferramentas de versionamento).
  • Nexus (ramificação de projetos).
  • Maven ( ferramenta de automação de compilação).
  • AWS (uma plataforma de serviços de computação em nuvem, que formam uma plataforma de computação na nuvem oferecida pela Amazon.com).
  • Crontab (programa do Unix que edita o arquivo onde são especificados os comandos a serem executados e a hora e dia de execução pelo cron, um serviço que executa comandos agendados nos sistemas operacionais do tipo Unix).
  • Jira (ferramenta que permite o monitoramento de tarefas e acompanhamento de projetos garantindo o gerenciamento de todas as suas atividades em único lugar).
  • SoapUI (ferramenta de testes).
  • Postman (ajuda analisar APIs).
  • Enterprise Architect (análise de design).
  • VMWare, VirtualBox, Vagrant (softwares de máquinas virtuais).


Tecnologias envolvidas

  • SQL Server e MySQL (banco de dados).
  • SQL Management Studio (ambiente integrado para gerenciar qualquer infraestrutura de SQL).
  • Elastic Search (Big Data)
  • Shell script, bat (linguagens utilizadas em vários sistemas operacionais).


Ética profissional

  • Situação Positiva:
Liderança de equipe: Gerente blinda a equipe e sempre procurava uma solução para o problema, e não o culpado.
A equipe era composta por profissionais em início de carreira. Quando ocorria algum problema as pessoas de outras áreas queriam falar direto com membros da equipe, nesses casos o gerente não permitia a cobrança direta, então ele procurava saber o que estava acontecendo com a pessoa que estava reclamando, e dependendo da situação, de forma separada. Era exposta a situação para a equipe, que escutava e propunha uma solução, e então a conversa só terminava depois que a equipe chegava a um consenso.
  • Situação Negativa:
Dar feedback de maneira incorreta: Criticar o trabalho de um companheiro de trabalho em público.
Não é “saudável” expor um erro ou uma maneira de trabalhar de outra pessoa em público. Dessa forma, pode gerar um constrangimento desnecessário e contaminar o ambiente de trabalho negativamente.
Os feedback negativos ou críticas devem ser feitos sim, mas pela pessoa certa (nível hierárquico) e em local e momento adequado.


Exemplo de resultado tangível

Produto: Portal de Cobrança.
Objetivo: Recuperação de crédito.
Funcionamento: Sistema faz a seleção de usuários e negociações de dívidas. O usuário recebe uma proposta de negociação de dívidas via e-mail ou sms com as orientações de acesso no portal. O usuário acessa o portal de cobrança a qualquer momento e analisa a melhor opção de parcelamento e data de pagamento da dívida de maneira privada e sem a necessidade de interação com o ser humano.
Portal de cobrança digital DigiCop: https://www.digicob.com/
Mais sobre: https://pt.linkedin.com/pulse/digicob-cobrança-digital-dna-redação-digicob


Upload da apresentação

Arquivo:Profissão em Computação e Informática.pdf

Dúvidas

  • 01. Qual a diferença entre um Arquiteto e um Engenheiro de Software ? (Explicar cada um)
R: Depende, cada empresa divide as funções de acordo com a necessidade do projeto. No entanto, no geral o arquiteto de software define os componentes de um sistema, suas propriedades, como será sua comunicação com sistemas exteriores, além de criar a documentação sobre o software. Já o engenheiro de software está diretamente ligado a criação, desenvolvimento, manutenção e organização dos projetos.


  • 02. O que é padronização?
R: A padronização é um meio que as empresas tem de organizar suas atividades gerando como consequente uma otimização de seus processos. A padronização consiste em criar uma serie de procedimentos e normas (padrões) sobre como determinada atividade deve ser executada. Assim facilita o controle da operação e aumenta a qualidade do produto a ser entregue.


  • 03. O que é RUP? Cite outra metodologia que compete com o RUP.
R: RUP é uma metodologia de processos. São documentos que descrevem o software e os projetos a serem executados, anteriormente a seu desenvolvimento. É dividido em quatro fases:
  • fase inicial: Quando o desenvolvedor e o cliente discutem como será o sistema ou software a ser desenvolvido;
  • fase de elaboração: Fase voltada ao desenvolvimento da documentação, da arquitetura, levantamento de recursos e custos;
  • fase de construção: é a fase de desenvolvimento do software em si;
  • fase de transição: Ocorre a entrega do software, implementação e o controle de qualidade;
uma outra metodologia que compete com o RUP é chamada SCRUM.


  • 04. O que é SCRUM? Como são feitas as reuniões do Scrum e o que se discute nelas?
R: Scrum é uma metodologia de processos para otimizar o desempenho de grandes equipes em projetos. No scrum o projeto é dividido em ciclos , os quais possuem seus objetivos chamados sprints. A equipe é dividida em sub equipes , as quais receberam uma certa atividade a ser executada e possuem um líder chamado de scrum master. No inicio de cada dia de trabalho serão realizadas reuniões sobre o que já foi feito, o que será feito, como será feito e a melhor forma de faze-lo.


  • 05. Você já participou de um projeto de um sistema, no qual sabia que sua tecnologia estava ultrapassada?
R: "Sim, é ruim pois tenho que garantir uma boa comunicação para informar que o sistema não se sustenta."


  • 06. O que é Jira? Dê um exemplo de uma atividade ou de um print das telas.
R: De forma simplificada, é uma software que auxilia na organização das atividades da equipe.



  • 07. Você usa o Git e o SVN? Porque usá-los?
R: "Sim uso , pois dependendo do projeto a situação me força a usar um ou outro. A utilização dessas ferramentas é importante, pois possibilita o versionamento do projeto, dessa forma impedindo erros incluídos no código sejam incorrigíveis e facilitando o trabalho em equipe."


  • 08. O que é ITIL e porque se recomenda sua utilização?
R: Information Technology Infrastructure Library ou ITIL é uma biblioteca de infraestrutura em TI que possui as melhores praticas em serviços de TI. Descreve praticas testadas por organizações do mundo todo. A utilização do ITIL é recomendada, pois reduz falhas operacionais, otimiza a correção de bugs, acelera a produção de diagnostico do sistema, etc.


  • 09. Para que devemos usar o crontab? Dê um exemplo de atividade onde seu uso é importante.
R: O crontab deve ser usado para efetuar atividades eventuais e repetitivas.Como exemplo, um backup periódico de algum servidor pode ser automaticamente iniciado com um agendamento no crontab.


  • 10. O que é integração contínua? Porque as empresas estão adotando esse modelo de trabalho?
R: Integração contínua consiste em uma pratica, na qual os desenvolvedores juntam suas alterações de códigos em um repositório central e testes serão efetuados com esses códigos. As empresas vem adotando esse modelo, pois facilita bastante a localização e correção de bugs e como isso acelera a produção de atualizações para os softwares.


Livro indicado