모든 회사가 개발자에게 최고의 하드웨어를 구매하지 않는 이유는 무엇입니까? 경우 만 강화됩니다.)

뭔가 빠졌을 것입니다.

내 지역에서 프로그래머를 고용하는 비용은 시간당 $ 50에서 $ 100입니다. 최고급 시스템은 3,000 달러에 불과하므로 3 년마다 진정한 컴퓨터 구입 비용은 시간당 $ 0.50입니다. ($ 3000 / (150 주 * 40 시간))

당신이 할 필요 최고급 기계를? 아니요, 여기서 $ 3000은 내가 기대할 수있는 금액이 아닌 지출이 가능한 최대 금액을 나타내는 것입니다. 이는 최고급 iMac 또는 MacBook (17 인치) 비용입니다.

더 싼 컴퓨터를 구입하여 3 년마다 2,000 달러를 절약 할 수 있고 평균 개발자가 60 달러를 벌고 있다고 가정 해보십시오. (이것은 내가 콩 카운터를 제공 할 수있는 가장 자선 가능한 숫자입니다. $ 1000 또는 $ 750 만 절약하면 저의 경우 만 강화됩니다.) 싼 컴퓨터 일 경우 하루에 10 분의 생산성이 필요합니다. (단순히, 나는 내 기계의 비용이 그보다 더 비싸다는 것을 확신한다.) 그러면 3 년 동안 125 시간의 손실 시간은 $ 7500의 손실로 이어질 것이다. 하루에 1 분의 손실 (750 달러)은 1250 달러의 순이익을 가져다 줄 것이며, 이는 사기 부진의 비용을 거의 상쇄 할 수 없습니다.

이것이 “페니와 현명한 어리 석음”의 사례입니까, 아니면 질문을 지나치게 단순화 했습니까? 소프트웨어 개발자가 훌륭한 하드웨어를 가져야한다는 보편적 동의가없는 이유는 무엇입니까 ( ‘기업’조차도)?

편집 : 나는 친구에게 부러움을 줄 수있는 빠른 성능과 / 또는 SSD를 원한다고 말하는 것이 아니라는 것을 분명히해야합니다. 일반적인 워크로드를 처리하기에 RAM이 너무 적은 시스템에 대해 이야기하고 있는데, 이는 일반적인 월요일에 일반 응용 프로그램을 부팅하고 여는 데 약 20 분의 정지, 재부팅 및 (과장 없음) 약 20 분을 초래합니다. (주말을 제외하고는 셧다운하지 않습니다.)

실제로 새로운 기계를 곧 출시 할 예정이며, 상황이 다소 개선 될 것입니다. (2011 년에는 2GB에서 3GB RAM으로 갈 것입니다.) 그러나 새 표준은 현재 표준에 비해 평범하기 때문에 은퇴 날짜 전에는 허용되지 않을 것으로 기대하는 것이 합리적입니다.

기다림! 당신이 대답하거나 언급하기 전에 :

  1. 3000 달러는 중요하지 않습니다. 원하는 기계의 가격이 이보다 적 으면 구매해야하는 이유가 더 많습니다.
  2. 더 빈번한 업그레이드를 요구하지 않습니다. 같은 일정에 더 나은 하드웨어. 따라서 숨겨진 설치 비용 등이 없습니다.
  3. 최첨단 하드웨어와 매우 우수한 하드웨어의 차이점에 대해서는 논의하지 마십시오. 나는 최악의 경우 3 년 전에 만들어진 최고의 기계 중 하나 인 기계에서와 같이 아주 좋은 하드웨어를 위해 로비하고 있습니다.
  4. 시간당 $ 50-$ 100은 급여가 아닌 고용 비용 의 추정치입니다 . 계약직으로 일하는 경우 계약 대행사가 비용과 이윤을 포함하여 사용하는 청구 비율이됩니다. 이 숫자가 비현실적이라는 것을 모르면이 숫자에 대해서는 언급하지 마십시오.
  5. 새로운 컨텐츠를 제공하고 있는지 확인하십시오. 다른 답변을 제공하기 전에 모든 답변을 읽으십시오.


