이 질문의 다른 반쪽 : 동쪽의 프로그래머는 서쪽의 프로그래머를 어떻게 봅니까?
세계의 동부 (인도 / 중국 / 필리핀)는 주로 서부 세계 (미국과 유럽)에 아웃소싱 서비스를 제공합니다.
해외 팀과 함께 일한 경험이 있습니까? 그렇다면 어떻게 되었습니까?
동부 출신의 프로그래머에 대한 일반화 된 아이디어 나 의견을 가지고 있습니까 (예 : 협력 적인가, 제 시간에 맞춰 제공 하는가, 양질의 일을 하는가)? 이것들은 무엇을 기반으로합니까?
이 질문의 다른 반쪽 : 동쪽의 프로그래머는 서쪽의 프로그래머를 어떻게 봅니까?
세계의 동부 (인도 / 중국 / 필리핀)는 주로 서부 세계 (미국과 유럽)에 아웃소싱 서비스를 제공합니다.
해외 팀과 함께 일한 경험이 있습니까? 그렇다면 어떻게 되었습니까?
동부 출신의 프로그래머에 대한 일반화 된 아이디어 나 의견을 가지고 있습니까 (예 : 협력 적인가, 제 시간에 맞춰 제공 하는가, 양질의 일을 하는가)? 이것들은 무엇을 기반으로합니까?
답변:
흠 흥미로운 전망.
방금 던지고 싶습니다.
나는 인도에 살고 있으며 (인도인) 11/12 세부터 프로그래밍을 해왔습니다. 지금까지 내가 가지고있는 것은 고등 교육 일뿐입니다. 흥미롭게도 지금까지 두 가지 일을했습니다. 저는 Indian Computer Institute에서 강의를했고 지금 프리랜서를 개발하고 있습니다.
내가 생각하는 두 가지 사실은 내가 서있는 곳에서 사실입니다.
물론 사람들은 사람이지만 인생과 교육에 대한 인도의 생각은 여기에서 매우 다릅니다. 제가 가르치는 몇 달 동안 부모는 자녀가 돈이나 무언가를 얻을 것이라고 생각하기 때문에 자녀를 IT에 밀어 넣는 것을 보았습니다. Bsc 및 공학 학위를 수행 / 종료하고 100 명 중 98 명이 C로 몇 줄의 코드를 작성할 수 없습니다 (품질 코드를 잊어 버리십시오).
여기 주 컴퓨터 과학 과정 은 커리큘럼의 일부로 Turbo C 를 가지고 cout
있습니다. 대부분의 사람들에게 C ++는 C이지만 인쇄 에만 사용 됩니다.
개발에 관해서는 이런 종류의 졸업생들과 함께 끔찍한 것들을 코딩하는 수많은 "엔지니어" 를 찾을 수 있습니다. 나는 소스 제어를 사용하지 않는 작은 크기의 "회사"를 만났으며, 단위 테스트가 무엇인지 전혀 알지 못합니다.
내가 말해야 할 것이 너무 많아서 슬프다. 그러나 여기의 모든 사람은 이렇지 않습니다. 우리 중에는 사람들이받는 인상이 너무 많습니다. lol
어떻게 든 여기서 성공한다는 것은 다른 곳으로 옮겨가는 것을 의미합니다. 실제 기술을 발전시키고 연마 할 수있는 실질적인 범위가 없기 때문입니다. 물론 IIT 및 다른 최고 대학의 스마트 헤드가 있습니다.
그러나 결론은 여기서 IT 교육이 제 생각에는 매우 슬프다는 것입니다.
면책 조항 : 나는 중부 유럽에 거주하며 동부 또는 서부로 계산할지 여부를 스스로 결정합니다. :-) 따라서 서유럽에서 우리나라에 아웃소싱하는 프로젝트를 수행했으며 더 많은 서부 동료 및 경영진으로부터 의심을 받았습니다. 그러한 상황에서 인디언이 경험해야하는 것과 비슷한
OTOH 저는 두 개의 주요 프로젝트를 위해 여러 인도 및 일부 러시아 개발자들과 협력하고 있습니다. 첫 번째는 또한 인도의 하청 업체가 개발 한 구성 요소와 관련이 있습니다.이 코드는 제가 접근 한 적이있는 가장 끔찍한 피스 코드였습니다. 소스 파일의 크기가 600KB 이상 (또는 약 30K 라인의 AFAIR) 인 경우, 신속하게 닫았으며 절대로 손대지 않아도되기를기도 할 수있었습니다.기도는 들었습니다.
후자는 (현재 작업중 인) 3 개의 다른 회사에 하청 계약을 맺었으며, 그 중 일부는 여러 인도 프로그래머를 고용했습니다. 우리는 지난 1,5 년 동안 그 결과를 정리해 왔으며, 가까운 미래를위한 충분한 작업이 아직 남아 있습니다.
개인 생활에서 나는 전 생애의 시대에 인도에서 3 개월 이상 살았 기 때문에 아마도 평범한 서양인보다 나라와 그 주민들에 대해 더 많이 알고있을 것입니다. 개인적으로 나는 인디언을 많이 좋아합니다.
저의 개인적인 경험은 일반적으로 서구 사람들과 인도 사람들 사이에 존재하는 눈에 띄는 문화적 차이가 프로그래머들 사이에서도 관찰 될 수 있다는 것입니다. 인디언은 일반적으로 구체적인 작업을 수행하는 데 매우 부지런하지만 더 큰 그림을 이해해야 할 필요성을 느끼거나 느낄 필요는 없습니다. 품질이 낮은 소프트웨어를 쉽게 만들 수 있습니다.
또 다른 잠재적 인 문제는 무례한 것으로 여겨지기 때문에 어떤 요청에 대해서도 거부하는 인도인의 문화적 뿌리 깊은 저항입니다. 인디언 식료품 점에 가서 담요 / 보석 / 상어 지느러미 / 물건을 요청하면 주인이 "예, 잠시만 요"라고 말한 다음 소년을 동네의 다른 상점으로 보내 제품을 가져옵니다. 자랑스럽게 당신에게 선물합니다. 실제로 좋은 사업 관행입니다. 그러나 일정이 일정하지 않은 SW 개발 프로젝트를 하도급 계약에 적용 할 경우 결과가 비참 할 수 있습니다. 이것은 내 생각에 불과하지만, 이것이 실제로 SW 개발을 인도에 아웃소싱하는 요인인지 여부에 대한 구체적인 증거는 없습니다.
현재 프로젝트에서 헛된 부지런함의 한 가지 주요 예는 성능 모니터링 체계의 구현이었습니다. 아이디어는 성능 통계를 수집하는 객체를 전달하는 것이 었습니다. 그러나 솔루션은 앱을 너무 느려서 실제로 사용되지 않는 것으로 나타났습니다. 그럼에도 불구하고, 규범에 남은 잔재는 우리가 정리할 수 있도록 남겨졌습니다. 실제로 이것은 코드의 모든 (약 6000 개) 메서드에 추가 개체 매개 변수를 전달하는 것을 의미했습니다. 그것을 한 사람은 성능 측정을 위해 추가 매개 변수가 추가되었다는 점을 지적하면서 각 방법의 Javadoc에 주석을 추가했습니다! 이제 그 사람의 부지런함에 감탄하고 6000 가지 방법을 모두 사용하여 Javadoc 주석을 모든 곳에 충실히 삽입 할 수 있습니다. OTOH, a) 앞에서 언급했듯이이 계획은 실제로 사용되지 않았습니다.
이 모든 것이 가난한 인도 개발자의 잘못이라는 것을 의미하지는 않습니다 (Javadoc 오용 제외). IMO는 결과를 모니터링하지 않고 프로젝트를 철저히 계약하지 않고 엄격한 수락 테스트를 수행하고 적절한 품질의 코드 및 문서를 보장하는 것은 관리자의 잘못입니다. 하도급 업체가 개발 시간 절약에 관심을 갖지 않도록하는 시간 기반 지불 체계는 말할 것도 없습니다.
그러나 서구의 개발자가 동일한 수준의 일관성과 불만없이 유사한 작업을 수행해야한다는 압박을 받고 있다고 생각합니다.
우리는 또한이 프로젝트에서 인도 테스터 그룹과 하청 계약을 맺었습니다. 개인적으로 우리는 그들 중 하나와 만 접촉하고 있기 때문에 총 몇 명인지 모릅니다. 그러나이 사람은 모든 프로젝트에서 소중한 자산 인 테스터의 보석입니다. 부지런하고 철저한 것 외에도, 큰 그림을 이해하기 위해 많은 질문을하고, 종종 예상했던 것보다 훨씬 많은 테스트를 수행하며, 발견 된 문제를 정확하고 서술 적으로보고합니다.
Another potential issue is the culturally ingrained resistance of Indians to say no to any request, as I believe it is considered rude by them.
'동부 인'이 항상 '그렇다'라고 말하는 이러한 경향은 동서양의 문화적 차이에 관한 다른 기사에서 언급되었습니다. 몇 년 전에 읽은 한 기사에 따르면 일부 극동 부 사람들이 질문에 대한 대답으로 '예'라고 대답 할 때 그들의 주된 의도는 질문을 이해해야한다는 것을 암시하는 것이지 반드시 질문에 구속되는 데 동의하는 것이 아니라고 설명합니다. 90 년대부터이 기사는 미국과 일본 비즈니스의 차이점을 목표로 삼았습니다.
저는 연안 (동반구) 자원에 대해 (대부분) "위임 된"세 가지 프로젝트를 처리했습니다. 세 사례 중 하나는 동부 러시아에서 한 그룹을 사용했거나 한 사람 만 처리했지만 다른 사람이 얼마나 많은 일을했는지는 확실하지 않습니다. 그들은 훌륭한 일을했고, 영어가 제 2의 (또는 아마도 제 3의) 언어 인 사람들에 의해 일하는 문구에 관한 사소한 문제를 해결하기 위해 UI에 대한 작업이 필요한 것 외에는 프로젝트가 상당히 훌륭하게 진행되었습니다.
다른 두 사람은 다소 다른 이야기였습니다. 우연히 든 아니든,이 두 경우 모두 프로그래머는 인도에있었습니다. 한 가지 경우, 본질적으로 그들이했던 모든 것은 프로토 타입에 불과한 것으로 간주 될 수있었습니다. 가능한 디자인을 테스트하기 위해 어느 정도 사용할 수 있지만, 작성된 모든 것은 버리고 생산 레벨 코드를 얻기 위해 교체해야했습니다. 그들은 내가 "ISO 9000 사고 방식"이라고 생각하는 것을 예시하는 것처럼 보였다. 그들은 정책과 절차를 거의 종교적으로 준수했지만, 해결해야 할 문제에 대한 통찰력이 거의 없었습니다. 그들의 코드는 내가 본 것 중 가장 추잡한 것일 수 있습니다.
다른 경우에는 프로젝트가 결국 중단되었습니다. 그것은 최근에 승진 한 VP의 헤어 브레인 방식이었으며, 첫 날부터 아이디어는 지출을 최소화하는 것이었고, 그의 아이디어가 활발히 발전하고 있다고 말할 수있었습니다. 우리가 얻은 코드는 완전히 쓸모가 없지만 프로젝트를 관리하거나 사용 가능한 사양을 얻는 데 아무런 노력도 기울이지 않았기 때문에 계약자를 많이 비난하기가 어려울 것입니다. 그들의 코드는 열악하게 시작되었고 아무도 신경 쓰지 않았을 때 품질이 빠르게 떨어졌습니다.
사람은 사람이다. 일부 프로그래머는 좋은 프로그래머이고 일부 프로그래머는 나쁜 프로그래머입니다. 어떤 나쁜 프로그래머는 시간이 지나면 좋은 프로그래머가 될 수있는 반면, 다른 나쁜 프로그래머에게는 시간이 걸리지 않습니다.
위치는 여기에 영향을 미치지 않는 경향이 있습니다. 그러나 아마도 기회가 될 수도 있습니다.
8 살 때 GW Basic에서 "Bad Syntax Error OK"라는 단어의 의미를 묻고있었습니다. 나는 컴퓨터와 함께 자랐습니다. 모든 사람이 그러한 장점을 가지고있는 것은 아닙니다. 그러나 시대는 변하고 있으며 오늘날 8 살짜리 아이들은 어제 8 살짜리 아이들보다 기술에 더 많이 접근 할 수 있습니다.
그러나 프로그래밍이 컴퓨터 사용법을 아는 것 이상이라는 것을 인식하는 것이 중요합니다. 그것은 그것보다 훨씬 더 깊게 달린다. 다음은 좋은 프로그래머와 시간이 필요한 프로그래머를 실제 나쁜 프로그래머와 구분하는 주요 특성입니다.
가장 중요한 것은 훌륭한 프로그래머도 훌륭한 의사 소통 자입니다. 최고의 프로그래머는 다른 사람을 설득 할 수있는 사람입니다. 그들은 해결책을 찾을 때까지 다른 동료와 문제를 참을성있게 토론 할 수있는 사람들입니다.
가장 큰 도전은 의사 소통입니다.
도전이 무엇이든 자신이나 다른 사람을 고정 관념하지 마십시오. 당신은 다른 사람만큼 잠재력이 있으며 그 반대도 마찬가지입니다. 당신이 정말로 마음에 두는 모든 것을 할 수 있다는 것을 기억하십시오!
나는 컴퓨터 과학 및 공학 4 년제 학위 과정의 마지막 년에 인도에서 21 세의 학부생입니다.
이 글을 쓰는 바로 그 아이디어는 인도가 아웃소싱 허브 이상이라는 것입니다. 나는 서쪽이 그런 식으로 보길 바라며 재능을 흡수하는 대신에 서쪽에 더 많은 허브를 설치해야한다. 앞으로 불쾌감을주는 내용이 있지만 더 큰 그림을 이해하면 내가 말하려는 내용을 이해할 수 있습니다.
인도의 교육은 매년 끔찍한 기술 능력이 없거나 전혀없는 인력으로 인해 매우 혼란스러운 상태에 있습니다. 교육 시스템은 혁신이나 기업가 정신에서 전혀 경쟁력이 없습니다. 이로 인해 우리나라는 최근 독창적으로 개발 된 10 달러짜리 컴퓨터 (인도 회사에서만 유지되는 저렴한 중국어 안드로이드 기반 태블릿으로 판명 됨) 또는 다른 기술 혁신 (이것은 썸 드라이브). 교육 기관은 실제 기술과 완전히 분리되어 있으며 혁신이라는 이름으로 바퀴를 재창조하는 학생들에게 더 관심이 있습니다. 교육 기관, 모두가 그들을 싫어합니다.
최소한 뜨거운 개발 기술을 배우기를 기대하는 곳에옵니다.
나는 교육 기관을 제외하고 인도의 몇몇 훈련 시설에 노출되어있었습니다. 프로그래밍 및 소프트웨어 개발은 응용 프로그램 수준 개발과 시스템 수준 개발의 두 가지 수준에서 이루어 집니다.
응용 프로그램 개발을 위해 인도의 대부분의 신입생은 기업이 대량의 프로그래머 벤치를 주장하고 더 많은 프로젝트를 받기 위해 대량 모집합니다. 하루가 끝나면 고용 과정이 완전히 어리석기 때문에 품질 이 저하됩니다. 때로는 Java 프레임 만들기 및 간단한 WinForm 및 ASP.NET UI 만 만드는 것과 같은 어리석은 일에 사람들이 일을 잘하게함으로써 재능이 낭비됩니다. (확실하지는 않지만 새로운 채용에 대해 이야기하고 있으며 일부 사람들이 주장한대로). 훌륭한 소프트웨어 엔지니어링 관행을 고려하지 않는 경우 7 학년이 해당 코딩을 수행 할 수 있습니다.
그러나 동시에 독립적 인 프로그래머와 개발자가 관심이 있습니다. 그들은 모든 희망을 잃고 세상을 바꾸는 데 가장 관심이없는 이름없는 영웅과 같습니다. 그들이 원하는 것은 그들의 기술을 최대한 활용하는 것이므로 돈과 해외 여행에 관한 것입니다. 우리의 과정은 시스템 소프트웨어 (TurboC를 사용한 C 프로그래밍 4 년 동안 크게 제한되어 있지만 C 프로그램에서 cout을 사용하는 적절한 객체 지향 개념이없는 어리 석고 모호한 C ++ 은 C ++이 아닙니다.회사에서는 응용 프로그램 개발 (ASP.NET, WinForms, J2EE)을 주로 수행합니다. 기본적으로 컴퓨터 공학 엔지니어는 소프트웨어 엔지니어의 업무를 수행합니다. 그렇습니다. 컴퓨터 과학에 대한 지식은 도움이되지만 적절한 소프트웨어 엔지니어링에 대한 지식은 프로세스에 너무 많은 영향을 미치므로 전체 시스템이 급락하게됩니다. # 실패입니다.
간단한 예를 들겠습니다. 나는 마지막 해 프로젝트를 위해 교육 기관에 합류하여 재고 시스템 (호텔 예약, CRM과 같은 물건)이 될 ASP.NET 웹 사이트를 만들고 싶었습니다. 예, 쉬운 일은 아니지만 제 생각에는 프로젝트를 수행 할 가치가 없습니다. 그것은 단지 바퀴를 재발 명 할 것이며 이러한 프로젝트는 실제로 인생에서 거대합니다. 6 개월 안에 3 명 그룹이 제공하면 이로 인해 사용할 수없는 축소 된 시스템의 종류를 이해할 수 있습니다. 이 연구소는 너무 심하게 스트레스를받지 않으며 "학생들에게 너무 많은 말을 겁내지 말고", "개요를하고 나머지는 스스로 배우게하는"것에 더 관심이 있습니다. 결국 사람들이 프로젝트에서 개발하는 것은 완전히 테스트 된 프로토 타입이 아니며
나는 음성 안내 실시간 내비게이션 시스템 인 내 자신의 주제를 취했다. WPF, Google Maps API 및 가능한 모든 최신 기술을 사용하고 있습니다. 좋은 소프트웨어 엔지니어링 실습을 위해 MVVM을 사용하여 소스 제어를 사용하고 있으며 내가 알고있는 다른 것을 철저히 살펴볼 것입니다. 저는 21 살이고 졸업생입니다. 제 나이에 서부 사람들은 여전히 학습 단계에 있으며 나중에 나이를 먹습니다. 그것은 서부 졸업생들을 훨씬 더 좋고 지식이 풍부하게 만듭니다. 우리는 수량이 있지만 품질은 없습니다.
인도에서는 프로젝트를 위해하고있는 일의 수준이 일반적으로 학기 마지막 학기 프로젝트에 예상되지 않습니다. 그러나 원하기 때문에 그렇게 할 것입니다. 동시에 내 그룹에는 ASP.NET에서 프로젝트를 편안하게 수행하고 5-7 페이지를 작성하며 데이터베이스 쿼리를 실행하고 그리드 뷰를 채우고 보안에 대한 망설이지 않는 다른 사람들이 있습니다. 심지어 프리 랜싱 웹 사이트조차 더 나은 구인 광고를 가지고 있습니다 (YouTube 복제, Google 인스턴트 + X = Y Mashup ..)
6 개월이 지나면 회사에서 일하는 사람과 비즈니스를 아웃소싱하는 사람을 찾을 수 있습니다. 저 같은 사람들은 10 대 1 같은 사람들보다 많습니다 :(
전체 교육 경력과 ~ 500 명 이상의 사람들과의 친밀감에서 정확하고 뛰어나지 않기 위해, 나는 나와 함께 프로젝트를 수행 할 때 고려해야 할 전문 지식 수준을 가진 4 명을 정확히 보았습니다)
궁극적으로, 모든 인도 졸업생들은 이론이기 때문에 좋은 문서를 작성할 것이지만 그로부터 확실한 코드를 기대하지는 않습니다.
시스템 소프트웨어도 마찬가지입니다. 내 친구가 Android NDK와 함께 일하고 있으며 회사에서 실제 프로젝트를 진행하고 있습니다. 그는이 프로젝트를받은 것이 운이 좋으며 부러워하지만이 수준의 작업은 인도에서도 일어난다. 우리 대학의 또 다른 선배는 단 2 대의 저렴한 웹캠을 사용하여 작년 프로젝트에서 키 넥트 클론 (소수점 보고서와 같은 멀티 터치 마우스)을 개발했습니다. 마찬가지로 인터넷에서 코드를 복사하고 어떻게 든 휠을 재발 명하는 사람들이 있습니다.
필자의 마지막 말은 인도 전역에서 타협 된 품질을 기대하지 않으며, 저렴한 소프트웨어 관리자로 인정 받고 유지 보수 업무 만 아웃소싱하기에 적합한 인도인을 고려하지 않는다.
또한, 마크 측면에서 우수한 교육 배경을 가진 사람이 훌륭한 소프트웨어를 작성할 것으로 기대하지 마십시오. 인도의 교육 시스템은 모든 이론에 중점을두고 있습니다. 실무에 대한 스트레스는 없습니다. 때로는 더 많은 것을 알고 싶어하거나 더 많은 것을 알고 자하는 것은 협박 감을 느끼는 교사들로부터 어려움을 겪을 수 있습니다. 그럼에도 불구하고, 좋은 프로그래머는 좋은 직업뿐만 아니라 더 나은 직업에서 녹색 목초지를 찾습니다. 좋은 "직업"을 세우고, 혼다 시티 주변을 운전하며, 중국 본토에서 외식하고 행복하게 살고 싶은 사람들이 있습니다. .
나는 Audi btw에 더 가깝습니다. :)
경고, 총괄 일반화. 표현 된 관점은 모든 사람이 공유하지 않습니다. 실제로 저자는 믿지 못할 수도 있습니다.
서구 개발자들은 동부 개발자를 두려워합니다. 우리는 우리의 직업이 결국 아웃소싱 될 것이라는 것을 몇 번이고 들었습니다. 이것은 모든 관계에 대한 나쁜 시작입니다. 설상가상으로, 우리는 교육이 열등하다는 것을 끊임없이 상기시켜줍니다. 동부 개발자는 더 저렴하고 똑똑하며 더 많은 번거 로움을 견뎌 낼 것입니다. 동부 개발자와의 전문적인 경험은 두려움에 중독되어 있기 때문에 중요하지 않습니다.
나는 다른 사람들을 위해 말할 수 없습니다. 사람들이 동의하지 않는 것 같습니다. 내가 볼 때 몇 가지 사실부터 시작하겠습니다.
첫째, 대부분의 사람들이 실제로 소프트웨어 개발을 위해 잘라 내지 않았다는 증거가 있습니다. (예를 들어 UI 연구에 따르면 인구의 절반 이상이 디렉토리 트리에 대한 아이디어를 얻지 못할 것입니다.) 서양에서는 이러한 사람들이 자신에게 더 적합한 다른 직업을 찾는 데 아무런 문제가 없습니다. 대조적으로 인도에서는 소프트웨어 개발에 대한 압력이 너무 높아서 어쨌든 할 수 있습니다. 즉, 인도에는 많은 사람들이 소프트웨어 개발에 참여하지 않아야한다는 것을 의미합니다.
다음으로 인도는 아웃소싱의 일반적인 목적지입니다. 회사는 저렴 해 보이기 때문에 급여를받습니다. 그러나 여러 위치에있는 근로자, 여러 시간대에있는 근로자 및 여러 문화권의 근로자에 필요한 개발 시간과 노력이 모두 증가한다는 사실은 잘 문서화되어 있습니다 (예 : COCOMO II 모델 의 문서화 된 비용 요소 참조 ). 인도에서 진행되고 서부에서 진행되는 모든 프로젝트에는 세 가지 비용 요소가 있습니다. (이것은 실제로는 안되는 개발자로 일하는 사람들을 찾는 경향을 추가하기 전에입니다.)
마지막으로 소프트웨어 프로젝트 관리에서 가장 큰 문제는이를 알아야하는 의사 결정자에게 효과가없는 것에 대한 정확한 정보를 얻는 것입니다. 나는이 유머러스 한 경향을 좋아합니다 . 절망, 문화 또는 고객이 옳다고 생각하는 이유가 무엇이든, 이러한 경향은 인도에 아웃소싱 한 프로젝트에서 더 나쁩니다. 때로는 코믹한 정도로.
그 결과 미국 기업들이 저임금의 사이렌 노래에 굴복하고 인도에 작업을 아웃소싱 한 다음 아웃소싱 된 프로젝트가 재앙으로 변하는 경향이 강해졌습니다. (그러나 미국인들이 일자리를 잃을 때까지 재난의 정도는 분명하지 않습니다.)
회사가가는 또 다른 방법은 H1B 비자로 인디언을 미국으로 고용하는 것입니다. 이것은 원격 작업자 문제를 제거합니다. 많은 인디언들은 미국 등에서 급여가 높기 때문에 이러한 일자리를 원합니다. 그리고 가능한 모든 일자리를 채울 수있는 진정한 인디언이 충분합니다. 그러나 문제가 있습니다. H1B 비자를 고용하는 미국 회사는 일자리를 구할 수있는 미국인이없고, 고용 된 사람이 시장 요율 등을 지불하고 있다고 맹세해야합니다. 그러나 H1B 비자를 소지 한 사람은 직업을 바꾸는 데 어려움이 있습니다. 이것은 고용주에게 포로를 부여합니다. 그리고 실제로 그 직원들을 공정하게 대우 할 시장 인센티브를 남기지 않습니다. 이것은 회사에게 부정직에 대한 강한 동기를 부여합니다. 너무 많은 succumb.
미국인으로서 나는 미국에 오는 최고와 가장 밝은 것에 문제가 없습니다. 반대로, 그것은이 나라를 건설 한 것입니다. 그러나 일단 도착하면 동등하게 취급하십시오. 예를 들어, 비자 상태로 인해 Google, Apple 및 Facebook의 구인 제안을 거절해야하는 필리핀 사람을 알고 있습니다. 그가 현재하고있는 것의 두 배 정도. 시장이 그와 같은 사람들의 급여를 정할 수 있다면 회사가 H1B 프로그램을 남용하려는 인센티브가 훨씬 적을 것입니다.
내 의견이 있습니다. 여러 가지 이유로 인도에 프로젝트를 아웃소싱하면 종종 재난이 발생합니다. H1B 직원으로서받는 사람은 훌륭하지만 그 프로그램은 나를 슬프게하는 방식으로 심하게 남용됩니다.
나는 인도 개발자들과 3 년 동안 일해 왔습니다. 사람은 사람이다. 우리는 주로 팀이 필요했기 때문에 아웃소싱했으며, 이탈리아에서는 델파이와 같이 널리 사용되지 않는 언어로 팀을 찾기가 어렵습니다. 따라서 주된 이유는 비용이 아닌 팀을 찾는 것입니다.
어쨌든 우리가 찾은 팀은 리더가 매우 좋았 기 때문에 매우 좋았습니다. 그러나 다른 개발자들은 그렇게 중요하지 않았습니다. 어떻게 된 거예요? 그는 아주 좋은 사람이고 또한 내 친구가되기 때문에 개발자가 우리를 위해 직접 일합니다. 강한 관계가 있으며 우리는 그에게 거의 이탈리아 급여를 지불합니다. 왜? 관계가 중요하기 때문입니다. 많은 사람들이 저축을 위해 인도로가는 것을 보았습니다.
당신은 당신이 지불하는 것을 얻습니다. 물론 돈을 절약 할 수는 있지만 돈을 절약하기 위해서만 아웃소싱을하는 것은 (선택적으로 소규모 프로젝트의 경우) 잘못된 선택이라고 생각합니다.
IMO의 문제는 동쪽 대 서쪽이 아니라 아웃소싱의 일반적인 개념입니다. 90 년대 후반에 인터넷 붐, Y2K 및 유로화 변환은 프로그래머들에게 많은 작업을 만들어 주었으므로 아웃소싱은 그 당시 가장 화제가되었습니다. 그러나 그것은 동부가 아닌 전국에서 아웃소싱을하고있었습니다. 여전히, 아웃소싱에 대해 우리가 기대하거나 경험하는 많은 문제들도 지역 아웃소싱 파트너들에게 발생했습니다.
많은 경우에, 좋은 사양을 작성하는 것은 Q & D는 아니지만 직접 작성하는 것만 큼 많은 작업입니다. 그러나 아웃소싱의 목표는 시간 및 / 또는 비용을 절약하는 것이므로 아웃소싱 파트너에게 제공되는 사양은 개략적입니다. 시간당 지불하는 계약자와 감독 부족을 추가하면 예상되는 사항이 분명합니다.
저는 2 년이 조금 넘는 시간 동안 중국에서 살고 있으며 (캐나다인) 중국 개발자와 함께 일하고 있으며 이상하게도 해외에서 캐나다 개발자와 일하고 있습니다. 나는 적어도 중국인 개발자들로 구성된 일반화 중 일부는 다소 사실이라고 말할 수 있습니다. 즉, 내가 만났거나 여기서 일한 대부분의 개발자는 다음과 같습니다.
처음에 그들이 쓴 것이 항상 좋지는 않았습니다. 문화적 차이는 있지만 처음에는 잘못 설계된 시스템의 가파른 학습 곡선이 있습니다. 하지만 2 년 후 ...이 시스템에서 수행 한 최고의 작업 중 일부는 중국 사무소에서 나온 것입니다. 이것이 점점 눈에 띄게됨에 따라 위협 요소를 더욱 악화시킵니다 ...
솔직히 쉽지는 않지만 개인적인 경험의 추세를 볼 때 울타리 오른쪽에 있다고 생각합니다.
이것은 매혹적인 주제입니다. 저는 SF와 실리콘 밸리에서 일했고, 유럽 지역 고객을 위해 일했으며, 인도에 해외 사무소를 설립하고 남미에 해외 개발 공장을 운영하고 있습니다. 아프리카 개발자들과도 약간의 작업을했습니다.
세계의 모든 지역은 훌륭한 프로그래머를 생산할 수 있습니다. 말라위에는 해커 친구가 있는데,이 방법은 오픈 소스 프로젝트를 사용하고 중요한 방식으로 HIV 클리닉을위한 오픈 소스 시스템을 지원하는 놀라운 터치 인터페이스 레일을 구축합니다.
또한 미국의 유명 프로그래머가 유명 브랜드 스타트 업과 종이 봉투에서 자신의 길을 프로그래밍 할 수없는 주요 웹 회사에서 일하는 것을 보았습니다. MIT의 Comp Sci에서 석사 학위를 받았거나 수년간의 업계 경험을 가진 사람들은 좋은 생산 코드를 작성했을 때 잘라낼 수 없었습니다.
유럽, 라틴 아메리카, 미국 및 인도 간에는 문화적으로 실질적인 차이가 있습니다. 그런 다음 다소 보편적 인 해커 문화가 있습니다.
주류 인디언 기술 커뮤니티는 문제에 사람들을 던지기를 좋아합니다. 개발자 당 시간당 요금은 더 적을 수 있지만 공급 업체가 품질보다 수량을 믿는다면 코드를 실행하려면 개발자 수의 두 배가 필요합니다.
인증. 도대체? 인도는 인증, ISO, CMMI 등을 계속 좋아합니다. 그것은 의미없는 엉덩이를 덮고 있습니다. 더 중요한 것은 좋은 소프트웨어를 개발하는 방법이 아닙니다.
카스트 제도. 카스트 제도는 인도에서 불법이며, 독립 이후로 그것을 제거하는 데 엄청난 노력이 있었지만 여전히 살아 숨쉬는 짐승입니다. 대부분의 서구인들은 카스트 제도의 존재를 무시합니다. 저는 미국에서 자랐지 만 아버지는 인도에서 태어 났으며 인도인으로 태어 났으며 어머니는 학생으로 대학에 갔다가 나중에 인도 대학에서 가르치기 위해 돌아 왔습니다. 카스트 제도는 매우 현실적이며 인도에서 왔으며 오래되었지만 영국인은 그것을 장려하고 권력을 유지하는 데 사용했습니다. 서양인들은 계층 구조의 최상위에서 영국을 대신한다는 것을 알아야합니다. 당신은 선생님이라고 부를 것입니다, 당신은 질문받지 않을 것입니다. 대부분의 인도 관리자는 자신의 역할이 미성년자에게해야 할 일을 말하는 것으로보고 있습니다. 다시 말하고 대안을 제공하는 것은 처벌됩니다.
모든 인도 개발 상점이 이와 같은 것은 아니며 Zoho는 모든 규칙을 위반하여 놀라운 인도 사업을 구축했습니다. 그들은 카스트하지 않는 능력 또는 당신이 가진 대학 인증에 따라 고용합니다. 그렇게함으로써 완전한 SaaS 대체품을 MS Office Suite로 부트 스트랩했습니다.
인도에는 활발한 해커 커뮤니티가 있으며 모임, 메일 링리스트, 소규모 회의 등이 있습니다. 이 개발자들은 세계 최고입니다. 그들은 종종 주류 인도 소프트웨어 개발 산업에서 일하기가 어렵다는 것을 알게됩니다. 나는 나 자신의 인도 사무실을 위해 두 개의 파이썬 개발자를 찾았다. 그들은 훌륭했고, 그 후 우리의 인도 관리자는 팀을 채우기 위해 12 명의 신입생을 고용했다. 몇 달 후 해커들은 그만두고 관리자들은 목숨을 잃었습니다. 우리는 열두 명의 젊고 열정적 인 직원들과 함께 있었고 대부분은 프로그램을 잘하는 법을 몰랐습니다.
가장 신선한 것은 임베디드 시스템에 대한 개발자를위한 IDE를 구축 한 젊은 여성이었습니다. 그녀는 보수적 인 가정에서 왔기 때문에 아무도 그녀를 고용하기를 원치 않았으며 인디언은 결혼을 마치면 직장을 그만 두어야한다고 생각했습니다.
인도에는 훌륭한 개발자가 있지만 가치 구조는 그들을 밀어 내고 훌륭한 코드를 만드는 것과 아무런 관련이없는 것을 기반으로 사람들을 홍보하도록 설정되었습니다.
다른 큰 문제는 시간대입니다. 이점이 아니며 큰 문제입니다. 이는 온 사이트 팀과 오프 쇼어 팀간에 지속적인 직접 커뮤니케이션이 없음을 의미합니다. 이로 인해 큰 오해가 생겨서 많은 양의 문서를 작성하게됩니다. 민첩성을 끌어 내기가 매우 어렵습니다.
슬픈 사실은 인도 기업이 생산하는 소프트웨어의 양이 품질이 낮다는 것입니다. 당신은 항상 인도 엔지니어들이 어떻게 쓰레기에 대해 이야기하는지 들었습니다. 사실은 아니지만, 그것은 전통적인 대형 해외 회사의 품질을 반영한 것입니다. 개발자 자체가 아니라 인도의 비즈니스 문화의 잘못입니다. 개발자는 잘못된 것을 보상하는 나쁜 시스템에 갇혀 있습니다.
나는 아시아 (해외에 언급하지 않을 다른 나라들)에 해외에서 여러 프로젝트를 경험했다. 그들 모두는 끔찍한 실패였습니다. 풍부하고 자세한 문서화에도 불구하고 결과를 통해 전송 된 사양 문서 등은 (아무것도 생산되지 않은 경우) 균일하게 열악했습니다. 일반적으로 그것은 전혀 작동하지 않았거나 쓸모없는 기능이 거의 없었습니다. 프로젝트는 (실제로 생산물을 생산하는 경우) 심각하게 늦었습니다.
OTOH 저는 아시아 프로그래머 및 유럽과 미국에서 일하는 다른 사람들과 함께 일했으며 대부분 자신의 직업을 잘 알고있는 열심히 일하는 사람들입니다.
그들 중 몇몇은 아마 모든 훌륭한 IT 사람들이 아시아를 떠나 유럽과 미국에서 일한다고 말합니다. 남은 것은 품질이 낮거나 부족하여 감독, 교육 및 팀 리더십을 제공하여 개선을 이끌어내는 사람이 거의 없거나 전혀없는 것입니다. 전화와 이메일을 통해 (적어도 일부 국가에서 온) 아시아 IT 사람들을 대해야했고 (텔레비전 등의 인터뷰를 보는 등) 문화도 관련 될 수 있습니다. 많은 사람들이 자신을 인종과 도덕적으로 미국인과 유럽인보다 우월하다고 생각하고 (반역자를 떠난 사람들을 고려합니다) 열등한 존재를 고려하는 사람의 조언을 듣기를 거부합니다. 이것은 확실히 아시아 국가의 모든 사람들에게 해당되는 것은 아니지만 "우리가 가장 잘 알고있는 분위기를 조성 할만큼 충분히 널리 퍼져있을 수 있습니다.
동유럽의 상황은 일부 국가가 EU의 일부이기 때문에 더 좋을 수 있습니다. 따라서 그들이 실패하면 성공적인 법적 조치에 대한 더 큰 위협이 있습니다.
무딘 냉소적 :
IBM에서 10 년 동안 전 세계의 프로그래머와 다양한 관계를 맺었습니다. 가장 먼저 배우는 것은 지리적 고정 관념이 모두 바다 양쪽에서 잘못되었다는 것입니다. 프로그래머는 전 세계 프로그래머입니다. 어디에서나 100 개를 고르면 여행이나 3 대 구글 없이는 헬로우 월드를 프로그래밍 할 수 없었던 사람들과 거의 같은 비율을 얻을 수 있습니다. .
그러나 일부 지역에서는 비즈니스 환경의 지리적 일반화가 정확합니다. 예를 들어 인도는 오스틴, 텍사스 또는 실리 콘 밸리가 90 년대 후반과 2000 년대 초반에 있었던 것과 같습니다. 매년 많은 일자리와 호핑 문, 사람들이오고 가고 있습니다. 반면에 중국은 미국 중서부의 실리콘 프레리와 훨씬 비슷해 보이며 사람들은 회사를 선택하고 더 오래 머물러 있습니다. 브라질, 러시아 및 유럽은 중간 정도의 장소에있는 것처럼 보였지만 중간 정도의 시간을 유지하지는 않았지만 두 사람, 일부는 직업을 호핑하고 어떤 사람들은 정착 한 것처럼 보입니다.
나는 동부 세계에 속해 있으며 회사에서 동부 세계로 다시 아웃소싱하는 경험을 가지고 있습니다 :-) 우리 회사는 우리가 제공 할 수있는 모든 도움에도 불구하고 작업을 수행하는 데 필요한 자체 자원입니다. 프로젝트가 실패한 아웃소싱 업체. 이 엔지니어들 중 일부와 일하는 것은 실망 스러웠으며, 아웃소싱 모델과 기술 전문 지식이 향상되어 동부 지역에서 더욱 발전 할 수 있다고 생각합니다. 서구의 많은 사람들과 함께 일할 수 있다고 말했습니다. 전 세계적으로 좋고 나쁜 프로그래머를 찾습니다.
You find good and bad programmers across the globe.
나는 중부 유럽에 산다. 최근 몇 년간 아웃소싱 물결이 우리를 넘어 섰습니다. 나는 "서부"의 아웃소싱 프로젝트를 진행했지만 현재 아웃소싱 프로젝트는 저렴한 국가에 상주합니다. 그래서 나는 방정식의 양쪽에 있었다.
우리가 아웃소싱을 할 때 우리의 관리자와 우리와 매일 같이 일했던 사람들은 좋았고 우리를 사내 개발자처럼 대했습니다. 직업 안전에 관한 약간의 우려는 다른 사람들로부터 느낄 수 있습니다. 또한 우리는 더 큰 프로젝트에서 2 단계 작업을 받았으며, 이는 나에게도 괜찮습니다. 주요 전문 지식을 아웃소싱해서는 안됩니다.
그런 다음 프로젝트는 더 싼 영토로 옮겼습니다.
전체 아웃소싱 이야기의 결론은 경영진이 지식, 경험, 교육 또는 노하우에 대한 쥐의 엉덩이를주지 않는다는 것입니다. 그들이 걱정하는 것은 비용과 보너스입니다. 따라서 현지 입지가 필요한 이유가 없으면 소프트웨어 프로젝트는 결국 더 저렴하고 저렴한 국가로 아웃소싱됩니다.
면책 조항 : 나는 인도인이며 이것은 인도의 견해처럼 들릴 수 있지만 많은 서양 고객 및 미국에서도 일했습니다. 만약 동반구가 세계에서 최악의 프로그래머를 가지고 있다면 왜 서반구가 동쪽으로 아웃소싱할까요? 전 세계 동부 지역으로 아웃소싱하면 비용을 절감하기 위해 IMO가 품질을 저하시킵니다. 빠르고 빠르고 저렴하며 둘 중 하나를 선택하십시오. 내가 남자를 고용해야 할 때 나는 내 조직에 그들의 기대치와 그들이 지불 할 가격이 얼마인지 물어 봅니다. 재능있는 자부심을 가진 사람이 적은 임금과 더 많은 압력을 위해 당신을 위해 일하도록 설득하는 것은 정말로 어렵습니다. 방글라 데르에서 일자리를 얻지 못한 불행한 서양인들과 결합 된 프리 랜싱 사이트는 동부 프로그래머들이 코드 원숭이입니다. 더 나은 가격을 지불 할 준비가되면 더 나은 결과를 얻을 수 있습니다. ISO / CMMI / SEI 종류의 서비스 회사를 따르지 마십시오. 그들은 양이나 가축을 키우는 것처럼 재능을 고용합니다.
저는 현재 해외에 거주하고 있고 (러시아에서) 사업가로 일하고 있습니다 (그리고 법안을 지불하는 프리랜서). 실리콘 밸리에서 수많은 회사와 스타트 업을 위해 20 년 이상 개발자, 기술 팀장 및 소프트웨어 / 시스템 아키텍트로 일했으며, 업계를 주도하는 수십억 달러의 전공으로 성장한 하나의 스타트 업을 포함하여 매우 유명합니다. 국제 법인. 이 마지막 회사 ( "X"라고 함)는 미국, 전 세계에 인도, 러시아, 중국, 유럽 등의 개발 센터를 보유하고 있습니다. 저는이 팀 중 일부와 직접 협력하여 재능이 뛰어나고 합당한 엔지니어. 주장과 독창성에 동의합니다. 지금은 미국의 엔지니어 성격 유형 인 경향이 있습니다.
아웃소싱은 돈에 관한 것입니다. 내가 미국을 떠났을 때, X는 미국에서 고용하지 않고 국제 사무소에서 고용했습니다. X는 미국 이외의 엔지니어에게 해당 지역 (연수 경험, 기술) 미국 엔지니어의 급여의 1/4 ~ 1/3 (지역에 따라 다름)을 지불합니다. 미국 이외의 일부 지역의 경제를 고려할 때 여전히 꽤 좋은 급여이지만, 이는 미국 엔지니어링 직책의 존재 여부에 따라 급여에 좋지 않습니다.
저는 프리 랜싱이 컴퓨터 작업, 소프트웨어의 미래라고 생각합니다. 그 특성상 휴대 성이 뛰어 나기 때문에 노트북과 인터넷 연결 만 있으면됩니다. 보다 안정적인 스케줄링, 예측 가능한 기술 세트 등 내부 현장 팀을 위해 항상 필요한 경우가 있지만 유지 관리 비용 이 매우 비쌉니다.
미국 엔지니어가 미국 이외의 모든 개발자가 얼마나 끔찍한 지에 대해 다소 빈번하고 오만한 게시물을 보았습니다 (예 :이 스레드를 살펴보십시오 : https://stackoverflow.com/questions/209170/how-much-does- 그것은 아이폰 응용 프로그램을 개발하는 비용). 고정 관념은 예, 저렴하지만 항상 품질이 낮고 거친 코드를 작성한다는 것입니다. 품질을 얻는 유일한 방법은 미국 엔지니어에게 미국 급여를 지불하는 것입니다. 어리석은 이야기! 미국 엔지니어들은 깨어나야합니다. 업계와 경제는 고액의 사내 개발자에서 전 세계로 분산 된 개발 팀으로 이동하고 있습니다. 물론 미국 이외의 나쁜 개발자도 있지만 측정하지 않았기 때문에 통과 한 모든 미국 인터뷰 대상자에게 다시 생각해보십시오. 내가 보거나 작업해야했던 절대적으로 가장 끔찍한 코드 중 일부는 변경하거나 개선하기를 거부 한 사내 미국 엔지니어가 작성했습니다! 임의의 elance 개발자가 엉뚱한 일을했다고해서 미국 이외의 모든 엔지니어가 끔찍하다는 것을 의미하지는 않습니다. 대신에 엘 런스 고객은 최저 입찰자를 뛰어 넘어야 할 것이며, 실제 보석이 있으며, 최고 개발자도 사내 미국 금리를 크게 할인하여 이용할 수 있습니다. 이 특별한 순간에 저는 여러분에게 많은 재능이 미국에 집중되어 있음을 인정할 것입니다. 그러나 이것이 결코 변하지 않을 것이라고 생각하는 사람은 매우 심각합니다.
재능과 경험이 부족한 것보다 많은 비용이 듭니다. 그러나 미국 사내 직원의 급여 규모는 다른 세계의 급여 규모와 맞지 않습니다. 끊임없이 변화하는 역동적 인 인재 / 원가 연속체가 있으며, 미국 이외의 엔지니어의 배경 주변 인재는 계속 상승 할 것입니다. 이는 미국의 임금과 높은 임금의 존재에 매우 강한 하향 압력을 가할 것입니다. 유급 미국 사내 엔지니어링 직책 (X는 국제적으로 고용되지만 미국에서는 고용되지 않음) 따라서 더 재능있는 인재는 항상 재능이 적은 인재보다 더 많은 비용을 청구 할 수 있지만 현재 미국 환율에 미치지 못할 것입니다.
개발 팀의 물리적 위치 가 이미 변경된 것처럼 전 세계 인재의 집중도 절대적으로 바뀔 것입니다. 미국 이외의 인재 수준은 계속 높아질 것입니다. 그리 멀지 않은 미래에 우리는 이러한 실을 되돌아보고 "무엇에 대해 이야기했는지, 세계 어디에서나 최고의 인재를 찾을 수 있습니다"라고 생각합니다.
나는 지구의 동부와 서부에서 모두 일했고 생각을 공유 할 것입니다. 저는 방갈로르에서 5 년간 일한 후 미국으로 이사했습니다. 약 8 년 동안 미국에서 근무한 후 인도로 돌아 왔습니다. 일자리가 너무 까다로워서 집에 앉아 있어야했습니다. 2 명의 어린 아이들과 함께, 그 긴 시간을 넣는 것은 불가능했습니다. 마침내 시간제 일자리를 찾았습니다. 인도에서 일의 질을보고 놀랐습니다. 우리가 미국으로 떠났을 때 이것은 나쁘지 않았습니다. 젊은 사람들은 새로운 기술을 배울 책임이나 열정이없는 것 같습니다. 누군가가 지적한 것처럼 '아니오'라고 말하는 것은 드물며 (자아에 대한 타격, IMO) 결과적으로 완전히 쓸모 없거나 평범한 일을 보게 될 것입니다. 코드는 읽을 수 없으며 큰 그림을 전혀 알지 못하며 확장 범위가 없습니다. 당신이 남자를 훈련시킬 때, 그는 더 푸른 목초지를 위해 일을 할 준비가되어 있습니다. 그럼에도 불구하고, 나는 여전히 훌륭한 것들이 거의 없다고 말할 것입니다. 만약 당신이 그 / 그녀와 함께 일한다면, 특히 그 사람이 잘 의사 소통 할 수 있다면 운이 좋을 것입니다!
작품의 질이 나쁘면 아마도 인도를 보는 것이 많지 않을지 모르지만 그들은 최고의 입찰을하는 사람을 찾습니다. 그리고 그것은 Prasoon Saurav와 같은 것이 아니라 일부 주니어 코딩 팀일 것입니다.
나는 훌륭한 해외 프로그래머들과 함께 일했지만 고용하기에는 싸지 않았습니다. 나는 또한 매우 저렴한 해외 프로그래머들과 함께 일했지만 훌륭하지 않았습니다.
동쪽에있는 위대한 프로그래머들은 아마도 서쪽에있는 위대한 프로그래머들만큼 또는 거의 많은 돈을받을 수있는 방법을 찾는 것 같습니다. 어쩌면 그들은 그들 자신의 회사를 설립하고 어쩌면 그들이 할 수있는 모든 것을 비자를받을 수도 있습니다 그러나 그들은 길을 찾는 경향이 있습니다.
매우 저렴한 비용으로 기꺼이 일할 프로그래머 팀을 구할 때 최고의 인재를 기대하지는 않을 것입니다. 당신의 재능이 어디에 있든지 사실입니다.
저는 스위스 출신입니다. 우리가 우크라이나에 아웃소싱 한 하나의 프로젝트를 진행했습니다. 훨씬 저렴하지만 비용을 절감 한 개발자는이 근해 팀을 감독하기 위해 격월마다 팀을 우크라이나로 비행하는 데 재투자해야했습니다. 이 프로젝트는 아웃소싱 후 약 1 년 동안 사망했습니다.
나는 현재 스위스 회사에 아웃소싱하는 프로젝트를 진행하고 있는데, 그 회사는 모로코 근처에있다. 프로젝트는 잘 진행되고 있지만 커뮤니케이션 문제와 품질 문제가 있습니다.
가장 큰 문제는 우리가 해외 프로젝트를 저렴하게 구축 할 수있는 프로젝트라고 생각합니다. 물건을 더 싸게 얻는 것은 항상 어렵지만 같은 품질입니다 ...
매우 서툴고, 일반적으로, '서쪽'의 프로그래머가 '동쪽'의 프로그래머에 대한 높은 의견을 가지고 있다고 생각하지 않습니다. 이것이 정당한지 확실하지 않습니다.
일부 답변에서 알 수 있듯이 아웃소싱은 '서부'의 많은 사람들에게 위협이됩니다. 이것이 '라이벌'프로그래머를 불신하는 자동적 인 이유입니다.
아웃소싱 된 프로젝트를 볼 때 잘못된 코드 만 보였으며 적은 횟수였습니다. 프로젝트가 제대로 관리되지 않았거나 프로젝트가 성공하면 코드를 볼 필요가 없기 때문에 작업이 싼 가게 ( "당신이 지불하는 것을 얻는다")에 갔기 때문일 수 있습니다. 다시 말해, 잘못된 코드에 대해서만들을 수 있습니다.
위의 30000 줄 파일과 같은 공포 이야기도 있습니다. 다시 이야기가 나빠질수록 더 많이 퍼질 것입니다.
사람들은 '저렴한 일을 원한다면 아웃소싱하십시오. 제대로하고 싶다면 사내에서 해보십시오. '
당신이 배우고 개선하고 있다면 나는 그것에 대해 너무 걱정하지 않을 것입니다.
면책 조항 : 나는 아웃소싱에 대한 직접적인 경험이 없습니다. 아래에서는 대규모 서양 소프트웨어 회사의 프로젝트 관리자와 주제를 논의 할 때 제기 된 몇 가지 사항을 제시합니다. 이 직원은 아웃소싱 된 팀을 감독하면서 인도에서 많은 시간을 보냈습니다.
Wipro, Infosys, TCS 등을 들어 보면 세계에서 가장 큰 IT 회사 중 일부는 인도에 있습니다. 대부분의 "서부 소프트웨어 전문가"가 해외에 투자 할 수 없었던 가장 큰 인도 회사는 세계 최고의 품질로 쉽게 자격을 얻게 될 것입니다 . 그들은 서양 고객의 두려움을 완화하기 위해 품질에 관한 모든 인증서를 태양 아래에서 얻습니다. 또한 대부분의 서구 기업들보다 대부분의 인도 소프트웨어 회사에서 더 많은 엔지니어 (학위 및 경험)가 있습니다. 또한 Google, Oracle, IBM, Microsoft, SAP에는 모두 개발 센터가 있으며 저렴한 프로그래머를 찾는 것은 아닙니다.
우리는 어떻게 서부 엔지니어를 볼 수 있습니까? 우리는 당신이 바다를 볼 때 혼합 가방을 보는 것처럼 혼합 가방을 참조하십시오. 우리가 존경하는 자격을 갖춘 슈퍼 테크놀로지 사람들이 있으며 때로는 우리와 함께 일해야 할 주물 주머니가 있습니다. 전반적으로 우리는 혼합 팀에서 잘 지냅니다. 서양에는 "기술 지향적"사업가가 있고 다른쪽에는 프로그래머 만 있으면 관계가 정말 어려워집니다. 이것은 일반적으로 현지 관리자를 고용하지 않음으로써 돈을 절약하려고하는 현금이 부족한 서부 회사입니다.
동부 유럽이 아닌 동부 국가에 대한 아웃소싱 경험은 꽤 나빴습니다. 내가 본 모든 응용 프로그램은 끔찍한 일이며 간신히해야 할 일을하기 위해 서로 붙어있는 나쁜 관련없는 많은 코드처럼 보입니다.
나는 이것이 새로운 동부 프로그래머가 새로운 서구 프로그래머보다 더 나쁘기 때문이라고 생각하지 않는다. 나는 동부 프로그래머가 경험이 풍부한 프로그래머가 그들을 안내하지 않았기 때문이라고 생각한다. 서구 세계에서 현대적인 프로그래밍 언어로 작업하는 것은 ~ 45 년 동안 일반적인 직업이었습니다. 따라서 새로운 프로그래머가 배울 수있는 사람과 함께 일할 숙련 된 프로그래머가 많이 있습니다. 동쪽에서 현대 프로그래밍은 무엇을 위해 일어나고 있습니까? 10 ~ 15 년? 사람들이 배울 수있는 경험이 부족합니다. 게다가, 나는 (여기서 볼 수있는 방식은) 동쪽에서 일하는 대부분의 프로그래머들이 외부에서 아웃소싱을한다고해서, 프로젝트를 얻는 것이 목표 인 많은 나쁜 특성들을 선택한다고 생각합니다. 새로운 개발자에게 넘겨서는 안되는 경험 인 코너를 잘라서 빠르게 수행 할 수 있습니다. 미국에서는 최소한 대부분의 프로그래밍 작업은 시간이 지남에 따라 지원해야하는 제한된 제품 세트를 사용하는 사람들을위한 것이 었습니다. 그래서 사람들은 소프트웨어가 안정적이고 안전한지 확인하는 기술을 선택했습니다. 이것은 새로운 세대로 넘어가는 좋은 경험입니다.
그래, 기본적으로 나는 그것이 어디서나 사람이 얻는 학교의 양과 관련이 있다고 생각하지 않으며, 직업에서 얻은 습관과 관련이 있습니다. 거기에는 훌륭한 프로그래머가 많이 있지만 (소수자들이 잘한다고 생각하지만) 프로젝트가 아웃소싱 될 때 서양인이 상호 작용할 것이라고 생각하지 않습니다.
동부 유럽의 경우 경험이 풍부한 개발자가 있습니다. 나는 아웃소싱의 요구를 충족시키기 위해 그들이 단계적으로 폐지 될지도 모른다.
@giddy, Peter : 인도에서 온 프로그래머로서, 나는 슬프게도 당신의 진술에 대해 진실을 인정해야 할 것입니다. 그들은 사회적 또는 경제적입니다. 그것이 인도에서 사람들이 기술직에서 순전히 경영직으로 빠르게 이동하는 것을 발견하는 이유 중 하나입니다 (실제로 "사다리를 옮기다"라고 불립니다). 기술자로 계속 성장하고 싶 더라도 관리 역할이 당신에게 어려워집니다 (실제로 인도를 떠나기로 결정한 이유 중 하나입니다).
저 너머의 이유로, 커리어 성장은 당신을 위해 일하거나 더 정확하게 일하는 사람들의 수와 같습니다. "나는 x의 팀을 책임지고있다"또는 "x 사람들은 아래에서 일한다"는 인도에서 "성공적인"사람에게 합당하다고 여겨지는 진술이다. 이 스레드에서 다른 사람이 참조한 코드).
모든 것을 말했듯이, 코드 품질이 좋지 않다는 것은 인도 나 다른 "저비용"국가에만 국한된 것이 아니라는 점을 지적하고 싶습니다. 때로는 유럽에서도 친숙한 태도와 코드 품질을 볼 수 있습니다. 고맙게도, 그들은 일반적인 규칙이 아닙니다.
나는 우리 회사의 업무를 아웃소싱하고 일반적으로 해외 회사들과 협력하는 경험이 혼합되어있었습니다. 참고로 저는 미국에 살고 있습니다.
CMMI 5 에 평가를 받고 인도에있는 회사와 계약을 맺은 회사에서 근무했으며 싸구려 일을했습니다. 이 회사는 처음부터 작성할 클라이언트 소프트웨어를 제공했으며, 코드가 버그가 많고 완전히 문서화되지 않았으며 일반적으로 리팩토링 및 유지 관리가 어려웠습니다. 회사는 결국 전체 고객을 처음부터 작성하고 오프 쇼어 비용을 먹었습니다.
또 다른 예로, 내가 일했던 회사는 아시아의 회사와 제휴하여 서비스와 제품을 동부 시장에 소개했습니다. 아시아 회사가 우리의 소스 코드와 제품 디자인을 가져 와서 파트너쉽을 깨고 내 회사와 동일한 자체 제품을 출시 한 소수의 사람들 만이 (나 자신을 대리하여) 알게 된 비밀 이야기가 일어났습니다.
또 다른 경우에, 내가 일했던 회사는 매우 현대적인 장소에 중국에 리서치 사무실을 열었고, 그들은 나보다 사무실에서 더 멋진 것들을 가지고있었습니다. R & D 시설이 커스텀 리눅스 개발을 위해 사용될 것이기 때문에 훈련을 위해 일주일 동안 중국 사무소로 보냈습니다. 이 팀에는 꽤 좋은 사람들이 있었지만 그 키의 개발자들과 마찬가지로 얼마 지나지 않아 남은 팀이 미국에서 다시 사용할 API를 작성했습니다. 리눅스에 대한 이해가 없었기 때문에 API를 완전히 나쁘게 호출 할 것이고 기본 소스 코드는 기뻤습니다. 그러나 나는 그 회사의 어느 누구도 리눅스 전문가가 아니었고, 그 프로젝트는 1 년 후에 폐기 되었기 때문에, 회사가 Linux를 작업하기 위해 이상한 팀을 선택했다는 큰 문제가 있다고 생각합니다.
다른 경우에는, 내가 동유럽에있는 회사와 계약을 맺고있는 다른 회사가있었습니다. 그 사람들은 정말 좋았고 취약성 테스트를 수행하기로 계약했으며 실제로 꽤 비싸지 만 일반적으로 가치있는 투자로 간주되었습니다.
나는 또한 다소 거대한 인도의 IT 서비스 회사와 함께 일했고, 우리는 그들에게 고용되었지만 계약을 맺은 사내 개발자를 보유하고있었습니다. 거기에는 좋은 개발자가 몇 명 있었지만, 우리가 다양한 프로젝트를 함께 수행했을 때 더욱 일반적인 이야기입니다.
이 이야기는 오락을위한 것입니다. 여러 회사와 함께 일했으며 국내 및 외국 회사에 대한 이야기가 있습니다.
일부 회사의 경우 의사 소통이 항상 어려운 부분이었습니다. 나는 동부 시간에 일하고, 우리보다 10-13 시간 앞서 사람들과 이야기 할 것입니다. 우리는 또한 실제 개발자들과 대화하지 않고 경영진만을 거치므로 연결이 끊어졌습니다.
방금 일을 즐기지 못한 만난 개발자도있었습니다. 우리는 한국에 데려왔고, 그는 한국에있는 방어 회사의 저임금으로 노예 노동을했기 때문에 주에 와서 일하기를 원했습니다. 나는 개발자가되기 위해 자신의 선택을 애도했던 개발자 (외국인)와의 동료였습니다. 그는 수백만 달러를 만들기 위해 노력했습니다.
The company ended up just writing the entire client from scratch and ate the cost of the offshoring.
. 이 문제가 두 번있었습니다.