Python

2020년 Python 개발자 설문조사 결과

2020년 Python 개발자 설문조사 결과

이 자료는 Python Software Foundation과 JetBrains가 협력하여 실시한 네 번째 공식 연례 Python 개발자 설문조사입니다. 2020년 10월, 약 200개 국가 및 지역에서 28,000명 이상의 Python 개발자와 애호가가 설문조사에 참여하여 이 언어 및 관련 에코시스템의 현재 상황을 알렸습니다.

2017년, 2018년, 2019년의 Python 개발자 설문조사 결과를 확인해 보세요.

일반적 Python 사용 현황

Python을 기본 언어 또는 보조 언어로 사용하는 비율

설문조사 응답자 중 85%가 Python을 기본 프로그래밍 언어로 사용합니다.

Python과 함께 사용되는 다른 언어의 사용 현황

> 100%
기본보조결합

JavaScript는 개발자가 Python과 결합하여 가장 많이 사용하는 언어입니다. 5명의 Python 개발자 중 2명이 JavaScrip와 더불어 HTML/CSS, Bash/Shell, SQL 중 최소 1개 이상을 사용하여 언어 스택을 만듭니다.

JavaScript 및 C/C++는 Python을 보조 언어로 사용하는 개발자가 가장 일반적으로 사용하는 기본 언어입니다.

웹 및 데이터 과학용 언어

> 100%

웹 개발은 "Python을 주로 어떤 용도로 사용하시나요?"라는 질문에 "웹 개발"을 선택한 사람들을 가리킵니다. 데이터 과학은 같은 질문에서 "데이터 분석" 또는 "머신러닝"을 선택한 사람들을 가리킵니다.

데이터 관련 작업을 수행하는 Python 개발자 중 8%만이 추가적으로 다른 언어를 사용하지 않는 반면 웹 개발자 중 3%만이 Python만 사용합니다. 이러니 웹 개발자 중 75%가 Python과 JavaScript를 모두 사용하고 있다고 해도 놀라운 일은 아닙니다.

Python 사용 목적

이 섹션에서는 사람들이 Python을 사용하는 용도, 작업 중인 개발 유형, 언어 사용을 다양하게 결합하는 방법을 알아보기 위해 질문했습니다.

Python을 주로 어떤 용도로 사용하시나요

Python을 어떤 용도로 사용하시나요?

> 100%
기본보조결합

Python 사용 사례에서 보이는 약간의 변화는 설문조사 응답자 중 학생 비율이 증가했기 때문으로 설명할 수 있습니다(전년도 10% 대비 13%). 교육 목적의 사용이 증가하고 응답자가 Python으로 진행하는 다른 모든 유형의 활동이 감소했습니다.

다음 활동에 어느 정도로 관여하고 계신가요?

> 100%

Python을 주로 어떤 용도로 사용하시나요?

기본보조결합

본인이 데이터 과학자라고 생각하시나요?

데이터 분석 및 머신러닝 작업을 하는 Python 개발자 중 32%만이 자신을 데이터 과학자라고 생각합니다.

데이터 과학자는 Anaconda를 사용하여 Python 버전을 업데이트할 가능성이 2배 이상 높은 반면, 다른 Python 사용자는 Python.org를 선호합니다.

데이터 분석 및 머신러닝 작업을 하는 응답자만 이 질문에 답변했습니다.

Python 버전

Python 3 대 Python 2

Python 버전 사용 사례

> 100%

Python 3 버전

Python 설치 및 업그레이드

> 100%

Windows 사용자는 Python.org에서 Python을 설치하는 편이고, Linux 및 macOS 사용자는 일반적으로 OS에서 제공하는 Python, pyenv 또는 Docker 컨테이너를 사용합니다.

Python 환경 격리

> 100%

IDE와 환경 격리 도구 사이에 흥미로운 종속 관계가 있습니다.

  • Jupyter Notebook 및 JupyterLab 사용자 중 절반 이상이 Conda를 선택합니다. 다른 에디터 사용자 중 Conda의 점유율은 약 20%뿐입니다.
  • PyCharm Professional Edition은 Virtualenv 및 Docker 사용자 사이에서 가장 많이 사용됩니다.
  • VS Code 및 PyCharm은 Pipenv를 사용하는 Python 사용자 사이에서 가장 많은 점유율을 차지합니다.
  • Vim은 Vagrant 및 Poetry를 사용하는 Python 사용자가 가장 많이 사용합니다.

Python 기능

즐겨 찾는 Python 기능

이 결과는 "Python 언어에서 가장 좋아하는 3가지 기능은 무엇인가요?"라는 열린 질문에 대한 답변을 기반으로 합니다.

