diff --git a/Levels/l2.md b/Levels/l2.md index 4bc5fdb..d976f44 100644 --- a/Levels/l2.md +++ b/Levels/l2.md @@ -1,16 +1,16 @@ # Nível L2 - Júnior **Resumo do perfil** -: Se tornando sólido no desenvolvimento de software, o L2 é curioso e empenhado em aprender. -: Combina conhecimento técnico com entusiasmo para crescer, focando no desenvolvimento de habilidades fundamentais e em solidificar os princípios de engenharia de software. -: Valoriza a orientação e feedback, utilizando-os para aprimorar suas habilidades e contribuições. -: Engaja-se em tarefas de codificação, com suporte, mas já compreendendo os objetivos da equipe e da empresa. -: Reconhece o seu impacto para o negócio, executando com autonomia acompanhado de supervisão. -: Adaptável e aberto a novas aprendizagens, com uma abordagem proativa para superar desafios. +: Se tornando sólido no desenvolvimento de software, o L2 é curioso e empenhado em aprender. +: Combina conhecimento técnico com entusiasmo para crescer, focando no desenvolvimento de habilidades fundamentais e em solidificar os princípios de engenharia de software. +: Valoriza a orientação e feedback, utilizando-os para aprimorar suas habilidades e contribuições. +: Engaja-se em tarefas de codificação, com suporte, mas já compreendendo os objetivos da equipe e da empresa. +: Reconhece o seu impacto para o negócio, executando com autonomia acompanhado de supervisão. +: Adaptável e aberto a novas aprendizagens, com uma abordagem proativa para superar desafios. **Típica experiência prévia** -: Normalmente alguém com 2 a 4 anos de experiência relevante no mercado. -: Contribuidor individual: SWE e Data Engineer, Analyst ou Science. +: Normalmente alguém com 2 a 4 anos de experiência relevante no mercado. +: Contribuidor individual: SWE e Data Engineer, Analyst ou Science. ___ @@ -66,64 +66,63 @@ ___ ### Hard Skills **Engenharia** -: Desenvolve habilidades em uma linguagem de programação com foco em fundamentos. -: Introdução a design patterns e quando aplicá-los. -: Iniciação a testes automatizados para entender a importância de TDD e testes unitários. -: Fundamentos de algoritmos e estruturas de dados (listas, árvores, mapas). -: Compreensão básica de banco de dados e operações simples. -: Noções introdutórias de conceitos de cloud e práticas de infraestrutura como código. -: Entendimento inicial de conceitos de cache e fila para aplicações. -: Familiaridade com conceitos básicos de sistemas distribuídos e segurança de aplicações. +: Desenvolve habilidades em uma linguagem de programação com foco em fundamentos. +: Introdução a design patterns e quando aplicá-los. +: Iniciação a testes automatizados para entender a importância de TDD e testes unitários. +: Fundamentos de algoritmos e estruturas de dados (listas, árvores, mapas). +: Compreensão básica de banco de dados e operações simples. +: Noções introdutórias de conceitos de cloud e práticas de infraestrutura como código. +: Entendimento inicial de conceitos de cache e fila para aplicações. +: Familiaridade com conceitos básicos de sistemas distribuídos e segurança de aplicações. **Engenharia de Dados** -: Desenvolve habilidades em uma linguagem de programação com foco em dados. -: Introdução a design patterns e quando aplicá-los. -: Iniciação a testes automatizados para entender a importância de TDD e testes unitários. -: Fundamentos de algoritmos e estruturas de dados (listas, árvores, mapas). -: Compreensão básica de banco de dados e operações simples. -: Noções introdutórias de conceitos de cloud e práticas de infraestrutura como código. -: Entendimento inicial de conceitos de cache e fila para aplicações. -: Familiaridade com conceitos básicos de sistemas distribuídos e segurança de aplicações. -: Familiaridade com conceitos básicos de ingestão, processamento e consulta de dados +: Desenvolve habilidades em uma linguagem de programação com foco em dados. +: Introdução a design patterns e quando aplicá-los. +: Iniciação a testes automatizados para entender a importância de TDD e testes unitários. +: Fundamentos de algoritmos e estruturas de dados (listas, árvores, mapas). +: Compreensão básica de banco de dados e operações simples. +: Noções introdutórias de conceitos de cloud e práticas de infraestrutura como código. +: Entendimento inicial de conceitos de cache e fila para aplicações. +: Familiaridade com conceitos básicos de sistemas distribuídos e segurança de aplicações. +: Familiaridade com conceitos básicos de ingestão, processamento e consulta de dados **Analista de dados** -: Compreensão da sintaxe SQL e consultas básicas -: Experiência com tipos de dados diretos (por exemplo, inteiros, strings) -: Manipulação básica de tipos de dados mais complexos (arrays, maps, rows, JSONs) -: Capacidade de ordenar e filtrar dados de maneira eficaz -: Proficiência em realizar joins diretos e indiretos -: Familiaridade com window functions básicas -: Compreensão de dados ausentes e como lidar com eles -: Capacidade de manipular dados de várias fontes -: Compreensão da qualidade e integridade dos dados -: Familiaridade com perfis de dados e análise exploratória de dados -: Proficiência em criar gráficos básicos (por exemplo, barra, linha) -: Proficiência em operações básicas do Git (commit, push, pull) -: Proficiência no uso do Git e GitHub -: Compreensão dos conceitos de controle de versão +: Compreensão da sintaxe SQL e consultas básicas +: Experiência com tipos de dados diretos (por exemplo, inteiros, strings) +: Manipulação básica de tipos de dados mais complexos (arrays, maps, rows, JSONs) +: Capacidade de ordenar e filtrar dados de maneira eficaz +: Proficiência em realizar joins diretos e indiretos +: Familiaridade com window functions básicas +: Compreensão de dados ausentes e como lidar com eles +: Capacidade de manipular dados de várias fontes +: Compreensão da qualidade e integridade dos dados +: Familiaridade com perfis de dados e análise exploratória de dados +: Proficiência em criar gráficos básicos (por exemplo, barra, linha) +: Proficiência em operações básicas do Git (commit, push, pull) +: Proficiência no uso do Git e GitHub +: Compreensão dos conceitos de controle de versão **DevOps** -: Comandos básicos e administração de sistema. -: Script básico em Shell (Bash). -: Conhecimento básico de contêineres. -: Criação e gerenciamento de imagens Docker. -: Uso básico de comandos Git. -: Trabalho com branches e merges. -: Configuração básica de workflows. -: Compreensão básica de serviços de nuvem (EC2, S3). -: Criação e gerenciamento de instâncias. -: Conhecimento básico de SQL. -: Operações básicas de banco de dados. -: Conhecimento básico de conceitos (pods, serviços). -: Uso de comandos kubectl básicos. -: Configuração básica de dashboards. -: Noções básicas de monitoramento. -: Conceitos básicos de criptografia e segurança. +: Comandos básicos e administração de sistema. +: Script básico em Shell (Bash). +: Conhecimento básico de contêineres. +: Criação e gerenciamento de imagens Docker. +: Uso básico de comandos Git. +: Trabalho com branches e merges. +: Configuração básica de workflows. +: Compreensão básica de serviços de nuvem (EC2, S3). +: Criação e gerenciamento de instâncias. +: Conhecimento básico de SQL. +: Operações básicas de banco de dados. +: Conhecimento básico de conceitos (pods, serviços). +: Uso de comandos kubectl básicos. +: Configuração básica de dashboards. +: Noções básicas de monitoramento. +: Conceitos básicos de criptografia e segurança. ___ > [!TIP] -> [System Design Primer](https://github.com/donnemartin/system-design-primer -) -> 📚 Clean Code: A Handbook of Agile Software Craftsmanship -> 📚 Design Patterns: Elements of Reusable Object-Oriented Software +> [System Design Primer](https://github.com/donnemartin/system-design-primer) +> 📚 Clean Code: A Handbook of Agile Software Craftsmanship +> 📚 Design Patterns: Elements of Reusable Object-Oriented Software diff --git a/Levels/l3.md b/Levels/l3.md index c356f3e..7dc50e9 100644 --- a/Levels/l3.md +++ b/Levels/l3.md @@ -1,15 +1,15 @@ # Nível L3 - Pleno -**Resumo do perfil** -: Autonomia e consistência são duas palavras que ajudam a descrever o L3 -: Equilibra habilidade técnica sólida com uma visão estratégica, destacando-se na produção de código de alta qualidade e na solução de desafios -: Exemplifica colaboração, impulsionando melhorias na equipe e na prática de desenvolvimento, ao mesmo tempo que mantém um forte alinhamento com os objetivos do negócio -: Com o seu conhecimento do negócio e visão estratégica em formação, já possui a capacidade de criticar as soluções de forma propositiva, amadurecendo o olhar analítico -: Comunica eficazmente conceitos técnicos a uma audiência diversificada, promovendo uma cultura de aprendizado contínuo e inovação +**Resumo do perfil** +: Autonomia e consistência são duas palavras que ajudam a descrever o L3 +: Equilibra habilidade técnica sólida com uma visão estratégica, destacando-se na produção de código de alta qualidade e na solução de desafios +: Exemplifica colaboração, impulsionando melhorias na equipe e na prática de desenvolvimento, ao mesmo tempo que mantém um forte alinhamento com os objetivos do negócio +: Com o seu conhecimento do negócio e visão estratégica em formação, já possui a capacidade de criticar as soluções de forma propositiva, amadurecendo o olhar analítico +: Comunica eficazmente conceitos técnicos a uma audiência diversificada, promovendo uma cultura de aprendizado contínuo e inovação : Entende as mudanças e se adapta com facilidade -**Típica experiência prévia** -: Normalmente alguém com 4 a 7 anos de experiência relevante no mercado. +**Típica experiência prévia** +: Normalmente alguém com 4 a 7 anos de experiência relevante no mercado. : Contribuidor individual: SWE e Data Engineer, Analyst ou Science ___ @@ -69,79 +69,79 @@ ___ ### Hard Skills **Engenharia** -: Conhecimento profundo em pelo menos 1 linguagem de programação -: Design patterns, casos de uso e não uso -: Testes automatizados (TDD, e2e) -: Sólidos conhecimentos de algoritmos (lista, árvore, mapa…) -: Conhecimento sólido de conceitos de banco de dados -: Conhecimento básico de cloud e infra-as-code -: Conhecimento de cache básicos (Quando usar, como usar, quais ferramentas usar) -: Conhecimento de fila básicos (Quando usar, como usar, quais ferramentas usar) -: Conhecimentos básicos de sistemas distribuídos -: Conhecimentos básicos de aplicação segura (OWASP top 10) +: Conhecimento profundo em pelo menos 1 linguagem de programação +: Design patterns, casos de uso e não uso +: Testes automatizados (TDD, e2e) +: Sólidos conhecimentos de algoritmos (lista, árvore, mapa…) +: Conhecimento sólido de conceitos de banco de dados +: Conhecimento básico de cloud e infra-as-code +: Conhecimento de cache básicos (Quando usar, como usar, quais ferramentas usar) +: Conhecimento de fila básicos (Quando usar, como usar, quais ferramentas usar) +: Conhecimentos básicos de sistemas distribuídos +: Conhecimentos básicos de aplicação segura (OWASP top 10) : Automação de processos (CI/CD) -**Engenharia de Dados** -: Conhecimento profundo em linguagem de programação com foco em dados -: Design patterns, casos de uso e não uso -: Testes automatizados (TDD, e2e) -: Sólidos conhecimentos de algoritmos (lista, árvore, mapa…) -: Conhecimento sólido de conceitos de banco de dados -: Conhecimento básico de cloud e infra-as-code -: Conhecimento de cache básicos -: Conhecimento de fila básicos -: Conhecimentos básicos de sistemas distribuídos -: Conhecimentos básicos de aplicação segura (OWASP top 10) -: Automação de processos (CI/CD) -: Conhecimento básico em streaming de dados -: Conhecimento básico em ferramentas de workflow de dados -: Conhecimento básico em LakeHouse (formatos modernos de tabelas) -: Conhecimento básico em processamento de dados distribuído +**Engenharia de Dados** +: Conhecimento profundo em linguagem de programação com foco em dados +: Design patterns, casos de uso e não uso +: Testes automatizados (TDD, e2e) +: Sólidos conhecimentos de algoritmos (lista, árvore, mapa…) +: Conhecimento sólido de conceitos de banco de dados +: Conhecimento básico de cloud e infra-as-code +: Conhecimento de cache básicos +: Conhecimento de fila básicos +: Conhecimentos básicos de sistemas distribuídos +: Conhecimentos básicos de aplicação segura (OWASP top 10) +: Automação de processos (CI/CD) +: Conhecimento básico em streaming de dados +: Conhecimento básico em ferramentas de workflow de dados +: Conhecimento básico em LakeHouse (formatos modernos de tabelas) +: Conhecimento básico em processamento de dados distribuído : Conhecimento básico em ingestão, processamento e consulta de dados -**Analista de dados** -: Capacidade de trabalhar eficientemente com grandes conjuntos de dados -: Capacidade de usar subconsultas e window functions -: Capacidade de otimizar consultas para desempenho -: Experiência com design e normalização de banco de dados -: Proficiência em técnicas de limpeza de dados -: Capacidade de lidar com dados desordenados e não estruturados -: Familiaridade com transformação de dados e engenharia de features -: Compreensão de técnicas de pré-processamento de dados -: Proficiência em criar visualizações interativas -: Capacidade de criar gráficos e diagramas complexos -: Compreensão de storytelling com dados e melhores práticas em visualização de dados -: Proficiência em estratégias de branching e merge -: Capacidade de resolver conflitos de merge +**Analista de dados** +: Capacidade de trabalhar eficientemente com grandes conjuntos de dados +: Capacidade de usar subconsultas e window functions +: Capacidade de otimizar consultas para desempenho +: Experiência com design e normalização de banco de dados +: Proficiência em técnicas de limpeza de dados +: Capacidade de lidar com dados desordenados e não estruturados +: Familiaridade com transformação de dados e engenharia de features +: Compreensão de técnicas de pré-processamento de dados +: Proficiência em criar visualizações interativas +: Capacidade de criar gráficos e diagramas complexos +: Compreensão de storytelling com dados e melhores práticas em visualização de dados +: Proficiência em estratégias de branching e merge +: Capacidade de resolver conflitos de merge : Experiência com processos de revisão de código -**DevOps** -: Administração avançada de sistemas. -: Automação de tarefas com scripts avançados. -: Criação e otimização de imagens complexas. -: Uso de Docker Compose. -: Fluxos de trabalho avançados com Git. -: Resolução de conflitos e estratégias de branching. -: Criação de workflows complexos e integração contínua. -: Implementação de infraestrutura como código (Terraform, CloudFormation). -: Gerenciamento de recursos avançados (RDS, IAM). -: Otimização de consultas. -: Backup e recuperação de bancos de dados. -: Gerenciamento de clusters. -: Configuração de deployments, statefulsets, e serviços avançados. -: Criação de alertas e monitoramento detalhado. -: Integração com diversas fontes de dados. -: Implementação de TLS/SSL. -: Noções de segurança em APIs e comunicação segura. -: Configuração e gerenciamento de tópicos. -: Monitoramento e otimização de desempenho. +**DevOps** +: Administração avançada de sistemas. +: Automação de tarefas com scripts avançados. +: Criação e otimização de imagens complexas. +: Uso de Docker Compose. +: Fluxos de trabalho avançados com Git. +: Resolução de conflitos e estratégias de branching. +: Criação de workflows complexos e integração contínua. +: Implementação de infraestrutura como código (Terraform, CloudFormation). +: Gerenciamento de recursos avançados (RDS, IAM). +: Otimização de consultas. +: Backup e recuperação de bancos de dados. +: Gerenciamento de clusters. +: Configuração de deployments, statefulsets, e serviços avançados. +: Criação de alertas e monitoramento detalhado. +: Integração com diversas fontes de dados. +: Implementação de TLS/SSL. +: Noções de segurança em APIs e comunicação segura. +: Configuração e gerenciamento de tópicos. +: Monitoramento e otimização de desempenho. : Implementação e gestão de funções serverless (AWS Lambda, Google Cloud Functions). ___ > [!TIP] -> [Occams Razor in Software Development](https://naveenkumarmuguda.medium.com/occams-razor-in-software-development-56ee3e8b8ce8) -> [Being a Software Engineer](https://www.kitchensoap.com/2012/10/25/on-being-a-senior-engineer/) -> [Simple Made Easy](https://www.infoq.com/presentations/Simple-Made-Easy) -> 📚 Clean Architecture: A Craftsman's Guide to Software Structure and Design -> 97 things every architect should know +> [Occams Razor in Software Development](https://naveenkumarmuguda.medium.com/occams-razor-in-software-development-56ee3e8b8ce8) +> [Being a Software Engineer](https://www.kitchensoap.com/2012/10/25/on-being-a-senior-engineer/) +> [Simple Made Easy](https://www.infoq.com/presentations/Simple-Made-Easy) +> 📚 Clean Architecture: A Craftsman's Guide to Software Structure and Design +> 97 things every architect should know diff --git a/Levels/l4.md b/Levels/l4.md index 63cead5..75b8cfe 100644 --- a/Levels/l4.md +++ b/Levels/l4.md @@ -1,15 +1,15 @@ # Nível L4 - Sênior **Resumo do perfil** -: O L4 é um pilar de conhecimento técnico e liderança dentro da equipe. -: Combina expertise técnica avançada com uma compreensão profunda dos objetivos de negócios, liderando pelo exemplo em inovação e solução de problemas complexos. -: Questiona o “Status quo” das decisões sempre de forma propositiva e essa postura já está intrínseca nesse perfil -: Atua como mentor, elevando a capacidade técnica da equipe e promovendo uma cultura de excelência e colaboração. -: Comunica visões técnicas complexas de forma clara, facilitando o entendimento mútuo e o avanço estratégico. +: O L4 é um pilar de conhecimento técnico e liderança dentro da equipe. +: Combina expertise técnica avançada com uma compreensão profunda dos objetivos de negócios, liderando pelo exemplo em inovação e solução de problemas complexos. +: Questiona o “Status quo” das decisões sempre de forma propositiva e essa postura já está intrínseca nesse perfil +: Atua como mentor, elevando a capacidade técnica da equipe e promovendo uma cultura de excelência e colaboração. +: Comunica visões técnicas complexas de forma clara, facilitando o entendimento mútuo e o avanço estratégico. : Adapta-se rapidamente a mudanças e lidera esforços para navegar por desafios técnicos e de negócios. **Típica experiência prévia** -: Normalmente alguém com 7 a 10 anos de experiência relevante no mercado. +: Normalmente alguém com 7 a 10 anos de experiência relevante no mercado. : Contribuidor individual: SWE e Data Engineer, Analyst ou Science ___ @@ -67,74 +67,74 @@ ___ ### Hard Skills **Engenharia** -: Domínio em múltiplas linguagens de programação e paradigmas de desenvolvimento. -: Expertise em design patterns, arquitetura de sistemas e microserviços. -: Proficiência em desenvolvimento orientado a testes (TDD), incluindo testes de integração e end-to-end. -: Avançados conhecimentos de algoritmos, estruturas de dados e otimização. -: Expertise em banco de dados, incluindo design, otimização e escalabilidade. -: Profundo conhecimento em cloud computing, arquitetura de sistemas distribuídos, e práticas de infraestrutura como código. -: Avançados conhecimentos em sistemas de cache e filas, estratégias de utilização e otimização. -: Liderança em práticas de segurança de aplicações, incluindo estratégias de defesa baseadas no OWASP Top 10. +: Domínio em múltiplas linguagens de programação e paradigmas de desenvolvimento. +: Expertise em design patterns, arquitetura de sistemas e microserviços. +: Proficiência em desenvolvimento orientado a testes (TDD), incluindo testes de integração e end-to-end. +: Avançados conhecimentos de algoritmos, estruturas de dados e otimização. +: Expertise em banco de dados, incluindo design, otimização e escalabilidade. +: Profundo conhecimento em cloud computing, arquitetura de sistemas distribuídos, e práticas de infraestrutura como código. +: Avançados conhecimentos em sistemas de cache e filas, estratégias de utilização e otimização. +: Liderança em práticas de segurança de aplicações, incluindo estratégias de defesa baseadas no OWASP Top 10. : Experiência com automação de processos, CI/CD, e otimização de workflows de desenvolvimento. **Engenharia de Dados** -: Domínio em múltiplas linguagens de programação e paradigmas de desenvolvimento. -: Proficiência em desenvolvimento orientado a testes (TDD), incluindo testes de integração e end-to-end. -: Avançados conhecimentos de algoritmos, estruturas de dados e otimização. -: Expertise em banco de dados, incluindo design, otimização e escalabilidade. -: Profundo conhecimento em cloud computing, armazenamento distribuído, arquitetura de sistemas distribuídos, e práticas de infraestrutura como código. -: Avançados conhecimentos em sistemas de cache e filas, estratégias de utilização e otimização. -: Liderança em práticas de segurança de aplicações, incluindo estratégias defensivas baseadas no OWASP Top 10. -: Experiência com automação de processos, CI/CD, e otimização de workflows de desenvolvimento. -: Conhecimento avançado em streaming de dados, ferramentas de workflow de dados, LakeHouse(formatos modernos de tabelas) e processamento de dados distribuído +: Domínio em múltiplas linguagens de programação e paradigmas de desenvolvimento. +: Proficiência em desenvolvimento orientado a testes (TDD), incluindo testes de integração e end-to-end. +: Avançados conhecimentos de algoritmos, estruturas de dados e otimização. +: Expertise em banco de dados, incluindo design, otimização e escalabilidade. +: Profundo conhecimento em cloud computing, armazenamento distribuído, arquitetura de sistemas distribuídos, e práticas de infraestrutura como código. +: Avançados conhecimentos em sistemas de cache e filas, estratégias de utilização e otimização. +: Liderança em práticas de segurança de aplicações, incluindo estratégias defensivas baseadas no OWASP Top 10. +: Experiência com automação de processos, CI/CD, e otimização de workflows de desenvolvimento. +: Conhecimento avançado em streaming de dados, ferramentas de workflow de dados, LakeHouse(formatos modernos de tabelas) e processamento de dados distribuído : Conhecimento avançado em ingestão, processamento e consulta de dados **Analista de dados** -: Proficiência em escrever consultas otimizadas -: Capacidade de ajustar consultas para desempenho -: Familiaridade com recursos avançados de SQL (por exemplo, consultas recursivas, pattern matching) -: Capacidade de projetar e implementar esquemas de banco de dados complexos -: Proficiência em limpeza e pré-processamento de dados -: Capacidade de lidar com big data e dados em streaming -: Experiência com orquestração de pipelines de dados -: Proficiência em pelo menos uma linguagem de programação além do SQL, geralmente Python e Bash -: Familiaridade com análise estatística e aprendizado de máquina -: Compreensão de conceitos de engenharia de dados -: Proficiência em operações avançadas do Git (rebase, cherry-pick) -: Familiaridade com pipelines de integração e entrega contínua (CI/CD) +: Proficiência em escrever consultas otimizadas +: Capacidade de ajustar consultas para desempenho +: Familiaridade com recursos avançados de SQL (por exemplo, consultas recursivas, pattern matching) +: Capacidade de projetar e implementar esquemas de banco de dados complexos +: Proficiência em limpeza e pré-processamento de dados +: Capacidade de lidar com big data e dados em streaming +: Experiência com orquestração de pipelines de dados +: Proficiência em pelo menos uma linguagem de programação além do SQL, geralmente Python e Bash +: Familiaridade com análise estatística e aprendizado de máquina +: Compreensão de conceitos de engenharia de dados +: Proficiência em operações avançadas do Git (rebase, cherry-pick) +: Familiaridade com pipelines de integração e entrega contínua (CI/CD) : Capacidade de projetar e implementar estratégias de branching **DevOps** -: Resolução de problemas complexos. -: Hardening de sistemas e segurança avançada. -: Design de arquiteturas baseadas em contêineres. -: Segurança em contêineres. -: Definição de estratégias de versionamento. -: Integração com ferramentas de CI/CD. -: Automação avançada de processos de release e deployment. -: Arquitetura de soluções escaláveis e resilientes. -: Gerenciamento de custos e otimização de recursos. -: Arquitetura de banco de dados para alta disponibilidade. -: Sharding e replicação de bancos de dados. -: Design e gestão de infraestrutura Kubernetes em larga escala. -: Implementação de soluções de alta disponibilidade e disaster recovery. -: Implementação de monitoramento e observabilidade em larga escala. -: Integração com sistemas de alerta e resposta a incidentes. -: Análise aprofundada de dados de performance. -: Otimização de aplicações baseada em métricas. -: Design de sistemas seguros. -: Auditoria de segurança e conformidade. -: Arquitetura de sistemas de mensageria de alta performance. -: Gerenciamento de clusters e tuning avançado. -: Design de arquiteturas serverless escaláveis. +: Resolução de problemas complexos. +: Hardening de sistemas e segurança avançada. +: Design de arquiteturas baseadas em contêineres. +: Segurança em contêineres. +: Definição de estratégias de versionamento. +: Integração com ferramentas de CI/CD. +: Automação avançada de processos de release e deployment. +: Arquitetura de soluções escaláveis e resilientes. +: Gerenciamento de custos e otimização de recursos. +: Arquitetura de banco de dados para alta disponibilidade. +: Sharding e replicação de bancos de dados. +: Design e gestão de infraestrutura Kubernetes em larga escala. +: Implementação de soluções de alta disponibilidade e disaster recovery. +: Implementação de monitoramento e observabilidade em larga escala. +: Integração com sistemas de alerta e resposta a incidentes. +: Análise aprofundada de dados de performance. +: Otimização de aplicações baseada em métricas. +: Design de sistemas seguros. +: Auditoria de segurança e conformidade. +: Arquitetura de sistemas de mensageria de alta performance. +: Gerenciamento de clusters e tuning avançado. +: Design de arquiteturas serverless escaláveis. : Integração de funções serverless com outras partes da infraestrutura. ___ > [!TIP] -> [Architecture Patterns](https://docs.microsoft.com/en-us/azure/architecture/patterns/) -> [Google SRE Workbook](https://sre.google/workbook/table-of-contents/) -> [Building Secure and Reliable Systems](https://static.googleusercontent.com/media/sre.google/en//static/pdf/building_secure_and_reliable_systems.pdf) -> 📚 The Manager Path -> 📚 Cracking the code interview +> [Architecture Patterns](https://docs.microsoft.com/en-us/azure/architecture/patterns/) +> [Google SRE Workbook](https://sre.google/workbook/table-of-contents/) +> [Building Secure and Reliable Systems](https://static.googleusercontent.com/media/sre.google/en//static/pdf/building_secure_and_reliable_systems.pdf) +> 📚 The Manager Path +> 📚 Cracking the code interview > 📚 Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems diff --git a/Levels/l5-staff.md b/Levels/l5-staff.md index be506f0..e2f4cde 100644 --- a/Levels/l5-staff.md +++ b/Levels/l5-staff.md @@ -1,15 +1,15 @@ # Nível L5 - Staff **Resumo do perfil** -: O L5, como especialista, tem uma compreensão profunda de tecnologias específicas, sendo essencial na solução de problemas complexos e no avanço técnico da equipe. -: Exerce um papel vital na orientação de decisões técnicas e estratégicas, equilibrando inovação com práticas comprovadas para maximizar eficiência e eficácia. -: Serve como mentor para outros engenheiros, promovendo uma cultura de aprendizado contínuo e excelência técnica. -: Adaptável e influente, molda ativamente a direção tecnológica e estratégica dos projetos, garantindo alinhamento com os objetivos de negócios globais. -: Desenvolve soluções que não apenas atendem às necessidades atuais, mas também antecipam desafios futuros. +: O L5, como especialista, tem uma compreensão profunda de tecnologias específicas, sendo essencial na solução de problemas complexos e no avanço técnico da equipe. +: Exerce um papel vital na orientação de decisões técnicas e estratégicas, equilibrando inovação com práticas comprovadas para maximizar eficiência e eficácia. +: Serve como mentor para outros engenheiros, promovendo uma cultura de aprendizado contínuo e excelência técnica. +: Adaptável e influente, molda ativamente a direção tecnológica e estratégica dos projetos, garantindo alinhamento com os objetivos de negócios globais. +: Desenvolve soluções que não apenas atendem às necessidades atuais, mas também antecipam desafios futuros. : Liderança pelo Exemplo: Inspira através da ação, estabelecendo um padrão de excelência que outros aspiram alcançar. **Típica experiência prévia** -: Normalmente alguém com 10 a 15 anos ou mais de experiência relevante no mercado. +: Normalmente alguém com 10 a 15 anos ou mais de experiência relevante no mercado. : Contribuidor individual: SWE e Data Engineer, Analyst ou Science ___ @@ -62,56 +62,56 @@ ___ ### Hard Skills **Engenharia** -: Domínio Técnico em Áreas Especializadas: Proficiência em tecnologias específicas que são críticas para os objetivos da empresa. -: Arquitetura e Design de Sistemas: Capacidade de projetar sistemas complexos que são escaláveis, seguros e eficientes. -: Análise e Otimização de Performance: Profundo entendimento de como otimizar processos e sistemas para maximizar a performance. -: Proficiência em ferramentas de automação -: Experiência avançada com Containerização e Orquestradores, incluindo a criação de ambientes complexos de microserviços, gerenciamento de clusters, e otimização de recursos. -: Conhecimento profundo de práticas de segurança, como a integração de verificações de segurança em pipelines CI/CD, gerenciamento de identidade e acesso, e resposta a incidentes de segurança. -: Habilidade para implementar políticas de segurança em cloud e ambientes on-premises. -: Habilidade para configurar alertas e dashboards para monitorar a saúde e performance dos sistemas. -: Capacidade de projetar e manter pipelines de CI/CD que garantam entregas contínuas e rápidas de código de alta qualidade. -: Conhecimento avançado de redes, incluindo roteamento, switching, firewalls, e VPNs. +: Domínio Técnico em Áreas Especializadas: Proficiência em tecnologias específicas que são críticas para os objetivos da empresa. +: Arquitetura e Design de Sistemas: Capacidade de projetar sistemas complexos que são escaláveis, seguros e eficientes. +: Análise e Otimização de Performance: Profundo entendimento de como otimizar processos e sistemas para maximizar a performance. +: Proficiência em ferramentas de automação +: Experiência avançada com Containerização e Orquestradores, incluindo a criação de ambientes complexos de microserviços, gerenciamento de clusters, e otimização de recursos. +: Conhecimento profundo de práticas de segurança, como a integração de verificações de segurança em pipelines CI/CD, gerenciamento de identidade e acesso, e resposta a incidentes de segurança. +: Habilidade para implementar políticas de segurança em cloud e ambientes on-premises. +: Habilidade para configurar alertas e dashboards para monitorar a saúde e performance dos sistemas. +: Capacidade de projetar e manter pipelines de CI/CD que garantam entregas contínuas e rápidas de código de alta qualidade. +: Conhecimento avançado de redes, incluindo roteamento, switching, firewalls, e VPNs. : Experiência com estratégias de backup e recuperação de desastres. **Engenharia de Dados** -: Conhecimento avançados em múltiplas linguagens de programação e paradigmas de desenvolvimento. -: Conhecimentos avançados em desenvolvimento orientado a testes (TDD), incluindo testes de integração e end-to-end. -: Experiência avançada com Containerização e Orquestradores, incluindo a criação de ambientes complexos de microserviços, gerenciamento de clusters, e otimização de recursos. -: Habilidade para implementar políticas de segurança em cloud -: Capacidade de projetar e manter pipelines de CI/CD que garantam entregas contínuas e rápidas de código de alta qualidade. -: Cochecimento avançado em cloud computing, armazenamento distribuído, arquitetura de sistemas distribuídos, e práticas de infraestrutura como código. -: Conhecimento avançado em streaming de dados, ferramentas de workflow de dados, LakeHouse(formatos modernos de tabelas) e processamento de dados distribuído -: Conhecimento avançado em ingestão, processamento e consulta de dados -: Conchecimento avançado em arquiteturas de dados Lambda, Kappa e Data Mash +: Conhecimento avançados em múltiplas linguagens de programação e paradigmas de desenvolvimento. +: Conhecimentos avançados em desenvolvimento orientado a testes (TDD), incluindo testes de integração e end-to-end. +: Experiência avançada com Containerização e Orquestradores, incluindo a criação de ambientes complexos de microserviços, gerenciamento de clusters, e otimização de recursos. +: Habilidade para implementar políticas de segurança em cloud +: Capacidade de projetar e manter pipelines de CI/CD que garantam entregas contínuas e rápidas de código de alta qualidade. +: Cochecimento avançado em cloud computing, armazenamento distribuído, arquitetura de sistemas distribuídos, e práticas de infraestrutura como código. +: Conhecimento avançado em streaming de dados, ferramentas de workflow de dados, LakeHouse(formatos modernos de tabelas) e processamento de dados distribuído +: Conhecimento avançado em ingestão, processamento e consulta de dados +: Conchecimento avançado em arquiteturas de dados Lambda, Kappa e Data Mash : Conhecimento em multcloud e seus principais serviços de dados **Analista de dados** -: Conhece as nuances de diferentes dialetos SQL e pode aplicar melhores práticas em diferentes sistemas de banco de dados -: Capacidade de projetar e otimizar esquemas de banco de dados para desempenho e escalabilidade -: Familiaridade com recursos avançados de banco de dados (por exemplo, particionamento, indexação, views materializadas) -: Proficiência em várias linguagens de programação -: Familiaridade com análise estatística avançada e técnicas de aprendizado de máquina -: Compreensão de computação distribuída e tecnologias de big data -: Capacidade de projetar e implementar estratégias para sistemas de controle de versão -: Familiaridade com automação de revisão de código e processos de garantia de qualidade -: Conhecimento de melhores práticas de segurança em sistemas de controle de versão -: Capacidade de orientar e treinar membros juniores da equipe -: Experiência em liderar projetos e iniciativas técnicas -: Fortes habilidades de comunicação para colaborar com equipes multifuncionais -: Capacidade de apresentar conceitos técnicos a stakeholders não técnicos -: Capacidade de projetar e implementar arquiteturas de dados -: Experiência com modelagem de dados e otimização de banco de dados +: Conhece as nuances de diferentes dialetos SQL e pode aplicar melhores práticas em diferentes sistemas de banco de dados +: Capacidade de projetar e otimizar esquemas de banco de dados para desempenho e escalabilidade +: Familiaridade com recursos avançados de banco de dados (por exemplo, particionamento, indexação, views materializadas) +: Proficiência em várias linguagens de programação +: Familiaridade com análise estatística avançada e técnicas de aprendizado de máquina +: Compreensão de computação distribuída e tecnologias de big data +: Capacidade de projetar e implementar estratégias para sistemas de controle de versão +: Familiaridade com automação de revisão de código e processos de garantia de qualidade +: Conhecimento de melhores práticas de segurança em sistemas de controle de versão +: Capacidade de orientar e treinar membros juniores da equipe +: Experiência em liderar projetos e iniciativas técnicas +: Fortes habilidades de comunicação para colaborar com equipes multifuncionais +: Capacidade de apresentar conceitos técnicos a stakeholders não técnicos +: Capacidade de projetar e implementar arquiteturas de dados +: Experiência com modelagem de dados e otimização de banco de dados : Capacidade de projetar frameworks para a infraestrutura de dados da organização **DevOps** -: Domínio de ferramentas CI/CD como Jenkins, Github Actions -: Conhecimento avançado de redes, incluindo roteamento, switching, firewalls, e VPNs. -: Proficiência em bancos de dados SQL e NoSQL, incluindo a administração e otimização de sistemas de bancos de dados. -: Experiência com estratégias de backup e recuperação de desastres. -: Experiência com ferramentas de monitoramento e logging como Prometheus, Grafana, ELK Stack (Elasticsearch, Logstash, Kibana). -: Conhecimento avançado em ferramentas de IaC como Terraform, AWS CloudFormation -: Experiência avançada com Docker e Kubernetes +: Domínio de ferramentas CI/CD como Jenkins, Github Actions +: Conhecimento avançado de redes, incluindo roteamento, switching, firewalls, e VPNs. +: Proficiência em bancos de dados SQL e NoSQL, incluindo a administração e otimização de sistemas de bancos de dados. +: Experiência com estratégias de backup e recuperação de desastres. +: Experiência com ferramentas de monitoramento e logging como Prometheus, Grafana, ELK Stack (Elasticsearch, Logstash, Kibana). +: Conhecimento avançado em ferramentas de IaC como Terraform, AWS CloudFormation +: Experiência avançada com Docker e Kubernetes : Experiência em práticas GitOps ___ diff --git a/README.md b/README.md index f423edc..132c2a9 100644 --- a/README.md +++ b/README.md @@ -22,30 +22,30 @@ Em nossa estrutura, diferenciamos entre *níveis* e *papéis*. Importante notar Leia sobre cada level [AQUI](./Levels/README.md) **Técnico** -: SWE -: Data Engineer -: Data Analyst -: Data Science -: Staff Engineer -: Principal Engineer +: SWE +: Data Engineer +: Data Analyst +: Data Science +: Staff Engineer +: Principal Engineer **Gestão** -: Tech Manager -: Director of Engineering -: VP -: CTO +: Tech Manager +: Director of Engineering +: VP +: CTO ## Características Observadas em cada Level Estabelecemos também definições comportamentais para um SWE ou um Data Analyst / Science na Kovi, sendo skills muito relacionados ao dia a dia. São cruciais para a evolução e maturidade do profissional, contribuindo fortemente para sua ascensão profissional. São eles: -1. Ação -2. Planejamento -3. Reporting -4. Fórum -5. Feedback -6. Autodesenvolvimento +1. ⚙️ Ação +2. 👨‍💻 Planejamento +3. 📆 Reporting +4. 📢 Fórum +5. 💬 Feedbacks +6. 🌱 Autodesenvolvimento > [!TIP] > Leia também sobre as características e como elas se correlacionam com [AQUI](./characteristics.md) @@ -57,7 +57,7 @@ São cruciais para a evolução e maturidade do profissional, contribuindo forte A ideia de um framework nasceu para possibilitar maior direcionamento e independência na evolução de todos. O framework esta sempre em constante evolução, o que significa que novos itens podem ser adicionados. Apesar da adição, os níveis continuam representados por levels e em cada level uma expectativa de desenvolvimento. -[Framework de Aplicação](./framework.md) +[Framework de Aplicação](./framework.md) [Exemplo na prática](./example.md) ## Evolução diff --git a/framework.md b/framework.md index 7e3369e..d7dc441 100644 --- a/framework.md +++ b/framework.md @@ -14,7 +14,7 @@ Os cabeçalhos é quanto valor isso soma a complexidade do projeto. | Tamanho do escopo | Um domínio da squad | Múltiplos domínios dentro da mesma squad | Domínios envolvendo várias squads | | Prazos | Não existe um deadline definido, por mais que possa ser a próxima tarefa e ser rápida, o atraso em um prazo equivalente ao da realização não é um impeditivo de ação de negócios | O deadline é definido e é em um prazo apertado para o tamanho da tarefa, porém pode ser negociado o deadline no caso de encontrar barreiras não antes entendidas | O deadline é definido com prazo apertado para o tamanho da tarefa e um atraso representa um impacto significativo no negócio. Quando imprevistos acontecem são feitas mudanças e war rooms para fazer caber no prazo | | Maturidade da solução | Quanto a área de negócio e produto definem exatamente a modificação a ser realizada em qual produto | Quando a área de negócios e produto sabem qual o problema e solução, mas não estão certos de quais mudanças são necessárias para atender | Quando a área de negócios e produto entendem o problema, mas não sabem um bom caminho para a solução e descobrir faz parte da iniciativa | -| Risco | Não tem um impacto para o usuário final, mas pode atrapalhar ou deixar mais lento um processo interno, sendo que ele ainda consiga ser executado | Tem um impacto em uma funcionalidade específica, mas não impede acesso a outros ítens | Impede o uso completo da ferramenta para um motorista ou bloqueia um processo operacional importante para algo interno | +| Risco | Não tem um impacto para o usuário final, mas pode atrapalhar ou deixar mais lento um processo interno, sendo que ele ainda consiga ser executado | Tem um impacto em uma funcionalidade específica, mas não impede acesso a outros itens | Impede o uso completo da ferramenta para um motorista ou bloqueia um processo operacional importante para algo interno | | Familiaridade tecnológica | A squad já trabalha com a ferramenta/solução utilizada por mais de um semestre | A squad já trabalha com ferramenta equivalente nesse semestre | A squad nunca trabalhou com a ferramenta/solução nem um equivalente dela | ## Matriz de Complexidade