CodeGym /Cursos /Python SELF PT /Desenvolvimento de Produto

Desenvolvimento de Produto

Python SELF PT
Nível 63 , Lição 3
Disponível

5.1 Um Pouco de História

Quando lá nos anos 90 a Revolução da Internet começou, ninguém sabia como desenvolver serviços online corretamente. Todas as suas features ficavam disponíveis para os usuários, o que era bem diferente do desenvolvimento de software clássico.

O maior buscador daquela época, a empresa Yahoo, decidiu seguir um novo caminho e adotar a abordagem de Hollywood – seus gerentes eram chamados de produtores :) Não é surpresa que isso não deu certo.

Curiosidade. Yahoo é o maior fracasso em termos de compra de outras empresas. Uma vez, eles tiveram a chance de comprar Google e Facebook. No final, quando estavam no auge de sua carreira, a Microsoft tentou comprá-los por 40 bilhões, mas eles recusaram novamente. Alguns anos depois, foram adquiridos por apenas 3 bilhões. Nos anos 90, no auge de sua popularidade, o Yahoo era avaliado em 200 bilhões de dólares, e se tivessem comprado o Google, seu valor hoje poderia ser de trilhões. Não seja como o Yahoo.

Desde a Revolução da Internet, dezenas de métodos diferentes de desenvolvimento de software foram testados, e agora a situação está estável. Existem papéis padrão com responsabilidades padrão, processos padrão e software padrão.

Durante o aprendizado, você vai aprender tudo que precisa saber para trabalhar em empresas de TI modernas, com ferramentas de desenvolvimento modernas.

5.2 Equipe de Produtos

Uma equipe de desenvolvimento típica consiste em:

  • Pessoas que decidem, quais funções e recursos o produto deve ter
    • Product Owner
    • Business Analyst
  • Pessoas que decidem, como o produto será visualmente
    • UI Designer
    • UX Designer
  • Desenvolvedores, que tornam tudo isso realidade
    • Software Architect
    • Backend Developer
    • Frontend Developer
    • Mobile Developer
  • Pessoas, que são responsáveis pela qualidade do produto
    • QA Automation
    • DevOps

Product Owner em desenvolvimento de software tem um papel crucial, gerenciando o produto e garantindo que a equipe de desenvolvimento esteja focada nas tarefas mais importantes. Eles definem a visão do produto, criam e priorizam uma lista de tarefas (backlog), ajudando a garantir que cada etapa do desenvolvimento esteja alinhada com os objetivos de negócios e as necessidades dos usuários.

UX Designer trabalha na criação de uma interface de produto fácil de usar e eficiente, envolvendo pesquisa das necessidades do usuário, prototipagem e teste de interfaces. Este trabalho é voltado para melhorar a interação do usuário com o produto, tornando-o o mais claro e conveniente possível.

Especialistas DevOps otimizam os processos de desenvolvimento de software e seu gerenciamento operacional, para agilizar e simplificar a liberação de atualizações de produtos. Seu trabalho inclui automação de testes, implantação e monitoramento de sistemas, além de configurar infraestrutura e garantir integração e entrega contínuas (CI/CD).

5.3 Equipe de Desenvolvimento

O desenvolvimento propriamente dito é realizado por programadores. Eles podem ser divididos em 5 categorias:

  • Software Architect
  • Backend Developer
  • Frontend Developer
  • Mobile Developer
  • DBA

Funções e seu conteúdo podem variar dependendo do tamanho da equipe e especificidade do produto, mas geralmente é assim:

Software Architect: responsável por projetar a arquitetura complexa dos sistemas de software. Architect desenvolve a infraestrutura técnica, define a estrutura e os métodos de interação de vários componentes do software, assegurando escalabilidade, desempenho e segurança.

Backend Developer: especializado no desenvolvimento do lado servidor das aplicações. As tarefas do Backend Developer incluem implementação de lógica, integração de bancos de dados e sistemas de gerenciamento de dados, processamento de requisições de usuários e manutenção da interação com a parte frontend.

Frontend Developer: desenvolve a interface de usuário de aplicações web. Este papel exige conhecimento de HTML, CSS e JavaScript, assim como frameworks e bibliotecas para criar interfaces interativas e responsivas, garantindo uma boa experiência de usuário com o produto.

Mobile Developer: é responsável pelo desenvolvimento de aplicativos móveis. Mobile Developer cria aplicativos para diferentes sistemas operacionais (por exemplo, iOS e Android), levando em conta as características da plataforma, desempenho dos dispositivos e experiência do usuário.

DBA (Database Administrator): responsável pelo gerenciamento de bancos de dados, garantindo sua disponibilidade, segurança e otimização. O DBA realiza tarefas de configuração, monitoramento e manutenção de bancos de dados, além de desenvolver estratégias de backup e recuperação de dados.

Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION