귀사를위한 제품 개발을 아웃소싱하는 대신 사내 소프트웨어 개발자를 고용하는 이유는 무엇입니까? [닫은]


23

귀사 제품 개발에 아웃소싱을 통해 사내를 고용하는 이유는 무엇입니까? 나는 몇 가지만 생각할 수 있지만 충분한 이유가 있는지는 확실하지 않습니다.

이것은 실제로 수업 시간에 할 토론입니다. 나는 아웃소싱 부분에 더 관심이 있지만 안타깝게도 토론의 사내로 전환하라는 요청을 받았습니다.

어떤 아이디어?


1
분명히, 아웃소싱을 할 때, 외부 회사 나 구어체 적으로 사용하는 아웃소싱 (즉, 해외)을 의미합니까?
GrandmasterB

나는 교수가 아웃소싱을 할 때 두 가지 모두를 의미한다고 확신합니다.
Terence Ponce

38
P : 나는 당신이 당신의 숙제 질문 아웃소싱 방법을 좋아한다
glasnt

답변:


26
  • 사내 팀은 실제로 회사의 일부이기 때문에 요구 사항에보다 신속하게 대응할 수 있으므로 원하는 것을 더 잘 파악할 수 있습니다.
  • 사내 팀은 의사 소통하기가 쉬우 며 정기적 인 대면 접촉을 능가합니다.
  • 사내 팀은 외부 팀이 알아야 할 더 많은 도메인 별 지식을 갖습니다.
  • 소프트웨어뿐만 아니라 회사의 소프트웨어 문제 유형을 해결하는 전문 지식에 투자하고 있습니다. 자신의 개발자를 사용하면 이전에 이러한 특정 문제를 처리 한 프로그래머가 늘어납니다.

(반론에 대해서는 Joel이 맡은 내용을 참조하십시오 .)


5
링크에서 Joel의 취임은 "내가 사내 개발자가되고 싶지 않은 이유"가 아닌 것처럼 보였습니다.
MIA

약간. 히스토리 중 하나는 사내 개발이 크 래피 소프트웨어를 생성하는 경향이 있다는 것입니다.
Fishtoaster

8
엉터리 아웃소싱 소프트웨어에 대한 많은 공포 이야기가 있으므로 특정 차원을 일반화 할 수 없다고 생각합니다.
MIA

+1 : 끝까지. 우리 회사는 아웃소싱 한 개발자 팀에 의존합니다. 나는 그들이 아웃소싱 한 회사에 대한 의존도를 줄이고 사내로 가져 오기 위해 5 년 동안 직원들에게있어 온 최초의 "개발자"입니다.
IAbstract

6
모든 소프트웨어의 90 %가 엉망
이어서

11

소프트웨어를 전술 또는 전략적으로 사용하거나 비즈니스의 핵심 요소 인 경우 비즈니스를 이해하는 프로그래머를 확보하는 것이 중요 할 수 있습니다. 또한 지원 및 수명주기와 회사가 출시 후 시스템을 지원하는 데 드는 비용을 이해해야합니다.

나는 비용이 일반적으로 실제 요소라고 생각하지 않습니다. 누군가가 주장한다면 무지하거나 거짓말하는 것입니다. 아웃소싱하는 경우 다른 사람의 이익 마진을 비용보다 많이 지불하는 것입니다. 지리적 노동 시장의 차이로 인한 비용 절감은 일반적으로 커뮤니케이션 및 교육 비용의 증가로 빠르게 이루어지며 개발 도상국을 이유로 인해 속도 차이는 예전만큼 크지 않습니다.

거기에는 많은 종류의 소프트웨어가 있습니다. 많은 경우, 무언가를 아웃소싱하고 괜찮을 수 있습니다. 문제는 결정이 사례별로 이루어져야하며 모든 상황에 맞는 단일 크기로 해결할 수 없다는 것입니다.

의사 결정 과정에서 백만 가지를 찾아야한다고 확신합니다.

잘 정의 된 핵심 소프트웨어의 개발이 이러한 종류의 작업을 전문으로하는 회사에 쉽게 아웃소싱 될 수있는 경우가있을 수 있습니다. 예를 들어 장치 드라이버 나 웹 서버와 같은 시스템 수준의 것은 아웃소싱 할 수 있습니다. 어플라이언스를 만들고 사용자 경험을 빌딩 블록 이상으로 전문화하려는 회사.

다른 한편으로, 웹 서버를 특별한 방식으로 운전하고 그것을 잘 지정 했음에도 불구하고,이 구성 요소를 주요 다단계 개발 이니셔티브와 밀접하게 연관 시키게 될 것입니다. 아웃소싱하고 싶지 않습니다.


3

