Experiência de ensino em uma escola de desenvolvimento ou por que você precisa ir para a escola depois da universidade

O Digital Design foi uma das primeiras empresas a usar .NET e C # em seu trabalho e se tornou o centro de treinamento oficial da Microsoft. A educação e o design digital andaram de mãos dadas ao longo da nossa história: temos uma universidade de TI, administramos constantemente escolas, somos o parceiro de ouro da Microsoft desde 95, temos treinadores certificados.

Quando lançamos a primeira escola de desenvolvimento, os problemas com as qualificações do pessoal eram completamente diferentes, ou melhor, havia um problema de sua ausência, bem como a falta das informações necessárias. Agora, a Microsoft está promovendo ativamente sua tecnologia e investindo em treinamento; portanto, se uma pessoa quiser, ela mesma poderá encontrar todas as informações e se tornar um programador. Somos visitados por especialistas que possuem as tecnologias que usamos em nosso trabalho, mas para incorporá-las rapidamente à prática, precisávamos de uma ferramenta - o objetivo de organizar uma escola de desenvolvimento foi gradualmente transformado.



Por que eu e por que a escola de desenvolvimento


Meu nome é Suren, e este não é o meu primeiro artigo sobre Habré (também há sobre .NET e Sitefinity ), mas hoje quero falar sobre minha experiência de ensino. Ao longo de 9 anos de desenvolvimento, adquiri muita experiência que queria compartilhar. Ao mesmo tempo, pareceu-me que o trabalho com estagiários nem sempre era construído da maneira mais eficiente possível, porque durante o dia de trabalho não era possível alocar tempo suficiente para o treinamento estruturado.

O outro extremo é o ensino universitário, que requer educação especializada (√ pronto!), Um enorme desejo de ensinar e compartilhar experiências práticas (√), falta de trabalho principal / horário livre (X), amor pelo conhecimento acadêmico (XX) e muito tempo de preparação (XXX).

Como resultado, a escola de desenvolvimento .NET baseada na Digital Design IT University se tornou a opção ideal para mim e, para mim, para iniciantes . E, o mais importante, para a empresa: graças à escola, conseguimos escolher o melhor pessoal, treiná-lo e, por assim dizer, transformá-lo em trabalho.

Preparação para a escola


Se você não ensinou antes ou não deseja seguir programas prontos, precisará gastar 3-4 vezes mais tempo para se preparar para a palestra do que para a própria palestra. Também decidi não seguir o caminho trilhado e tornar o programa relevante: com as últimas fichas, dicas e sugestões, porque um bom professor de TI tem mais experiência do que conhecimento (conhecimento agora é mais sobre o Google: provavelmente não há especialistas que escrever código sem internet). Além disso, trabalhar com um público preparado é um pouco mais difícil, porque você nem sempre entende em que nível navegar; portanto, na primeira escola, decidi me concentrar nas informações que recebi durante o trabalho, referindo-se a conceitos e termos gerais.

E ainda um pouco de teoria


Eu me preparei completamente para a primeira palestra, pensando no plano e fazendo esboços do que eu precisava dizer. No final do meu relatório claro, percebi que apenas 10 minutos haviam se passado e era hora de começar uma pura improvisação. Eu rapidamente percebi que os alunos nos procuram antes de tudo por exemplos e casos reais - então, rapidamente passamos a dicas sobre nomes, estrutura de banco de dados, como encaminhar dados para frente e para trás. Nas últimas 3-4 lições, fomos a mini-master classes: eu codifiquei com os alunos, parando com explicações e perguntas. Por exemplo, aqui nos conectamos usando para usar os métodos ou propriedades que precisamos, aqui conectamos uma biblioteca adicional via NuGet para interagir com o banco de dados como um conjunto de entidades. Então ficou claro que a eficácia de tais lições é máxima,mas sua intensidade não permite que os alunos percebam todas as informações na íntegra. Eu tive que mudar o foco, tipos alternativos de informação, etc. Depende muito dos alunos: se você não dedicar um tempo para estudar de forma independente e se lembrar de tudo o que estava na lição, não obterá o resultado.

Vamos seguir praticando


