Detonando na entrevista de Systems Design
Como se preparar para entrevistas de emprego de desenvolvimento de software
Description
Este é um curso para desenvolvedores experientes que buscam novas oportunidades de emprego, ou seja, não é para iniciantes ou estudantes, embora possa ensinar conceitos importantes.
Atenção:
Não é um curso para iniciantes em programação e infraestrutura. Requer algum conhecimento e experiência com aplicações, servidores e Linux.
O curso é ministrado utilizando ambiente Linux (Debian). Se você utiliza MS Windows ou MacOS, podem haver diferenças. Na medida do possível, eu explico algumas dessas diferenças, mas vale a afirmação: O curso é voltado para Linux.
Para melhor experiência de aprendizado, é importante já possuir alguma experiência como desenvolvedor profissional.
Hoje em dia há muitas oportunidades para desenvolvedores de software, inclusive em empresas estrangeiras e trabalhando remotamente, o que é muito bom. Porém, também há muito mais desenvolvedores buscando oportunidades, portanto, as entrevistas estão ficando mais e mais difíceis.
Para conseguir uma boa oportunidade é necessário saber os 3 fundamentos da engenharia de software:
- Algoritmos e estruturas de dados
- Arquitetura de software
- Sistemas operacionais e redes
A parte de algoritmos e estruturas de dados eu trato no meu outro curso aqui na Udemy: Detonando no code challenge com python e java.
Conhecer bem arquitetura de software na prática, ou seja, como desenhar soluções escaláveis e de alto desempenho, é um requisito fundamental e é o objeto deste curso.
O processo seletivo para pessoal de alto nível em TI (Desenvolvedores, Devops e SRE – Site Reliability Engineer) envolve conhecimento prático de arquitetura, operação e otimização de infraestrutura de processamento, seja em ambiente de nuvem ou “on premises”. Geralmente, no caso de desenvolvedores, este processo é composto pelas etapas:
1 – Fit interview;
2 – Code challenge;
3 – Systems design;
4 – Entrevista gerencial;
Se você chegar à quarta etapa, considere-se uma pessoa bem sucedida e com grandes chances de conseguir a vaga.
Cada etapa tem objetivos, pessoas e formato específicos. Por exemplo, a parte de algoritmos e estruturas de dados é questionada na entrevista de code challenge e a parte de arquitetura e infraestrutura é tratata na systems design interview (entrevista de projeto de sistemas).
Este curso lhe ajudará a conhecer este tipo de entrevista com exemplos reais e participar de entrevistas e casos de estudo simulados, para lhe preparar para uma carreira de sucesso no emprego dos seus sonhos.
É claro que, no caso de empresas estrangeiras, o inglês é muito importante, portanto, recomendo desde já que você estude e pratique conversação em inglês.
E por que eu posso lhe ajudar? Para começar, sou um profissional muito experiente, com mais de 45 anos de profissão e também sou professor universitário, onde lecionei muitos anos, em cursos de gratuação e pós-graduação em TI. E, finalmente, já passei em diversas entrevistas deste tipo e atualmente trabalho em uma empresa estrangeira.
Se isso não bastar, tem o fato de que eu mesmo já entrevistei diversos candidatos para vagas de desenvolvimento.
What You Will Learn!
- Elaborar soluções para problemas arquiteturais em software
- Analisar problemas propostos e discutir aspectos de escalabilidade e desempenho
- Entender e conseguir passar em entrevistas do tipo Systems Design
- Vender propostas técnicas para técnicos e leigos
Who Should Attend!
- Desenvolvedores de software que buscam novas oportunidades no mercado de trabalho