데이터 소스

특정 국가의 개발자 수를 추정하기 위해 JetBrains는 국제 노동 조직(예: Eurostat)의 데이터를 수집하고 해당 국가의 국가 통계(예: 캐나다의 경우 캐나다 통계청)를 활용합니다. 나라마다 '프로그래머'라는 용어에 대한 정의가 다르기 때문에 JetBrains의 연구 목적에 가장 관련성이 높은 데이터를 수집합니다. 예를 들어, 미국에서는 다음과 같은 직업이 '프로그래머'의 정의에 가깝습니다.

  • 15-1131 컴퓨터 프로그래머
  • 15-1132 소프트웨어 개발자, 애플리케이션
  • 15-1133 소프트웨어 개발자, 시스템 소프트웨어
  • 15-1134 웹 개발자

JetBrains는 매년 전 세계 30,000명의 개발자를 대상으로 연례 개발자 에코시스템 설문조사를 실시합니다. 이 데이터는 연구 모델을 구축하는 데 중요한 역할을 해왔으며, 인기 있는 프로그래밍 언어, 도구, 기술, 개발자 선호도 및 새로운 동향에 대한 인사이트를 포함하여 개발자 커뮤니티에 대한 포괄적인 이해를 제공합니다.

사용되는 모델

모델 구축을 위해 JetBrains는 특정 연도(T)에 특정 국가(X)의 인구 규모와 개발자 수를 이용합니다. 해당 국가에서 공개적으로 이용 가능한 최신 자료를 이용하여 계산에 사용할 가장 최신 정보를 포함한 연도를 확인합니다. 이를 통해 해당하는 특정 연도에 해당 국가의 개발자 밀도를 계산할 수 있습니다.

DevDensity = DevNumber/Population

동일한 국가의 최근 몇 년 동안(T+1, T+2, ...) 개발자 수를 계산하기 위해 밀도가 일정하다고 가정하고 UN 추산에 따라 이를 국가의 최근 인구 수치에 적용합니다. 이 모델은 회고 분석을 기반으로 효과적인 것으로 입증되었습니다. 데이터가 누락된 국가의 개발자 수를 계산하기 위해 동일한 지역에 있는 다른 국가('Y'로 표시)의 데이터를 사용합니다. 각 국가 Yᵢ에 대해 알려진 모든 연도의 평균 밀도를 계산합니다. 그런 다음, 최종 평균 값 중에서 10% 분위수를 선택합니다. 이 수치는 대략 X 국가의 개발자 밀도와 같습니다.

일반 개발자 인구의 밀도를 계산했으면 해당 커뮤니티 내 특정 개발자 카테고리의 규모를 계산할 수 있습니다. 개발자 에코시스템 현황 설문조사 데이터의 샘플에서 관심 카테고리의 점유율을 알면(예: 모든 프로그래머 중에서 Python을 사용하는 프로그래머) 이 특정 카테고리의 규모를 다음과 같이 계산할 수 있습니다.

CategorySize = CategoryShare х DevPopulation

2023년에 미국에서 Python을 사용하는 개발자 수를 추정한다고 가정해 보겠습니다.

보유 중인 2023년 개발자 에코시스템 현황 데이터에서 다음과 같은 설문조사 질문에 대한 답변을 이용할 수 있습니다.

  • 어느 국가 또는 지역에 살고 계시나요?
  • 지난 12개월 동안 어떤 프로그래밍 언어를 사용하셨나요?

국가 또는 지역으로 '미국'을 선택한 모든 응답자 중에서 Python을 사용하는 미국 개발자의 비율은 프로그래밍 언어로 'Python'을 선택한 응답자의 가중치 비율로 추정됩니다.

2023년에 미국에서 Python을 사용하는 개발자 수에 대한 추정치는 다음과 같이 계산할 수 있습니다.

SizeUsaPython = ShareUsaPython х DevPopulationUSA

한계

이와 같은 방법론에는 몇 가지 한계가 있습니다.

현재 이 모델은 전문 개발자만 고려합니다. 사용된 데이터와 방법론이 학생이나 취미 프로그래머를 고려하기에는 충분하지 않기 때문에 이들은 포함하지 않습니다.

특정 연도에 대한 정보가 누락된 경우, 이용 가능한 가장 최근의 데이터가 사용됩니다. 일부 국가의 경우, 데이터가 누락되어 대체하거나 정리해야 합니다.

대시보드에 있는 필터링 옵션은 제한적이며 포괄적인 데이터가 있는 옵션만 포함되어 있습니다.

수치는 가장 가능성 있는 값(평균 예측)만 반영하므로 정확한 값으로 취급해서는 안 됩니다. 모델의 회고적 테스트를 기초로 하여 실제 값은 예측 값에서 평균 14% 정도의 편차를 보입니다(MAPE 메트릭). 이를 통해 실제 값이 대시보드에 표시된 예측에서 얼마나 벗어날 수 있는지 파악할 수 있습니다.

급여 계산기

급여 계산기는 연례 개발자 에코시스템 설문조사에서 수집한 데이터를 기반으로 합니다. 급여 데이터는 응답자들에게 보너스를 제외한 연간 순(세후) 급여를 미국 달러로 질문하여 얻었습니다.

급여 계산기 방법론에는 몇 가지 한계가 있습니다.

  • 응답자들은 구체적인 급여 수치가 아닌 급여 범위의 형태로 급여 정보를 제공하도록 요청받습니다. 즉, 급여 계산기는 이러한 범위 내의 추정치만 제공할 수 있으며 정확한 추정치를 제공하지 못할 수도 있습니다.
  • 급여에 영향을 미치는 요인은 직무에 따라 달라질 수 있습니다. 다양한 직무(디자이너, 프로젝트 관리자, 제품 관리자 등)를 가진 사람들로부터 응답을 받았지만 이러한 역할에 대한 정확한 급여 추정치를 제공하기에는 응답 수가 부족합니다. 따라서 급여 계산기는 코딩 전문가(전문 코딩 경험이 있는 정규직 응답자)에 대한 추정치만 표시합니다.
  • 특정 연도에 대한 정보가 누락된 경우, 이용 가능한 가장 최근의 데이터가 사용됩니다.
  • 급여 계산기에는 국가 및 프로그래밍 언어에 대한 제한적 필터링 옵션만 있으며, 이유는 이러한 옵션에 대한 대표적 설문조사 데이터만 있기 때문입니다. 예를 들어, 정확한 추정치를 제공할 만큼 데이터 포인트가 충분하지 않은 오스트리아는 국가 목록에 포함되지 않았습니다.