Obviamente, a teoria é útil: você não pode começar a praticar sem o conhecimento básico da terminologia, mas, devido aos curtos períodos de treinamento, tivemos que escolher um sotaque! De fato, acontece que, para a lição, fornecemos o máximo de material, e algumas pessoas são filtradas, mas quem chega à empresa como estagiário já aprendeu realmente o material e está pronto para trabalhar. Mas nosso objetivo é obter a melhor equipe, para que o nível de educação e as expectativas dos alunos sejam muito altos!

Muitas vezes, a educação peca o isolamento das tarefas aplicadas, e rapidamente percebi que, mesmo mostrando o trabalho em exemplos concretos, os alunos nem sempre entendem como usá-lo mais tarde. Além disso, se, no final do curso, você espera que os alunos tenham um nível de conhecimento suficiente para criar um aplicativo simples, precisará seguir esse caminho com eles pelo menos uma vez. Portanto, decidimos avançar rapidamente para o estágio "Fazer" (ou melhor, "Repita comigo") e logo começamos a aprender criando nosso próprio aplicativo. Expliquei o que é projetar uma arquitetura de banco de dados, como trabalhar com ela e, durante a palestra, começamos a desenvolver um aplicativo. Como parte do desenvolvimento, toquei em vários tópicos: interação com o sistema de arquivos e bancos de dados, trabalho com imagens, upload / download de arquivos através da interface, download direto,interação síncrona - em uma palavra, coisas que tornam possível entender o que uma linguagem pode, que forma pode e como usar esse conhecimento na estrutura do desenvolvimento de testes. Usando um exemplo de um aplicativo simples de compartilhamento de fotos com a capacidade de selecionar funcionalidades adicionais (determinar localização geográfica, mensagens etc.), examinamos os princípios gerais de interação com a plataforma. É importante que depois que os alunos tenham todas as gravações em vídeo.


Atuamos em etapas: projetamos o próprio banco de dados, preenchemos com conteúdo, fizemos um formulário de desenho, editamos um perfil de usuário - tudo isso está interconectado: se na lição 1 falamos sobre modelagem usando um cliente como exemplo, na próxima etapa estamos usando um servidor como exemplo, usando uma linguagem de modelo de formulário que renderiza nas costas e na frente igualmente. Isso nos permite criar um aplicativo que fornece conteúdo imediatamente e baixa no processo, sem alterar o estilo ou reconfigurar os modelos. Ao longo do caminho, nos aprofundamos na tecnologia e em como criar consultas de forma a encontrar respostas rapidamente, como trabalhar corretamente com o banco de dados, como interagir com o servidor, abordar questões de segurança - tudo isso na forma de uma master class. Obviamente, a cada passo que codifico em tempo real, faço solicitações e mostro como alcançar o resultado.Isso permite que você entenda o processo básico de design do sistema e, em seguida, todos possam criar algo próprio e mostrar esses chips na defesa final dos projetos.

Na segunda escola, acabou estruturando os dados práticos que um especialista precisa para começar a trabalhar. Como resultado, tivemos a maior colheita de estagiários que foram em diferentes direções: da automação dos processos de negócios ao desenvolvimento móvel.

Estamos à procura de informações


Curiosamente, uma habilidade tão simples como uma pesquisa rápida pelas informações necessárias é muito importante durante o desenvolvimento. O ponto principal aqui é a capacidade de identificar claramente a consulta de pesquisa. Meu primeiro mentor me enviou constantemente ao Google, respondendo minhas perguntas com links para o resultado da pesquisa, ele ensinou que a formação de solicitações é uma arte. Portanto, a habilidade básica de construir o pensamento é útil aqui; caso contrário, o Google poderá ignorá-lo.

Por exemplo.

Possível consulta de pesquisa para iniciantes: como incorporar um banco de dados em um projeto / erros de incorporar um banco de dados em um projeto / texto de erro propriamente dito.

Possível solicitação de desenvolvedor: inclua localdb em C #.

Essência: É sempre melhor pesquisar em inglês, pois a maioria dos manuais não é traduzida para russo / traduzida por uma pessoa que não conhece a terminologia. A propósito, sobre isso, sim, para uma solicitação exata, você deve necessariamente conhecer a terminologia. Por exemplo, nesta consulta, um dos tipos de banco de dados dentro do projeto é chamado LocalDB.

Nós estabilizamos o nível de conhecimento


