Há 4 anos, sou desenvolvedor solo de uma pequena empresa. Temos um punhado de produtos bem estabelecidos em um setor de nicho. Em breve, contrataremos 1-2 desenvolvedores, e isso provavelmente mudará a maneira como as coisas funcionam por aqui.
Embora não tenha um título "real", estarei "encarregado" dessa equipe. O que eu quero fazer é estabelecer um departamento de programação muito organizado e produtivo para a minha empresa. Consegui esse trabalho solo logo após a faculdade, por isso, enquanto me tornei proficiente como programador nesse setor, não tenho muita experiência em programação de equipes. Eu sinto que começar com o pé direito será a chave.
No momento, sou apenas eu, alguns computadores e um servidor SVN. Estou procurando qualquer orientação geral sobre como formar uma equipe desde o início.
Respostas:
Organize sua casa e garanta que tudo esteja configurado para um esforço colaborativo.
A configuração e integração dos itens a seguir em seu processo de desenvolvimento facilita a integração de pessoas, o acompanhamento do que está sendo feito e a prevenção de que as coisas fiquem "bagunçadas".
fonte
... e com experiência em grandes projetos de software corporativo.
Eles ajudarão você a industrializar seus processos e você provavelmente aprenderá muito com eles.
Você ensinará a eles seu nicho de mercado.
Se você não conseguir encontrar essa pessoa, sugiro que você faça treinamentos relacionados ao gerenciamento de equipes. Eu sugiro que você tenha uma certificação Scrum como iniciante.
fonte
Pode ser óbvio, mas certifique-se de que você realmente gosta de trabalhar com os novos contratados. Tente arranjar algumas cervejas quando as duas começarem a tentar fazer com que a equipe se sinta como uma.
Você também precisará conscientizá-los de todos os padrões de codificação que você seguir e de quaisquer técnicas comuns usadas, comuns como repetidas em sua base de códigos.
Eventualmente, todos vocês devem ser capazes de responder ao processo e melhorar ... supondo que sigam outros conselhos e contratem alguém com as habilidades necessárias para complementar o seu.
fonte
Não cometa o erro de deixar seu desejo / ambição ficar "no comando" atrapalhar. Se sua empresa contrata desenvolvedores com mais experiência que você, os novos contratados podem ser muito mais adequados para a função de líder de equipe do que você.
Seu valor real para a equipe e a empresa é o seu conhecimento íntimo dos produtos, conforme implementados atualmente.
fonte
Isso é muito semelhante à situação em que estive há alguns meses atrás. O melhor conselho que posso dar é abandonar a arrogância típica de ser um programador e contratar o melhor do melhor que sua empresa pode pagar.
Fiquei "no comando" por um tempo, mas um membro da equipe com mais experiência se adiantou e, de bom grado, abandonei meus deveres administrativos para poder fazer o que sou melhor, escrevendo código de qualidade. Eu ainda sou um mentor da equipe como você será.
Se você fizer o que é melhor para a empresa nessa situação, será recompensado.
fonte
Haverá discussões técnicas acaloradas: novos programadores têm um viés, eles experimentaram algumas maneiras de fazer as coisas e, quando confrontados com uma nova maneira que eles não entendem, eles primeiro pensam que não faz sentido e precisa mudar . Os programadores que trabalham sozinhos há anos provavelmente são defensivos em relação ao seu trabalho, e também o trabalho deles será um tanto idiossincrático, devido ao número de problemas que resolveram sem discutir coisas com outras pessoas.
Esteja ciente desses preconceitos, dê boas-vindas às novas informações, não seja muito defensivo e não tome decisões precipitadas para mudar tudo também.
Há muitos aspectos positivos no trabalho em equipe, especialmente na revisão do código por um colega. Insista nisso para todos os membros da equipe, incluindo você desde o início.
fonte
Como desenvolvedor sênior, você precisará de um gerente e começar a examinar as políticas de RH da sua empresa. (especialmente itens como direito a férias, procedimentos por licença médica e processo disciplinar, embora eu espero que você nunca precise disso)
Agora, dependendo das novas habilidades e habilidades dos contratados, comece a delegar alguns aspectos do seu trabalho atual, você precisará de tempo para gerenciar prioridades e agendamento.
Uma boa fonte de habilidades simples e básicas de gerenciamento sobre o que fazer e como, de maneira profissional, é http://www.manager-tools.com . Eles fazem podcasts regulares sobre conselhos de gestão e carreira, sem mencionar um catálogo considerável de material para você.
fonte
Muitas das dicas fornecidas são excelentes, gostaria apenas de acrescentar algumas da minha experiência em uma posição semelhante.
fonte
O livro Brownfield Application Development em .Net tem algumas idéias que acho que devem ajudar. Parte do conselho é como configurar as coisas para que sejam repetíveis entre os membros da equipe e com o tempo.
fonte