답변

많은 회사들이이 문제에 대해 명백히 미쳤습니다.

진심으로. 10,000 명의 기술 관리자에게 “Danica Patrick에게 $ 100,000,000를 지불했다고 가정 해 봅시다. 자전거를 타면서 Indianapolis 500을 이길 수 있다고 생각하십니까?”

그럼에도 불구하고, 동일한 관리자 중 상당수는 고임금 소프트웨어 개발자가 좋은 도구와 마찬가지로 크 래피 도구 및 작업 조건 에서처럼 생산성을 높여야한다고 생각하는 것 같습니다. 많은 돈과 자전거를 더 빨리 밟을 수 있어야합니다.

이제 정확히 어떤 도구와 작업 조건이 구성되는지는 수행 할 작업에 따라 다릅니다. Linux 커널을 코딩하는 사람들은 웹 사이트 디자이너와는 다른 종류의 하드웨어가 필요합니다. 그러나 회사가 그것을 감당할 수 있다면 사람들이 가능한 생산적으로되기 위해 필요한 것을 얻지 않는 것은 미친 짓입니다.

제가 근무한 한 회사는 주로 C에서 9GB 소스 코드를 사용했으며 가장 필요한 것은 빠른 빌드였습니다. 불행히도, 우리는 대부분 5 년 전에 평범한 하드웨어를 사용하여 작업하고 있었기 때문에 사람들은 당연히 현재 작업하고있는 것보다 훨씬 더 많은 것을 구축하는 것을 꺼려했으며 낮은 생산성, 품질 문제 및 손상된 빌드를 통해 막대한 피해를 입었습니다. . 이 회사는 하드웨어를 업그레이드 할 돈이 있었지만, 이상한 점이있었습니다. 그들은 지난 여름에 1 억 달러 이상을 불고 사업을 중단했다. 두 명의 큰 고객이 마감일을 반복해서 놓친 후 철수했기 때문이다. 우리는 생산성 향상 방법을 제안하라는 요청을 한 번 받았습니다. 나는 OP가했던 것과 같은 종류의 비용-편익 분석을 제시했다. 경영진은 “이것은 틀렸어 야한다.

내가 일했던 또 다른 회사는 프로그래머들을위한 훌륭한 컴퓨터를 가지고 있었지만, 모든 사람들은 파티션이없는 붐비는 불펜의 작은 책상에서 일한다고 주장했다. 우리 중 많은 사람들이 정교한 프로토 타입 하드웨어로 작업했기 때문에 문제가되었습니다. 책상 위에 놓을 공간이 거의 없었으므로 사람들은 걸어서 닦고 바닥에 부딪 쳤습니다. 그들은 또한 VC 자금으로 4,700 만 달러를 쏟아 부어 보았으며 그 결과를 보여줄 것도 없었습니다.

나는 나쁜 도구와 노동 조건만으로도 회사를 죽였다는 말은 아닙니다. 그러나 나는 누군가에게 많은 돈을 지불하고 그들이 나쁜 도구와 노동 조건으로 생산적이기를 기대하는 것은 기본적으로 불합리한 사업에 대한 비이성적 인 접근 방식을위한 “석탄의 카나리아”라고 말합니다.


내 경험상 프로그래머를위한 가장 큰 생산성 킬러는 혼란스러워지고있다. 주로 컴파일 된 언어로 작업하는 나와 같은 사람들에게는 느린 빌드가 큰 유혹입니다.

“빌드 및 실행”버튼을 눌렀을 때 5 초 내에 테스트 할 예정인 경우 영역을 벗어날 수 있습니다. 그것이 5 분이 될 것이라는 것을 안다면, 나는 타이머를 설정하고 다른 것을 할 수 있으며, 타이머가 꺼지면 테스트를 시작할 수 있습니다.