* 표준 라이브러리, 기본 제공 데이터 구조, 별도의 클러스터로 추출된 표현식 제외:

  • 리스트 컴프리헨션, 생성기
  • 목록 및 사전
  • 데코레이터
  • Asyncio, 스레딩, 멀티프로세싱
  • 컨텍스트 관리자
  • 람다 함수

** 기타 항목은 응답자 중 1% 미만이 선택

원하는 Python 기능

이 결과는 "Python에 추가되었으면 하는 3가지 언어 기능은 무엇인가요?"라는 열린 질문에 대한 답변을 기반으로 합니다.

* 다른 클러스터로 추출된 표준 라이브러리의 개선 사항 제외

** 기타 항목은 응답자 중 1% 미만이 선택

프레임워크 및 라이브러리

웹 프레임워크

> 100%

FastAPI는 이번 설문조사에서 처음으로 답변 항목으로 도입되었으며 Python에서 세 번째로 가장 인기 있는 웹 프레임워크인 것으로 나타났습니다.

데이터 과학 프레임워크 및 라이브러리

> 100%

NumPy 사용자는 다른 Python 사용자보다 Conda를 사용하여 Python 환경을 분리할 가능성이 높습니다(32% 대 22%).

유닛 테스트 프레임워크

> 100%

유닛 테스트 프레임워크의 사용은 수년간의 전문적 경험과 밀접한 관련이 있습니다. 젊은 Python 개발자는 유닛 테스트를 수행할 가능성이 훨씬 적습니다.

또한 유닛 테스트 프레임워크는 웹 개발자 및 DevOps보다 데이터 분석 및 머신러닝 관련 작업을 하는 개발자 사이에서 더 일반적으로 사용됩니다. 유닛 테스트 프레임워크를 가장 많이 사용하는 개발자는 소프트웨어 테스트 및 자동화된 테스트 작성과 관련된 작업을 하는 개발자입니다.

기타 프레임워크 및 라이브러리

> 100%

AWS를 선택한 개발자 중 72%가 Requests 프레임워크를 사용합니다.

Tkinter와 Pygame 사용자는 대부분이 경력 1년 미만의 젊은 전문가였습니다.

ORM

> 100%

Flask를 사용하는 대부분의 Python 사용자는 SQLAlchemy를 선호하는 반면 Django 사용자는 Django ORM을 사용합니다.

데이터베이스

> 100%

PostgreSQL은 Python 개발자 사이에서 가장 인기 있는 데이터베이스이며 AWS 사용자 사이에서는 65%의 점유율을 보이며 훨씬 더 널리 사용됩니다.

빅데이터 도구

> 100%

대부분의 빅데이터 도구 사용자는 JupiterLab을 선호합니다. 이는 특히 Apache Spark 및 Dask 사용자의 경우 그렇습니다. Apache Kafka 사용자 사이에서 가장 인기 있는 선택지는 PyCharm Professional이고 2위는 Jupyter Notebook입니다.

기술 및 클라우드

상위 클라우드 플랫폼

> 100%

Heroku 및 PythonAnywhere는 최대 2년의 경력을 가진 젊은 전문가 사이에서 인기가 있으며 AWS 및 DigitalOcean은 그보다 경력이 많은 Python 프로그래머 사이에서 더 인기가 있습니다.

클라우드(프로덕션 환경)에서 코드를 어떻게 실행하시나요?

> 100%

컨테이너 내에서 코드를 실행하는 것은 여전히 가장 인기 있는 방법이지만 가상머신의 경우 2020년에 인기가 다소 떨어져 43%의 사용자만이 사용하고 있었습니다. 2018년에는 47%의 점유율을 차지했으며 가장 인기 있는 선택지였습니다.

클라우드용으로 어떻게 개발하시나요?

> 100%

테스터는 Docker 컨테이너에서 클라우드용으로 개발하는 사람들이 대부분입니다.

웹 개발자는 다른 유형의 개발자보다 원격 개발 환경 및 가상머신에서 개발할 가능성이 훨씬 적습니다. 이들은 Virtualenv에서 로컬로 작업하는 것을 선호합니다.

개발 도구

운영 체제

> 100%
Linux

68%

Linux

Windows

48%

Windows

macOS

29%

macOS

BSD

2%

BSD

1%

기타

경력이 많은 Python 개발자일수록 Linux 및 macOS를 개발 환경으로 사용할 가능성이 높고 Windows를 선택할 가능성은 낮았습니다.

지속적 통합(CI) 시스템

> 100%

2020년에는 Gitlab CI가 지속적 통합 시스템 카테고리에서 이전 리더였던 Jenkins / Hudson을 추월했습니다.

테스터는 지속적 통합 시스템을 가장 많이 사용하는 이들입니다. 소프트웨어 테스트나 자동화된 테스트 작성에 관여하는 개발자 중 약 80%가 CI 시스템을 사용합니다.

