Por que você contrataria internamente a terceirização no desenvolvimento de um produto para sua empresa? Só consigo pensar em alguns, mas não tenho muita certeza se são bons o suficiente.
Isso é realmente para um debate que vou ter em sala de aula. Estou mais inclinado a terceirizar, mas, infelizmente, me pediram para mudar para o lado interno do debate.
Alguma ideia?
hiring
outsourcing
Terence Ponce
fonte
fonte
Respostas:
(Para contra-argumentos, consulte a opinião de Joel .)
fonte
Se o software for usado taticamente ou estrategicamente ou for essencial para os seus negócios, é essencial ter programadores que também entendam os negócios. Eles também precisam entender o suporte e o ciclo de vida e o que custará à sua empresa para suportar os sistemas após o lançamento.
Não acho que esse custo seja geralmente um fator real. Se alguém afirma que é, é ignorante ou está mentindo. Se você terceirizar, estará pagando a margem de lucro de outra pessoa além dos custos. Qualquer economia devido a diferenciais geográficos do mercado de trabalho geralmente é rapidamente compensada pelo aumento do custo de comunicação e educação, e os diferenciais de taxas não são tão grandes quanto costumavam ser, já que o mundo em desenvolvimento é chamado por uma razão.
Existem muitos tipos de software por aí. Em muitos casos, você pode terceirizar algo e ficar bem. O problema é que essa decisão precisa ser tomada caso a caso e você não pode resolvê-la em uma situação única.
Tenho certeza de que há um milhão de coisas para procurar no processo de tomada de decisão.
Em alguns casos, o desenvolvimento de um software bem especificado, mas essencial, pode ser facilmente terceirizado para uma empresa especializada nesse tipo de trabalho - por exemplo, algo no nível do sistema, como um driver de dispositivo ou servidor da web, ainda pode ser terceirizado por uma empresa que fabricou um appliance e queria se especializar mais na experiência do usuário do que nos componentes básicos.
Por outro lado, se você estiver dirigindo esse servidor da Web de maneiras especiais e, mesmo que você o tenha especificado bem, esse componente estará intimamente ligado às principais iniciativas de desenvolvimento multifásicas, provavelmente você não está ' não vai querer terceirizar isso.
fonte
Essa é uma resposta tardia, mas a mais geral "por que uma empresa contrataria na casa X em vez de terceirizar?" - em outras palavras, por que existem empresas, em vez de um único CEO que terceiriza tudo? - é chamado "a teoria da empresa"
http://en.wikipedia.org/wiki/Theory_of_the_firm
e há bastante evidência e estudos por várias razões, e muito conhecimento sobre quando faz sentido terceirizar versus "in-source" vários pedaços de trabalho e capital.
fonte
Uma razão para fazer isso internamente é porque você está usando a tecnologia de criptografia de dados que não pode ser exportada para determinados países.
Pode-se argumentar que o software pode ser feito mais rapidamente, com maior qualidade e atender melhor às expectativas do cliente quando é usada uma pequena equipe local de desenvolvedores que pode se comunicar cara a cara usando um modelo iterativo.
O modelo iterativo é sem dúvida menos eficaz na terceirização; a terceirização exige mais trabalho no desenvolvimento de requisitos, usando o BDUF (grande projeto inicial).
Se o aplicativo for grande e partes do material comum puderem ser divididas em bibliotecas pequenas e bem definidas, a terceirização poderá ser valiosa para a produção dessas peças.
fonte
A terceirização (local) faz sentido se a empresa não tiver os recursos necessários para o desenvolvimento ou o know-how para começar. Por exemplo, uma empresa de calçados que deseja criar um aplicativo Android. Não há muito sentido em fazer isso internamente. Se for uma empresa de software, a terceirização de um projeto não faz muito sentido, embora algumas lacunas possam ser preenchidas por contratados externos.
Existe outra forma de terceirizar ... comprar empresas para obter e renomear seus produtos. Ou seja, uma empresa maior irá procurar um produto existente, comprá-lo e renomeá-lo como seu. O efeito líquido disso é essencialmente o mesmo que a terceirização.
Para quem não sabe, nem sempre é a boa decisão financeira que os gerentes gostariam que você pensasse. Há muito conhecimento de domínio (conhecimento da indústria) necessário na maioria dos desenvolvimentos que simplesmente não pode ser 'comprado' assim, e é extremamente difícil conseguir que uma equipe remota duplique isso com apenas uma especificação para orientá-los.
fonte
Temos apenas uma pequena equipe interna e usamos apenas pequenas equipes externas, mas o software produzido internamente sempre foi muito melhor do que o software escrito externamente.
Internamente, usamos padrões documentados, lógica apropriada da camada de negócios (não apenas classes que chamam outros métodos na camada de dados que transmitem uma DataTable sem lógica real em lugar algum) e temos uma biblioteca de códigos que podemos reutilizar de outros aplicativos que se encaixam dentro nosso domínio.
fonte
Porque você provavelmente não sabe exatamente o que precisa ser construído.
fonte
Depende de vários fatores:
Se você estiver desenvolvendo um produto de software; obviamente, você deve ter alguns planos secretos, confidencialidade, novas idéias etc. associados a ele, o que torna mais sensível a preferência em fazer internamente do que terceirizar seus requisitos de desenvolvimento de software.
Por outro lado, se você tem um orçamento apertado ou deseja se concentrar mais em atividades de vendas e marketing, em vez de desenvolvimento intenso, ou se possui mais fluxo de trabalho do que sua equipe atual pode suportar; você pode optar pela terceirização de desenvolvimento de software.
Então, tudo depende de suas preferências; ambas as opções têm seus próprios prós e contras. Se eu tiver que desenvolver um site simples, prefiro contratar uma empresa de desenvolvimento de sites para terceirizá-lo e se tiver que fazer um produto de software dizer CRM ou ERP, prefiro fazê-lo internamente.
fonte