이것은 늦은 답변이지만,보다 일반적인 "회사는 왜 아웃소싱보다는 하우스 X에 고용 하는가?" 즉, 모든 것을 아웃소싱하는 단일 CEO가 아닌 왜 회사가 존재합니까? - "회사의 이론"이라고

http://en.wikipedia.org/wiki/Theory_of_the_firm

그리고 여러 가지 이유에 대한 많은 증거와 연구가 있으며, 아웃소싱과 다양한 인적 자원과 자본을 아웃소싱하는 것이 적절한 지에 대한 많은 지식이 있습니다.


2

사내에서 수행해야하는 한 가지 이유는 특정 국가로 내보낼 수없는 데이터 암호화 기술을 사용하고 있기 때문입니다.

소프트웨어는 반복적 인 모델을 사용하여 대면 커뮤니케이션을 할 수있는 소규모 로컬 개발자 팀이 사용될 때 더 높은 품질로 더 빠르게 수행 될 수 있으며 고객의 기대를보다 잘 충족시킬 수 있습니다.

반복적 모델은 아웃소싱에서 덜 효과적 일 것입니다. 아웃소싱에는 BDUF (큰 설계 선행)를 사용하여 더 많은 작업 개발 요구 사항이 필요합니다.

응용 프로그램이 크고 평범한 것들의 일부를 작고 잘 정의 된 라이브러리로 나눌 수 있다면 아웃소싱은 그러한 조각을 만드는 데 가치가 있습니다.


2

회사가 개발에 필요한 자원이 없거나 심지어 시작에 대한 노하우가 없다면 아웃소싱 (현지)이 적합합니다. 예를 들어, Android 앱을 만들고 싶은 신발 회사. 사내에서 그렇게하는 데는 별다른 의미가 없습니다. 소프트웨어 회사의 경우, 프로젝트를 아웃소싱하는 것은 의미가 없지만 외부 계약자에 의해 약간의 차이가 생길 수 있습니다.

다른 형태의 아웃소싱도 있습니다. 회사를 사서 제품을 얻고 브랜드를 변경하는 것입니다. 즉, 대기업은 기존 제품을 검색하여 구매하여 자체 브랜드로 브랜드를 변경합니다. 그 결과는 아웃소싱과 본질적으로 동일합니다.

오프 쇼어 링을 위해, 그것이 항상 관리자가 당신이 생각하기를 원하는 좋은 재정적 결정은 아닙니다. 대부분의 개발에 필요한 도메인 지식 (산업 지식)이 너무 많아서 단순히 '구입'할 수 없으며, 원격 팀이이를 안내하는 사양만으로 복제하기가 매우 어렵습니다.


1

우리는 작은 내부 팀만 있고 작은 외부 팀만 사용했지만 내부적으로 제작 된 소프트웨어는 항상 외부에서 작성된 소프트웨어보다 훨씬 뛰어났습니다.

내부적으로 문서화 된 패턴, 적절한 비즈니스 계층 논리 (실제 논리없이 DataTable을 다시 전달하는 데이터 계층의 다른 메서드를 호출하는 클래스뿐만 아니라)를 사용하며, 다른 응용 프로그램에서 재사용 할 수있는 코드 라이브러리가 있습니다. 우리 도메인.


1

무엇을 만들어야 하는지 정확히 알지 못 하기 때문입니다.


1
그리고 광범위한 고객 범위 변경없이 합의 된 요구 사항을 최종 결과물로 받아 들인 고객은 무엇입니까? 때로는 사내 개발자가 명확하지 않은 요구 사항을 기반으로 다양한 시나리오를 구체화하고 구체화 할 수 있습니다. 아웃소싱은 설명이 이루어질 때까지 개발을 중단합니다.
Jé Queue

0

다양한 요인에 따라 다릅니다.

소프트웨어 제품을 개발중인 경우 분명히 소프트웨어 개발 요구 사항을 아웃소싱하는 것이 아니라 사내에서 수행하는 것이 더 민감하게 만드는 비밀 계획, 기밀성, 새로운 아이디어 등이 있어야합니다.

반면에 예산이 빡빡하거나 하드 코어 개발보다는 영업 및 마케팅 활동에 더 집중하고 싶거나 현재 팀이 처리 할 수있는 것보다 더 많은 워크 플로우가있는 경우; 소프트웨어 개발 아웃소싱을 진행할 수 있습니다.

그래서 그것은 모두 당신의 선호에 달려 있습니다. 두 가지 옵션 모두 장단점이 있습니다. 간단한 웹 사이트를 개발해야하는 경우 웹 사이트 개발 회사를 고용하여 웹 사이트를 아웃소싱하고 소프트웨어 제품을 CRM 또는 ERP로 만들어야하는 경우 사내에서 수행하는 것을 선호합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.