그러나 중간 어딘가에는 블로그와 P.SE를 읽는 것과 같이 지루한 시간을 낭비하는 활동의 사악한 도랑이 있습니다. 컨설턴트로 청구하는 요율에 따라, 엄청난 사양으로 하드웨어에 돈을 버려서 그 도랑을 피할 가치가 있습니다. 그리고 많은 기업들에게도 가치가 있다고 감히 생각합니다. 그것은 단지 인간의 본성이며, 초인간적 자제를 기대하는 것보다 모든 영장류에 공통적 인 정상적인 약점을 수용하고 적응하는 것이 훨씬 더 유용하다는 것을 알았습니다.


답변

실제로 한 비용은 가시적이고 정량화 할 수 있지만 다른 비용은 그렇지 않다고 제안합니다.

하드웨어 업그레이드에 실패하면 예산에서 개발자 당 주당 최대 $ 1000의 비용이 발생하더라도 기술 부서 외부에서는이를 본 사람이 없습니다. 더 느린 속도로 작업이 여전히 완료됩니다. 기술 부서에서도 그 수치를 계산하는 것은 수많은 예측할 수없는 가정을 기반으로합니다.

그러나 개발 관리자가 특히 개발자가 50 명 이상인 회사에서 개발자 당 3000 달러를 요구하는 경우 많은 정당성이 요구됩니다. 그는 어떻게합니까?


답변

나는 고용주 측에서 2 센트를 여기에 넣을 것입니다 … 개발자이기도합니다.

저사양 머신은 쓸모가 없지만 최고급 머신은 너무 과도하다는 데 동의합니다.

최고급 기계를 얻지 못하는 데는 여러 가지 이유가 있습니다.

  1. 현금 흐름은 이론이 아니라 실제 문제 입니다. 매년 $ 60K- $ 80K를 지급받을 수도 있지만 이번 달에는 은행에 총 금액이 있으며이 달의 모든 경쟁 상품으로 분할해야합니다.
  2. 가격과 이익의 슬라이딩 스케일이 있습니다 . 저가형 기계는 전체적으로 쓸모가 없습니다 … 셀레론 또는 저전력 칩을 얻은 다음 삐걱 거리면 … 중거리 기계는 전반적인 성능이 뛰어납니다. 최상급에 도달하면 주어진 목적 (CAD, 게임, 비디오 인코딩 등)과 튜닝 비용이 추가됩니다.
  3. 일반 부품은 일반적으로 저렴 하고 교체, 보증 및 보험은 대체 비용을 지불하는 동안 전체 운영 비용과 중단 시간에 영향을 미칩니다.
  4. 최고급 기계는 가격의 1/3보다 빨리 감가 상각 됩니다.
  5. 고급 그래픽 프로그래밍 또는 CAD 작업을 수행하는 경우 추가 성능이 유효합니다. 표준 비즈니스 소프트웨어를 작성하고 Visual Studio 또는 이클립스를 실행하고 Stackoverflow를 서핑하여 답을 얻는다면 여분의 힘은 멋진 자랑거리이지만 사실 중형 기계는 오늘날 표준 상자에서 CPU 또는 메모리를 최대로 늘리지 않습니다.
  6. 오늘날 제작 된 중거리 기계 는 2 년 안에 2 배 더 빠를 것입니다. 진지하게, 그들은 빨리 점화하고있다.
  7. 하루가 끝나면 대부분의 작업은 텍스트 파일에 원시 텍스트를 입력하고이를 컴파일러로 전송하는 것입니다. 1970 년대 VI 이후 비트가 실제로 변경되지 않았으며 오늘날의 저가형 머신은 수백만 배 더 빠릅니다. 그 당시의 코드보다 … 코딩 속도가 그렇게 다르지 않습니다.

요약하자면, 좋은 장비와 좋은 툴링을 가져야합니다. 큰 차이를 만들지 만 최고급 장비는 “일반 개발자”에게는 적합하지 않습니다.

… 아, 그리고 나는 지금 당신이 편집을 읽고 그것이 당신이 말하는 것입니다, 나는 지금 그것을 작성한 위의 cos를 남길 것입니다 … 예, 툴링에 대한 기계의 사양이 낮습니다.

