본문 바로가기

테크 이야기

나라별 개발자 구인통계 (한국,미국,영국)

새로운 웹 프로젝트를 기획하면서 어떤 기술스택을 가져갈지에 대한 고민이 있었다. 그리고 그 고민으로 각 잡사이트를 뒤지면서 구인 현황들을 조회해봤다. 물론, 비지니스와의 연계성뿐만 아니라 개발자의 향후 경쟁력 둘다 고려해야 했다. 비지니스에 최적화만 고려할 수 없는 것이 개발자들이 충분히 흥미가 있어야 하고 또 그 기술적인 투자가 헛되지 않아야 개발 시너지가 생기기 때문이다.

노드를 기반으로 한 MEAN 스택과 파이썬의 장고와 플래스크 그리고 루비 중에 어떤 스택을 선택해야 될지에 대한 고민이 이어졌다. MEAN(Mongo, Express, Angular.js, Node.js)스택의 경우 API 기반의 서비스나 싱글 애플리케이션과 같은 모바일 환경에는 최적화 되었지만 일단, 웹이 주를 이루는 서비스 부분에서는 큰 장점을 발휘하기가 어렵다. 그리고 그에 비해서 학습에 투자해야 되는 부분이 많다는 부분에서 일단 선택에서 제외되었다.

그래서 루비와 파이썬에서 고민이 있었는데 개인적으로 생산성에서는 루비 온 레일스가 나아 보였지만 파이썬의 점유율과 다양한 분야에서 활용도가 높고 또 크게 단점이 없다는 부분에서 결국 파이썬을 선택하게 되었다. 그리고 파이썬에서도 장고와 플래스크의 선택이 있었지만 결국 파이썬을 차근차근 이해하고 또 기술을 원하는 여역위주로 확장해 나갈 수 있다는 점에서 플래스크를 선택하게 되었다. 

그래서 이런 결정을 내리면서 미국과 영국에서는 얼마만큼의 기술 점유율을 가지고 있는지 궁금했고 각 나라를 대표하는 잡 사이트에서 핵심 키워드를 통해서 검색해 봤다. 잡 사이트가 시장에서의 개발자 수요를 나타내고 있고 그 수요가 대부분 개발자 포션을 반영하기 때문에 크게 다르지 않을것이라고 생각했다.

북미 대륙을 대표하는 미국과 유럽을 대표하는 영국 그리고 한국 이렇게 세 나라를 비교해봤다. 조회한 키워드는 node.js, python, ruby, c#, java, php 이다. 모두 웹 서버 플랫폼을 비교하고 싶었지만 java와 C#의 경우 경우 안드로이드 개발자나 윈도우 기반 프로그램 개발자가 포함될 수도 있기 때문에 다소 조회 결과가 많이 나오게 되는 것을 감안하고 보면 좋다.




각 나라별 개발자 구인통계

필자가 이 데이터를 조회하게 된 것은 과연 파이썬, 루비 그리고 노드가 얼만큼 사용되고 있을지가 궁금해서였다. 먼저 한국의 결과부터 살펴보자. 




[잡코리아에서 각 키워드로 검색한 결과]


한국은 자바와 C#그리고 php가 주를 이루는 것을 볼 수 있다. 스타트업 기업들보다는 S.I와 같은 엔터프라이즈 시장이 한국의 주된 점유율을 가지고 있기 때문에 java나 C#이 대부분인 것을 볼 수 있다. php의 경우 이전의 웹 사이트들과 서비스들을 점유하고 있는데 여러 대표적인 오픈 CMS 툴들과 쇼핑몰 솔루션 들이 php로 되어있는 부분도 이 점유율에 큰 일조를 했다고 볼 수 있다. 

그리고 약 5% 정도를 차지하고 있는 node와 python 글고 ruby는 주로 기술 스타트업에서 사용한다고 볼 수 있지만 아직 한국에서는 스타트업 자체의 점유율이 떨어지고 트렌드를 분석하고 선구할 수 있는 개발자들이 많이 부족하다는 부분에서 약 5%가 안되는 점유율이 나온 것으로 분석된다. 