구성 관리 도구

> 100%

에디터 및 IDE

기본데이터 과학

가장 인기 있는 에디터와 IDE를 파악하기 위해 "현재 Python 개발에 사용하는 기본 에디터는 무엇인가요?"라는 1개의 답변만 할 수 있는 질문을 하였습니다. 2019년에 0.5% 미만의 답변을 받았던 항목은 "기타" 옵션으로 합쳤습니다.

PyCharm Community 및 Professional Edition의 점유율 합계는 33%로 작년 결과와 동일합니다. VS Code는 계속 성장하여 작년보다 5% 높은 점유율을 차지했습니다. 한편 Vim 또는 Sublime 텍스트 등 대부분 텍스트 에디터는 점유율이 다소 떨어졌습니다.

Jupyter Notebook, Jupiter Lab, Spyder는 데이터 과학 분야에서 사용자가 증가했습니다.

VS Code 사용자 점유율은 데이터 작업을 하는 사용자와 웹 개발자 사이에서 거의 동일했습니다.

PyCharm 사용자 점유율에서는 웹 개발자가 데이터 작업을 하는 사용자의 약 2배였으며 이 차이는 특히 PyCharm Professional Edition에서 두드러집니다.

Python 개발용 도구 및 기능

> 100%

이 질문에 나열된 대부분의 작업은 숙련된 사용자 위주로 변경되었습니다. 개발자의 경력이 많을수록 나열된 기술을 사용할 가능성이 높습니다. 그러나 이 관련성은 선택적 유형 힌트 및 자동 완성 기능에는 적용되지 않습니다. 11년 경력을 가진 Python 개발자는 3~5년 동안 코딩한 이들보다 이러한 작업을 정기적으로 수행할 가능성이 훨씬 적습니다.

직장 및 업무

팀 작업 대 개인 작업

프로젝트 작업

팀 규모

고용 상태

기업 규모

기업 업종

대상 업계

직책

> 100%

Python 경험

전문적인 코딩 경험

연령대

어느 국가/지역에 거주하고 계신가요?

1% 미만의 국가/지역은 모두 '기타'로 합쳐졌습니다.

방법론 및 원시 데이터

데이터를 더 자세히 살펴보고 싶으신가요? 익명화된 설문조사 응답을 다운로드하고 새로운 사실을 확인해 보세요! Twitter에서 해시태그 #pythondevsurvey와 함께 @jetbrains@ThePSF를 멘션하여 자신이 발견한 내용과 통찰력을 공유하세요.

이 데이터를 분석하기 전에 다음 중요한 정보에 유념하세요.

1

데이터 세트에는 공식 Python Software Foundation 채널의 응답만 포함됩니다. 중복 및 신뢰할 수 없는 응답은 필터링되었으며 python.org, PSF 블로그, PSF의 Twitter, LinkedIn 계정, 공식 Python 메일링 리스트, Python 관련 하위 레딧에서의 설문조사 홍보를 통해 2020년 10월과 11월에 수집된 28,000여 건의 응답이 포함됩니다. 설문조사가 특정 도구나 기술에 유리하게 치우치는 것을 방지하기 위해 응답을 수집할 때 제품, 서비스 또는 공급업체 관련 채널을 사용하지 않았습니다.

2

데이터는 익명으로 처리되며 개인 정보나 지리적 위치 정보가 포함되지 않습니다. 또한 개인의 의견에 있는 글자 하나하나로 개별 응답자를 식별하지 못하도록 모든 개방형 필드를 삭제했습니다.

3

여러분이 설문조사의 로직을 이해할 수 있도록 데이터 세트, 설문조사 질문을 비롯해 모든 설문 조사 로직을 공유하고 있습니다. 답변 항목에는 순서 지정 방법을 다양하게 사용했습니다(알파벳 순, 무작위, 사전에 정의한 순서). 각 질문에 대한 답변 항목의 순서는 지정되어 있습니다.

설문조사 원시 데이터 다운로드

다시 한번 Python Software Foundation과 JetBrains를 대표하여, 이 설문조사에 참여해주신 모든 분께 감사드립니다. 여러분의 도움으로 Python 커뮤니티의 지형을 더 정확하게 그려볼 수 있었습니다.

2017년, 2018년, 2019년의 Python 개발자 설문조사 결과를 확인해 보세요.

읽어주셔서 감사합니다!

이 보고서가 여러분에게 도움이 되었길 바랍니다. 이 보고서를 친구와 동료에게 공유해 주세요.

향후 설문조사에 참여해주세요:

본 설문조사에 관한 질문이나 향후 설문조사에 대한 제안이 있으면 surveys@jetbrains.com 또는 psf@python.org로 연락해 주시기 바랍니다.

© 2000-2021 JetBrains s.r.o. All rights reserved.