Guia do Engenheiro Full-Stack das Galáxias
Trilha ao Full-Stack Engineering
"Sorte é o que acontece quando a preparação encontra a oportunidade" - Seneca.
Gostaria de fazer um adendo, esse plano de estudo é baseado apenas na minha visão e meus objetivos. Se ele vem ao caso de coincidir com os seus objetivos fico feliz de ter te ajudado.
Se você tem alguma sugestão qualquer sobre o plano de estudo, me manda um email: contato@cluyverth.com.
Dicas Úteis: TechGuide
O que é Full-Stack Engineering?
"Full-Stack Engineering" é uma área de desenvolvimento de software que abrange todas as camadas de uma aplicação web, desde o "Front-End" até o "Back-End". Um Engenheiro "Full-Stack" é capaz de trabalhar com todas as camadas de uma aplicação web, incluindo o "Front-End", frameworks web de "Back-End", banco de dados, aplicativos móveis e integração e implantação. Eles possuem conhecimentos profundos em várias tecnologias e são capazes de desenvolver aplicações web completas, desde o planejamento até a implementação e manutenção.
O objetivo de um Engenheiro "Full-Stack" é criar aplicações web robustas e escaláveis, garantindo a melhor experiência possível para os usuários finais.
A Trilha
Fundamentos de programação: Esta é a base do desenvolvimento de software e uma habilidade crítica para qualquer Engenheiro "Full-Stack". Escolha uma linguagem de programação, como Python, JavaScript, Ruby ou PHP, e aprenda os conceitos básicos da programação, como variáveis, tipos de dados, estruturas de controle de fluxo, funções e módulos. Além disso, aprenda sobre boas práticas de codificação, como documentação, legibilidade e organização do código.
HTML, CSS e JavaScript para "Front-End": Aprenda HTML, CSS e JavaScript para desenvolver interfaces de usuário para aplicativos web. O HTML é responsável por estruturar o conteúdo da página, o CSS é responsável por estilizar essa página e o JavaScript é responsável por adicionar interatividade e dinamismo à página. Aprenda sobre boas práticas de design e acessibilidade para garantir que seu "Front-End" seja atraente, fácil de usar e acessível a todos.
Framework web de "Back-End": Escolha um framework web de "Back-End", como Django, Ruby on Rails ou Express, e aprenda como criar aplicativos web em uma camada de servidor. Aprenda sobre rotas, controladores, modelos, visões e outros componentes importantes de um aplicativo web de "Back-End". Além disso, aprenda sobre segurança, autenticação e autorização para garantir que seu aplicativo seja seguro e protegido.
Banco de dados: Aprenda sobre banco de dados, seja relacional (como o MySQL) ou não relacional (como o MongoDB), e aprenda a interagir com eles a partir de aplicativos web. Aprenda sobre consultas, índices, normalização e outros conceitos importantes para garantir que seu banco de dados seja eficiente e escalável.
Desenvolvimento de aplicativos móveis: Aprenda sobre desenvolvimento de aplicativos móveis, seja nativo (usando Swift ou Java) ou híbrido (usando React Native ou Ionic). Aprenda sobre design de aplicativos móveis, interação com dispositivos móveis, publicação na App Store e outros aspectos importantes de desenvolvimento de aplicativos móveis.
Integração e implantação: Aprenda sobre integração de sistemas, incluindo integração com APIs externas e implantação de aplicativos em servidores. Aprenda sobre conceitos de implantação, como orquestração de containers, balanceamento de carga e monitoramento. Além disso, aprenda sobre boas práticas de implantação, como implantação contínua e "rollback" automático.
Manutenção e otimização: Aprenda sobre manutenção de aplicativos e otimização de desempenho. Aprenda sobre conceitos de manutenção, como correção de bugs, atualização de bibliotecas e correção de vulnerabilidades de segurança. Além disso, aprenda sobre técnicas de otimização, como análise de desempenho, otimização de consultas ao banco de dados e cache de dados.
Esse é um plano de estudo geral para se tornar um Engenheiro "Full-Stack". É importante destacar que a aprendizagem é contínua e que é necessário praticar e aplicar o conhecimento adquirido em projetos reais para alcançar habilidades e competências avançadas. Além disso, é importante manter-se atualizado com as tendências e tecnologias mais recentes na indústria de desenvolvimento de software.
Hein? Você quer que eu te deseje boa sorte? Pff... Não vai precisar disso. Agora, pare de perder tempo com esse papo furado e vá fazer acontecer.
Ser mais inteligente de todo o multiverso, Rick Sanchez.
Wubba lubba dub dub!
Ainda em Desenvolvimento
Planos de estudo são sequências de cursos e outros conteúdos criados por alunos e alunas da Alura para organizar seus estudos. Siga planos que te interessem ou crie o seu próprio.
Passo a passo
-
1
Conteúdo do plano
-
Curso Aprender a aprender: técnicas para seu autodesenvolvimento
-
Alura+ Ritmo de Estudos
-
Artigo Mapa mental: aprenda a técnica e construa anotações criativas
-
Artigo Organizando estudo e portfolio na Alura com Notion
-
Artigo A importância de aplicar e compartilhar o aprendizado na busca por um trabalho ou mudança de carreira
-
Artigo 5 dúvidas de quem quer iniciar na carreira de programação
-
Artigo Como escolher minha carreira em TI?
-
Curso Arquitetura de computadores: por trás de como seu programa funciona
-
Curso JavaScript e HTML: desenvolva um jogo e pratique lógica de programação
-
Curso JavaScript e HTML: pratique lógica com desenhos, animações e um jogo
-
Curso Linux Onboarding: usando a CLI de uma forma rápida e prática
-
Curso Linux Onboarding: localizando arquivos e conteúdos
-
Podcast Git e Github – Hipsters #109
-
Artigo Aprenda a estruturar um repositório de pesquisas para seu projeto
-
Curso Git e GitHub: repositório, commit e versões
-
Artigo Como criar um README para o seu perfil do GitHub
-
Artigo Como escrever um README incrível no seu Github
-
Formação Excel
-
Formação Aprenda a programar em Python com Orientação a Objetos
-
Podcast SOLID: Código bom e bonito – Hipsters Ponto Tech #219
-
Curso Git e Github: controle e compartilhe seu código
-
Curso Git e Github: estratégias de ramificação, Conflitos e Pull Requests
-
Curso Python Pandas: tratando e analisando dados
-
Curso Python Pandas: técnicas avançadas
-
Formação Power BI
-
Curso HTTP: Entendendo a web por baixo dos panos
-
Formação Django: crie aplicações em Python
-
Formação Django REST APIs: crie aplicações REST em Python
-
Podcast Testes Automatizados – Hipsters #51
-
Curso TDD no Django 3: Desenvolvimento guiado por testes
-
Formação Iniciando com Engenharia de Dados
-
Formação Dominando o Power BI
-
Formação Começando com Linux
-
Curso Docker: criando e gerenciando containers
-
Formação SQL com PostgreSQL
-
Formação Microsoft SQL Server 2022
-
Formação Engenharia de software
-
Site SRE II: Bases para engenharia de Software por ISABELA NAYARA DE OLIVEIRA E SILVA | Alura - Cursos online de tecnologia
-
Formação MongoDB
-
Curso MongoDB: validando dados
-
Formação Modelagem de dados
-
Curso Modelagem de banco de dados: NoSQL
-
Curso MongoDB: modelagem de dados
-
Curso Modelagem MongoDB: relacionamentos e cardinalidade
-
Formação Apache Spark com Python
-
Formação Apache Airflow
-
Formação Mensageria com Apache Kafka
-
Podcast A linguagem Go – Hipsters #67
-
Formação Linguagem Go
-
Artigo Criando uma simples aplicação web com GO
-
Curso JavaScript para Web: Crie páginas dinâmicas
-
Curso JavaScript: manipulando o DOM
-
Curso HTML e CSS: ambientes de desenvolvimento, estrutura de arquivos e tags
-
Formação Desenvolva aplicações Web com JavaScript
-
Formação Melhore sua experiência de desenvolvimento com TypeScript
-
Curso React: desenvolvendo com JavaScript
-
Curso React: praticando React com Js
-
Formação Desenvolva seu primeiro app com React Native
-
Formação Gerencie aplicações React com Typescript
-
Formação Começando em DevOps
-
Formação DevOps
-
Formação Começando em Cloud Computing
-
Formação Começando na AWS com Lightsail, EC2, S3, VPC, RDS e DynamoDB
-
Formação Containers com AWS ECS e EKS
-
Formação Amazon Web Services
-
Formação Segurança Ofensiva
-
Formação Segurança Defensiva
-
Formação Certificação AWS Certified Cloud Practitioner
-
Formação Certificação Certified Solutions Architect - Associate
-
Formação Certificação Google Certified Associate Cloud Engineer
-
Formação Google Cloud Platform
-