[computerjobs에서 조회]


미국도 java와 C# 비율이 낮은 것은 아니지만 우리나라처럼 압도적이지는 않다. java와 C#의 비율이 약 4:3 정도를 유지하고 있으며 국내와 조금 다른 것은 php의 점유율이 높지 않다는 것이다. 주된 node, python 그리고 루비의 점유율이 약 30%를 차지 하고 있다는 부분에서 한국과 많이 대조적이다. 물론, 엔터프라이즈 시장이 한국만큼 크지 않고 스타트업의 점유율이 많다는 점에서 이런 그래프가 그려질 수 있다.

트랜디한 기술을 주도하는 실리콘 벨리 지역에서의 점유율은 아래와 같았다.



[computerjobs에서 조회]

실리콘 벨리에서는 파이썬, 루비와 같은 기술들의 점유율이 상대적으로 높았다. 비지니스 성향에 따라서 기술선택 부분도 달라지게 되는데 아마 뉴욕같은 경우에는 C#이나 java와 같은 엔터프라이즈 환경의 기술이 더 많을지도 모른다. 그리고 자바의 경우 안드로이드 점유율을 포함하고 있기 때문에 월등히 높게 나온 부분이 있다. 웹 서버 기술만 놓고 보자면 자바도 20-30% 정도가 될 것으로 예상된다.


스타트업이 루비 그리고 파이썬과 같은 환경을 더 선호하는 이유는 그만큼 개발 생산성을 보장하고 또 서비스에 더 적합한 환경을 제공하기 때문이다. (참고글: 스타트업에서는 어떤 기술을 이용해야 할까?)

다음은 영국의 개발자 구인현황이다.



[cwjobs에서 조회]

영국에서 놀란 것은 C#이 월등히 높았다는 것이다. 물론, 금융권이 많고 돈을 내더라도 지원을 받을 수 있고 신뢰기반의 환경을 가져가는 것을 더 선호하는 문화 때문에 닷넷 기술의 인지도가 높다.


언어는 도구일 뿐인가?

요즘 닷넷 락스 같은 미국 팟캐스트를 듣다보면 자신을 소개할때 폴리글랏 프로그래머로 소개하는 것을 자주 듣고는 한다. 더군다나 개발 언어들도 느슨한 타입결합을 기반으로 개발자가 쉽게 사용하는 것을 초점에 맞추고 있다는 부분에서 언어는 개발 도구 정도로 흘러가고 있는 분위기이다. 물론, 프로그래밍 언어라는 것은 그 시대의 변화를 상징적으로 함축하고 있고 반영하고 있다. 하지만 요즘 그 변화가 매우 빠른 만큼 그 언어의 철학을 너무 깊이 심취해서 다른 플랫폼을 베타적으로 받아드리면 시야가 좁아지기 쉽다.

폴리글랏 시대에서 엔지니어에게 강조하고 있는 것은 언어나 플랫폼 경험 보다도 서비스 경험과 업무 경험일 것이다. 예를들면 만약 자신이 큰 규모의 트래픽을 다루는 서비스를 설계하고 참여한 경험이 있는지 아니면 클라우드 환경에서 엘라스틱한 서비스를 경험해봤거나 다양한 개발문화들을 얼마나 체험해봤냐와 같은 경험들 말이다.

지금까지는 어떤 언어와 플랫폼을 알고 그 플랫폼의 경험이 중심이 되었다면 이제는 그런 실력을 넘어 경험적인 측면을 많이 보고 있다. 국내에서도 이제는 조금씩 알고리즘 기반으로 코딩 테스트를 진행하고 있는 것을 볼 수 있다. 즉, 어떤 언어와 플랫폼의 지식에 근거하지 않고 그 사람의 problem solving 능력과 기본기로 개발자를 판단하는 분위기로 서서히 바뀌어 가고 있다는 것이다. 기술은 그 시대의 트렌드에 따라서 잊혀지거나 사라지는 경우가 많기 때문이다. 이것을 인정하고 폴리글랏 트렌드를 받아드릴 수 있다면 개발언어와 플랫폼 그 이상의 것을 볼 수 있을 것이다.