개발자 커뮤니티에서 종종 볼 수 있는 질문 중 하나가 취업/전업을 하려는데 어떤 프로그래밍 언어를 배워야 하냐는 것이다. 이런 질문이 올라오면 많은 댓글이 달린다. 보통 개발자마다 각자가 좋아하는 프로그래밍 언어를 추천하는데, 그 때 마다 안타깝다는 생각이 든다.
취미로 하는 프로그래밍이야 어떤 것이 됐던 큰 상관은 없다. 괜찮다는 것을 배워보고 마음에 들지 않으면 다른 언어를 배우면 그만이다. 하지만 취업/전업의 경우는 다르다. 어떤 프로그래밍 언어를 배우냐에 따라 만날 수 있는 기회가 완전히 다르다. 다른 언어를 다시 배워 다른 기회를 찾는 것도 쉽지 않다. 이런 상황에서 답변자의 입장에서 질문자의 처지는 고려하지 않고 답변을 하는 것을 어떻게 보아야 할까?
취업/전업을 위한 프로그래밍 언어 배우기에서 제일 중요하게 고려 할 요소는 시장 점유율이다. 재능이 있고 뛰어난 실력을 가졌거나 좋은 학벌이 있는 경우는 이런 점에서 좀 더 자유로울 수 있다. 하지만 보통 개발자라면 시장 점유율에 따라 구직의 난이도가 달라진다. 그렇기 때문에 자신이 평범한 초급 개발자인 경우는 시장 점유율이 높은 프로그래밍 언어를 배우는 것이 좋다. 정리하자면 국내에서는 Java, PHP, C# 중 하나를 공부하는 것이 유리하다.
Java는 가장 큰 점유율을 가지고 있기에 먼저 추천 되지만, 주로 SI에서 많이 쓰기 때문에 만약 SI를 피하고 싶은 개발자라면 PHP나 C#에 눈을 돌려보는 것도 나쁘지 않다.
C/C++는 점유율이 높지만 취업을 위해 급히 배우기에는 난이도가 너무 높으므로 추천하고 싶지 않다. 가끔 파이썬, 루비 같은 최신의 인기 스크립트 언어를 추천하는 경우가 있는데, 본인이 재능이 뛰어나 몇 달만에 상당한 실력을 쌓을 자신이 있거나 학벌이 좋은 경우를 빼고는 추천하고 싶지 않다. 해당 언어들을 쓰는 회사들이 있지만 스타트업들이 많고 이런 회사들은 주로 소수 정예로 구인을 하기 때문에 이제 프로그래밍 배운지 얼마 안 되는 초급 개발자를 채용 할 가능성은 낮다. 다만 학벌이 좋은 경우는 투자나 인맥을 위해 채용하는 경우가 있다.
개발자로 일을 하면 다수의 프로그래밍 언어를 배우는 것은 당연하다. 그러나 취업/전업을 위한 것과 취미 생활을 위한 것과 혼돈하지 않는 것이 좋다. 그리고 누군가에게 좋은 프로그래밍 언어가 반드시 내게 좋은 언어라는 보장이 없다.
생계를 위한 코딩은 냉정하고 이상적이지 않은 면이 있다는 점을 잊지 말자.