--- title: How Free Code Camps Nonprofits Projects Work localeTitle: Como funcionam os projetos de organizações sem fins lucrativos do Free Code Camps --- Construir projetos sem fins lucrativos é a principal maneira de nossos campistas aprenderem o JavaScript de pilha completa e o desenvolvimento de software ágil. Você começará este processo depois de obter as certificações de Desenvolvimento de front-end, Visualização de dados e Desenvolvimento de back-end. ## Começando com o fim em mente Nosso objetivo no Free Code Camp é ajudá-lo a conseguir um emprego como desenvolvedor de software ou ser promovido em sua empresa atual para uma função mais técnica. Você continuará trabalhando em projetos sem fins lucrativos até criar um portfólio e referências suficientemente impressionantes para iniciar sua pesquisa de emprego. Seu portfólio terá quatro projetos sem fins lucrativos. Estimamos que as 800 horas de projetos sem fins lucrativos e as 80 horas de preparação para entrevistas que você vai completar, além das 1.200 horas de desafios que você já concluiu até o momento, serão mais do que suficientes para qualificá-lo pela primeira vez. trabalho de codificação. ## Seu primeiro projeto sem fins lucrativos Em geral, abrangemos Projetos sem fins lucrativos para 200 horas ou cerca de 10 semanas a 20 horas por semana de desenvolvimento por campista. Estas são apenas estimativas aproximadas. Você só vai trabalhar em um projeto de cada vez. Você escolherá outro campista para fazer parceria nesses projetos. Você deve escolher o seu baseado em: * Seu compromisso de tempo estimado (10, 20 ou 40 horas por semana) * Seus fusos horários (Você será capaz de parear o programa juntos?) * Experiência de codificação prévia (gostaríamos que ambos os participantes pudessem contribuir igualmente) Nós não vamos ter idade ou sexo em conta. Isso fornecerá uma valiosa experiência em mesclar equipes diversas, o que é uma realidade do ambiente de trabalho contemporâneo. Então, você enviará um email para team@freecodecamp.com com: * Nomes * Informações de contato * Links para cada um dos portfólios de código do Free Code Camp * Fusos horários * Horas prometidas por semana Enviaremos uma lista de três projetos sem fins lucrativos que precisam da sua ajuda e, juntos, você escolherá um para começar a trabalhar. Enquanto você faz isso, nossa equipe codificará a revisão de cada um dos seus portfólios de código para garantir que todas as histórias de usuários tenham sido concluídas e que não haja sinais de desonestidade acadêmica. ### Começando o projeto Definiremos uma reunião inicial com representantes do Free Code Camp, dos dois campistas e das partes interessadas. Se o stakeholder e os dois campistas aparecerem prontamente e parecerem entusiasmados e profissionais, iniciaremos o projeto. Esse processo demorado atende a uma finalidade importante: reduz a probabilidade de que qualquer um de nossos acampantes ou participantes desperdice seu precioso tempo. ### Participantes sem fins lucrativos Cada projeto sem fins lucrativos foi enviado por uma organização sem fins lucrativos. Um representante dessa organização sem fins lucrativos concordou em atuar como uma "parte interessada" - uma pessoa autoritária que entende a organização e suas necessidades para este projeto em particular. As partes interessadas têm um profundo entendimento das necessidades de suas organizações. Os campistas trabalharão com eles para descobrir as melhores soluções para essas necessidades. Quando você e seu par parceiro falarem primeiro com sua parte interessada sem fins lucrativos, você: * falar longamente para entender melhor suas necessidades. * crie um novo quadro Trello e use-o para priorizar o que precisa ser construído. * e estabelecer prazos com base no seu compromisso de tempo semanal e quanto tempo você acha que cada tarefa levará. Idealmente, vamos definir cada projeto para ser concluído em 10 sprints. É notoriamente difícil estimar quanto tempo os projetos de software demoram, então sinta-se à vontade para pedir ajuda à equipe de voluntários. Você continuará a se reunir com seu stakeholder semanalmente usando o software de conferência GoToMeeting. Você também irá se corresponder com a equipe no quadro Trello do projeto. Ficar "bloqueado" em uma tarefa pode tirar seu senso de impulso para frente, por isso, procure respostas pró-ativas para qualquer ambigüidade que encontrar. Por fim, o projeto será considerado completo quando as necessidades da parte interessada tiverem sido atendidas e você e seu parceiro ficarão satisfeitos com o projeto. Então você pode adicioná-lo ao seu portfólio! ### Trabalhando com seu par Você e seu par irão emparelhar o programa (codificar juntos no mesmo computador virtualmente) cerca de metade do tempo e trabalhar de forma independente na outra metade do tempo. Aqui estão as nossas formas recomendadas de colaboração: * O Gitter possui uma robusta funcionalidade de mensagens privadas. É a principal forma de comunicação da nossa equipe, e nós a recomendamos por e-mail. * O Trello é ótimo para gerenciar projetos. Trabalhe com sua parte interessada para criar cartões Trello e atualize esses cartões regularmente à medida que você progredir neles. * Screen Hero ou Team Viewer - Estas são a maneira ideal de parear o programa. Ferramentas como o TMUX são boas, mas difíceis de usar. Desencorajamos você de usar ferramentas de compartilhamento de tela em que apenas uma pessoa tenha controle do teclado e do mouse - isso não é programação em par real. * Escrever código legível e claro, enviar mensagens, nomes de ramificação e enviar mensagens de solicitação. ### Aplicativos de Hospedagem A menos que sua parte interessada tenha um host moderno existente (AWS, Digital Ocean), você precisará fazer a transição para uma nova plataforma. Acreditamos que o Heroku é a melhor escolha para a grande maioria dos projetos da web. É grátis, fácil de usar e possui interfaces de navegador e de linha de comando. É de propriedade da Salesforce e usado por uma tonelada de empresas, por isso é responsável e provavelmente não vai embora. Se você precisar de ajuda para convencer sua parte interessada de que o Heroku é a plataforma ideal, ficaremos felizes em conversar com eles. ### Manutenção de aplicativos Depois de concluir um projeto sem fins lucrativos, sua obrigação para com a parte interessada é concluída. Seu objetivo é deixar para trás uma solução bem documentada que pode ser facilmente mantida por um desenvolvedor JavaScript de contrato (ou até mesmo um "superusuário" menos técnico). Embora você não precise mais ajudar com o desenvolvimento de recursos, recomendamos que você considere ajudar sua parte interessada com correções ocasionais no futuro. Afinal, este projeto será uma parte importante do seu portfólio, e você vai querer que ele permaneça em boa forma para curiosos futuros empregadores. ### Comprometendo-se a terminar o projeto Sua parte interessada sem fins lucrativos, sua dupla parceira e nossa equipe de voluntários estão contando com você para concluir seu projeto sem fins lucrativos. Se você se afastar de um projeto sem fins lucrativos inacabado, ficará inelegível para receber outro. Para confirmar que você compreende a seriedade desse compromisso, exigimos que todos os participantes [assinem essa promessa](http://goo.gl/forms/ZMn96z2QqY) antes de iniciar seus projetos sem fins lucrativos. Provavelmente haverá momentos de confusão ou frustração. Isso é normal no desenvolvimento de software. O mais importante é que você não desista e, ao invés disso, persevere por meio desses contratempos. Como Steve Jobs disse, "artistas reais embarcam". E você enviará um projeto sem fins lucrativos após o outro até se sentir pronto para dar o próximo passo em sua promissora carreira.