미드 레인지 머신을 명확히하려면

  • 이 단계에서 최소 2 코어, 4 코어가 더 이상 과잉입니다.
  • 4GB는 분이고 8GB는 좋으며 더 이상 가지고 있습니다.
  • SSD는 표준이지만 실제로 10KRPM WD 또는 seagate 80-100GB 드라이브는 제대로 작동합니다.
  • 합리적인 비디오 카드의 경우 최소 2 x 19 “모니터입니다.

답변

“최고급”기계와 “거의 최고급”기계의 생산성 차이는 무시할 만합니다. 가격의 차이가 크다.

모든 개발자가 동일한 HW 및 SW 이미지를 사용하는 대신 다른 시스템에 대한 IT 지원은 말할 것도 없습니다 (매번 새로 고용 할 때마다 최고급 시스템을 구매하는 경우에는 수행 할 수 없음). 매번 다름). 또한 작년 최고급 고객에게는 업그레이드 된 다음 큐브가 그들보다 “더 나은”기계를 가지고 있기 때문에 업그레이드를 원할 것입니다.

업무에 최고급 장비 가 필요 하지 않으면 돈을 버릴 이유가 없습니다.


답변

대부분의 고용주는 개발자의 생각, 행동 또는 작동 방식을 이해하지 못하기 때문입니다. 또는 최고의 툴로 회사 비용을 절감하면서 생산성을 높일 수있는 방법. 이로 인해 Joel Test에서 “돈을 살 수있는 최고의 도구” 를 제공하지 못하는 문제가 발생합니다 . 이것은 또한 생산성 및 작업 만족도의 손실로 이어진다. 그게 그대로입니다. 언젠가 당신은 자신의 회사를 시작하고 13/13을 득점 할 수 있습니다. 그때까지 고용주에게 미리 질문하여 취업하기 전에 무엇을 기대해야하는지 알게하십시오.

당신이 현재의 상황에서, 그들이 당신이 듣고 신뢰한다고 느끼면 토론을 시작하십시오. 그들이 당신에게 업그레이드를 제공하는지 확인하십시오. 듀얼 50 인치 모니터가 장착 된 라인 리그를 가지고 있다면 조금 더 오래 일할 수 있다는 것을 알고 있습니다.

도요타 캠리가 당신을 똑같이 여기에 올 때 사람들이 메르세데스 CLS를 원하는 것과 같은 이유. 물론, 새로운 머신으로 컴파일 타임 아웃 시간을 몇 초만 더 줄일 수 있지만 모양은 중요합니다.


답변

수학에는 회사 안팎으로 일정한 하드웨어 흐름을 관리하는 데 필요한 시간이 포함되어 있지 않습니다. 회사의 규모에 따라 추가 IT 인력이 한두 명 필요하므로 다른 $ 50- $ 100k / 년 당신의 숫자 위에. 또한 컴퓨터를 교체 한 날의 생산성을 잃게됩니다. 전담 IT 직원이 급상승하는 경우 백업을 수행하고 스스로를 복구해야합니다. 다시 말해, 생각보다 조금 더 복잡하다고 생각합니다.


답변

논증의 한 가지 문제는 현금 흐름입니다. 그들이 돈이 없다면 요점은 헛소리입니다. 다른 하나는 투자 수익입니다.

근무한 회사에는 적용되지 않을 수 있습니다. 일부 회사는 높은 레버리지 및 / 또는 현금이 부족합니다. 그들은 오히려 더 많은 위젯이나 소프트웨어를 판매 할 물건에 대해 당신이 기술 한 비용을 절약 할 것입니다. 생산에서 얻는 이익이 다른 분야에 대한 동등한 투자보다 중요하다는 것을 보여 주어야합니다.

소프트웨어 회사가 유지 관리 모드에 있고 더 많은 판매가 필요한 경우 판매 및 마케팅에 돈을 쓰면 더 나은 수익을 얻을 수 있습니다.

귀하의 경우 돈이 회사의 다른 영역보다 프로그래머에게 더 잘 소비된다는 사실을 해결해야한다고 생각합니다.

급여를 받고 있다면이 주장에주의하십시오. 그들은 당신이 차이를 만들기 위해 더 열심히 일하기를 원할 것입니다.)