O grau de conhecimento dos graduados de duas escolas não pôde deixar de se alegrar, mas fiquei preocupada no momento em que, devido a diferentes questões e ênfases, o conjunto de conhecimentos de alunos de diferentes graduações pudesse diferir. Obviamente, o conjunto de ferramentas que utilizo no meu trabalho é muito mais amplo do que o apresentado no curso. Dessa vez, conseguimos chegar ao conceito de aplicativos SPA, nas duas primeiras escolas não havia tempo suficiente para isso. Como resultado, alinhamos o plano de treinamento, aumentamos a duração das aulas e seu número para estabilizar o volume de conhecimento.

Manipulação de erros


Para chegar o mais próximo possível da situação real de trabalho, às vezes eu cometo erros que são repetidos com frequência (por exemplo, quando fazemos uma solicitação do Ajax e especificamos incorretamente os tipos, não conseguimos entender por que o back-end é satisfatório e a frente o considera um erro / quando enviamos dados com o tipo de dados errado na parte de trás, e ele nos diz que nada aconteceu) e eu mostro com o exemplo de debug'a o que exatamente está errado e por que pode cair neste lugar. Por exemplo, quando enviamos o modelo para o layout da página e tentamos usá-lo, geralmente os caracteres podem ser escapados e produziremos html não formatado (o modelo funcionará e o html será na forma de tags de página) - também aprendemos a evitar todos esses erros típicos. E todos esses materiais serão especialmente úteis na gravação.

Aliás, esse é um ponto importante: para consolidar o material, use gravações de vídeo e, é claro, chats para comunicação. É importante para nós que os caras tenham constantemente um código completo e a capacidade de fazer perguntas.

Aprenda sobre tarefas específicas.


Agora, o problema da equipe para nós é que não há especialistas prontos em nossa pilha para a posição de junho. Mesmo que um especialista tenha estudado bem a questão, é improvável que ele consiga combinar o conhecimento de tecnologias para resolver um problema específico, porque é impossível aprender uma linguagem de programação sem tarefas. Na maioria das vezes, as empresas “perseguem” os Jones em teoria, e rapidamente os transformamos em trabalho. Como mostra a prática, os graduados da escola podem, o mais rápido possível (geralmente após um estágio) começar a escrever o código que pode ser inserido no projeto após 1-2 iterações. Quanto mais informações de alta qualidade forem apresentadas no curso, mais rapidamente elas serão incluídas no trabalho de design, e os projetos são a vida de qualquer empresa de TI.

Se eles me pedirem conselhos, então ...


... Eu aconselharia estudantes e especialistas iniciantes a se encaixarem em todos os lugares: mitaps, ouvir relatórios on-line e off-line, estar cientes de todos os eventos, porque a tecnologia está se desenvolvendo a uma velocidade que, se você não correr, ficará para trás. Acontece que existe um abandono de especialistas que não estão envolvidos e que não estão interessados ​​- você apenas fica para trás. Além disso, aproveite a oportunidade para participar de eventos com desconto para estudantes (spoiler: ninguém mais o motivará!).

... para professores e especialistas em TI com experiência de 3 a 5 anos, aconselho você a experimentar! Se você acha que não pode ensinar algo único, lembre-se de que, para alguém, sua experiência pode se tornar um insight real. Trabalhando por um longo período em uma área, pode parecer que nada de interessante está acontecendo, mas sempre há algo que você conhece e conhece melhor do que outros. Além disso, tarefas de rotina para você, para alguém hoje, são um verdadeiro desafio! Lembro que uma vez mostrei a Juna uma solução simples na minha opinião e, para ele, parecia muito incomum. Ele entendeu completamente esse exemplo e ganhou experiência, e isso é o principal!

Em vez de saída


Como resultado, posso dizer que o esquema "instituição educacional abstrata - escola da empresa - estágio - trabalho" é mais eficaz que o padrão "instituição educacional abstrata - estágio - trabalho", porque, após 500 horas de estágio, o aluno nem sempre recebe o que damos em uma escola de desenvolvimento em alguns meses. A escola é suficiente para adquirir conhecimentos gerais sobre os princípios de padronização, interação e criar rapidamente um “instagram”, e com isso você já pode começar a trabalhar. Pelo menos essa é a nossa experiência e agora enviamos candidatos à escola

All Articles