프로그래머라는 직업에 대한 고찰
목차
“프로그래머(혹은 개발자)” 라는 직업은 일반적으로 PC나 모바일에서 동작하는 프로그램을 개발하는 사람들을 일컫는다. 언뜻 보기에 뭔가 전문적이고 깊이가 있으며 사무실에서 우아하게 모닝 커피를 마시면서 일과를 시작하는 꽤 세련되고 미래 지향적인 직업으로 비춰지기도 한다.
취업난이 심각해진 국내에서는 최근에 “프로그래머”가 나름 인기 직업으로 살짝(?) 바뀌기도 했다. 4차 산업 시대에 진입하기 위한 필수 직종으로 “IT”가 대두되면서 그만큼 일자리 수요도 많고 사람도 많이 필요해서다. 인터넷 광고나 라디오에서는 6개월 짜리 “국비학원” 들이 우후죽순으로 일반인들을 유혹하고 있고 실제로도 많은 사람들이 “프로그래머”로의 직종 변환이나 진입을 노리고 있다. 이런 상태는 그만큼 프로그래머라는 직업이 인기 있어졌다는 증거라고나 할까?
하지만 기업이나 현업 종사자들이 실제 개발할 수 있는 “프로그래머”가 없다고 난리다. 나름 인기가 있고 프로그래머를 꿈꾸는 사람들이 많지만 필자가 느끼고 있는 인력풀은 생각보다 많지 않는 듯 하다. 얼마전에 외근을 갔는데 “웹 프로그래머”를 구하려고 해도 신입 조차 뽑기 어렵다고 외근 갔던 업체에서 푸념을 늘어놓는다. 외주를 맡기려고 해도 워낙 비싼 단가에 선뜻 맡기기가 고민된다고 했다.
생각보다 다른 현실이다. 개발 커뮤니티 사이트에 들어가보면 웹 개발을 희망하거나 학원에서 수강하는 신입 프로그래머들이 꽤 있는 듯 보이지만 실제 현업에서는 이들조차 구하기 어려운 실정인 듯 하다. 이참에 나도 “웹”을 공부해야 겠다는 생각도 들었다. 웹을 하게 되면 그만큼 몸값이 뛸수도 있을테니깐….
현실은 일을 할수 있는 프로그래머를 찾기 어렵다고 하는데, 현재 나름 인기있는 직업으로 급 부상하고 있는 프로그래머. 이들 사이엔 무슨 간극이 있는 걸까?
이번 시간에는 “프로그래머”라는 직업에 대해 필자의 경험과 지식을 기반으로 진지하게 고찰을 해보려고 한다.
프로그래머는 가만히 앉아서 컴퓨터 키보드나 두드리는 직업일까?
최근 대학을 졸업한 청년들은 아무래도 “3D(어렵고, 더렵고, 힘든)” 업종을 기피하는 면이 강하다. 그런데 이는 매우 당연하다. 힘들게 공부해서 대학을 졸업했는데 큰 기술이 필요하지 않는 단순 노동을 하는 일을 하고 싶지 않을 것이다. 그런데 더 큰 문제는 “연봉”이 상대적으로 매우 낮기 때문일 것이다.
힘든 일이라고 해도 연봉이 높으면 대학을 졸업했건 안했건 간에 그 일을 선택할 가능성이 매우 높다. 며칠전 기사를 읽어보니 국내 명문대 출신의 20대 여성이 “도배사”를 하고 있고 수입이 꽤나 짭짤하다고 했다. 즉 얼마전까지만 해도 힘든 노동일을 하지 않으려고 했던 청년들도 이제는 수입에 따라서 태도가 달라졌다는 뜻이다.
필자는 개인적으로 “3D 업종”에 대해서 더 많은 돈을 지급해야 되는게 맞다고 생각한다. 일도 힘든데 받는 돈도 적으면 누가 그 일을 하겠는가? 그래서 최근에 3D 업종에 외국인들이 많이 채우고 있는 편이다.
돈을 많이 지급해야 힘든 일이라도 하려는 사람들이 늘어날 것이다. 누군가는 그 일을 해야 하는데 돈도 적으면 당연히 아무도 그 일을 하려고 하지 않게 된다. 힘든 일은 그만큼 많은 돈을 지급하는게 노동의 가치라고 볼 수 있을 것이다.
“프로그래머”로 그 눈을 한번 돌려보자. 프로그래머는 신체적으로는 매우 활동적이지 못한 일이다. 하루종일 컴퓨터에 앉아서 모니터를 쳐다보면서 키보드를 두드리면서 일을 한다. 얼핏 보면 일반 사무직 업무랑 비슷해 보기이도 한다.
그래서 프로그래머라는 직업에 대해 자세히 알지 못하는 일반 사람들은 “일반 사무직” 들과 동일하게 생각하는 경우가 많다. 하루종일 의자에 앉아서 키보드나 두드리는 나름 “편한” 직업이라고 말이다.
물론 신체적으로 “편한” 직업은 맞다. 프로그래머들이 날씨가 덥거나 추울때 밖에 나가서 일을 하지는 않기 때문이다. 그리고 하루종일 의자에 앉아서 키보드를 두드리면서 일을 하는 것도 팩트이다.
그럼에도 한때 “IT 기피” 현상에 생긴 이유는 무었을까?
위의 링크 글을 읽어보면 대략 알수 있다. 생각보다 프로그래머는 정신적으로 “스트레스”를 많이 받는 직업에 속한다. 일정에 대한 압박을 늘 받고 성과에 대한 압박도 늘 받는다. 또한 개발을 하기 위해서는 끊임없이 최신 기술에 대한 공부를 해야 한다. 코딩을 하는 시간보다 기술 문서를 보는 시간이 더 많을 수도 있다. 기술문서들이 대부분 영어로 되어 있기 때문에 영어에 대한 스트레스도 받을 수 있다.
최근에는 많이 줄었지만 “야근”이 매우 빈번한 직업이다. 아침 일찍 출근했는데 그 다음날 새벽에 퇴근하고 그날 아침에 출근했다는 일화는 프로그래머들에게 늘 회자되던 말이었다. 이렇게 일해도 연봉을 낮게 지급하는 기업들이 허다했다. 물론 지금은 상황이 많이 나아진 편이다.
업종에 따라서는 출장이나 외근, 심지어 파견 근무가 매우 빈번한 직업에 속한다. 출장을 가서 현장 지원을 하게 되면 테스트를 위해 밖에서 더운 날씨와 추운 날씨속에 프로그램의 동작 테스트를 지켜봐야 한다. 그러면서 현장에서 노트북으로 코드르 수정하는 일도 비일비재 하다.
SI 업종은 외주 일을 많이 하기 때문에 직접 파견지에서 개발일을 하게 되는데, 이때 받는 소속감이나 대우가 다른 것도 느낄 수 있다. 나는 왜 파견을 다니면서 일을 해야 하는지 고민이 들 수 있다.
단순히 사무실에서 가만히 앉아서 모닝 커피를 시작으로 우아하게~ 일을 하는 직업이 아니라는 뜻이다. 여느 직장인과 다를 바 없으며 업무에 대한 부담과 정신적 스트레스, 현업에서의 도태되지 않으려면 끊임없이 기술 공부를 해야 하는 부담, 야근, 시력 저하, 운동 부족, 소화 불량 등을 겪을 수 있다.
소프트웨어 개발이라는게 단순히 시간만 투입하면 결과물이 나오는게 아니라는게 문제다. 프로그래머 개개인 마다 성과가 다 다르고 속도가 다르다보니 누구에게는 쉬운 업무지만 누구에게는 너무 어려운 일이 될 수도 있는 것이다. 그래서 이런 종합적인 이유로 인해 프로그래머 생활을 하다가 적성에 안맞는다고 해서 포기하거나 아예 직종 전환을 해버리는 경우도 비일비재 하다.
회사에 소속되서 일을 하다보면 인간관계, 즉 사람에 대해서 스트레스를 받는 경우도 꽤 많다. 심지어는 사람 때문에 회사를 그만두고 이직하는 경우도 허다하다. 어느정도 기술적인 지식을 쌓고 팩트가 중요한 프로그래머지만 회사 생활을 하다보면 정말 별의별 사람들이 존재한다. 여러 사람들을 겪다 보면 사람에 지쳐서 회사를 관두는 프로그래머들이 꽤 있는 편이다.
즉 “프로그래머”는 사무실에서 컴퓨터에 앉아서 모니터를 하루종일 들여다 보면서 키보드나 두드리는 편한 직업이 아니라는 뜻이다. 일반 직장인과 다를께 없으며 업무에 대한 부담이 상당한 편이다.
필자의 경우에는 한가지 바램이 있는데 제발 날 부르지 않고 하루종일 컴퓨터 앞에 앉아서 프로그래밍만 하고 싶다. 여기저기 회의에 끌려다니거나 윗 상사랑 대면하다 보면 실제 프로그래밍을 하는 시간은 매우 짧아 진다. 생각보다 프로그래머는 프로그래밍만 하는 시간보다 이것저것 다른 일들도 해야 하는 경우가 비일비재하다.
프로그래머는 연봉을 많이 받는 직업일까?
이말은 “미국”에서는 사실이다. 미국에서는 의사 다음으로 연봉이 높은 직업군에 속한다고 알려져 있다. 그런데 한국은? 전혀 그렇지 않다.
프로그래머의 연봉에 대한 내용을 적은 글이다. 최근에 프로그래머들의 연봉이 많이 인상되었으나 실제로 규모가 큰 대기업이나 “유니콘” 기업들에서 프로그래머들에게 높은 연봉을 지급하지 일반 중견이나 중소기업은 예전과 크게 달라지지 않았다는 내용이다.
사실 프로그래머의 연봉은 규모에 따라서 큰 차이를 보인다. “네카라쿠배”로 불리는 서비스 대기업은 신입 프로그래머들에게도 높은 연봉은 지급한다. (년 6천만원 선) 하지만 그 외의 중견, 중소 기업들은 꿈같은 이야기이다.
대기업의 채용 인원이 많다고 해도 대기업에 들어갈 수 있는 프로그래머의 숫자는 한정적이다. 대다수의 프로그래머들은 중견, 중소기업에 들어가서 프로그래머 생활을 시작하게 된다. 그러나… 이들 기업들의 연봉 지급 수준은 대기업에 비해 매우 낮은 수준이다.
신입 프로그래머의 수준이 2,400 만원 ~ 2,600만원 수준인 곳이 비일비재하다. 그리고 경력자라고 해도 높은 수준의 연봉을 받기 어려운 중견, 중소기업이 많다.
따라서 많은 연봉을 받기 위해서는 대기업을 가거나 유니콘 기업 등을 가면 된다. 혹은 중소기업이라고 해도 높은 수준의 연봉을 지급하는 곳이 있으니 그런 곳을 찾아서 가야만 한다.
대신에 중견, 중소기업을 다녀도 높은 연봉을 지급받을 수 있는 방법은 있는데, 바로 “경력”을 쌓는 것이다. 프로그래머는 다른 직업군들에 비해서 경력에 따른 대우를 나름 해주는 직업 중 하나이다. (그렇다고 해서 많은 연봉을 지급하는 것은 아니니 오해하면 안된다.)
프로그래머가 어떤 경력을 쌓았는지에 따라 다르겠지만 일반적으로 5년이상 되면 프로그래머의 연봉은 점차 뛰기 시작한다. 그러다가 10년이 넘어가면 연봉 인상이 절정에 다랄 수 있다. 즉 경력에 따른 연봉 인상폭이 꽤 있는 직업이 프로그래머이다.
물론 한곳에 있으면 그렇게 인상을 하기가 어렵다. 그래서 대다수의 프로그래머들이 “이직”을 통해 연봉을 인상하고 있다. 이직을 적절히 하면 연봉 인상을 꽤 할수 있다. 따라서 대기업을 가지 못한다면 경력을 쌓아서 이직을 통해 연봉 인상이 가능한 게 프로그래머라고 볼 수 있다.
프로그래머는 우리나라 직업 중에서 연봉을 많이 받는 직업은 아니라고 볼 수 있다. 그러나 대기업에 입사하면 많은 연봉을 수령하는 것이 가능하다. 이는 일반 직장인과 다를께 없다. 대신에 프로그래머는 경력에 따른 연봉 인상폭이 나름 큰 직업임에는 분명하다. 중견, 중소기업에 있다고 해도 경력을 적절히 잘 쌓으면 나름 많은 연봉을 수령할 수 있다.
프로그래머가 늘 부족한 이유?
자본주의 경제에서는 “수요와 공급”의 법칙에 따른다. 이는 여느 직업에 종사하는 “인력 시장” 에서도 비슷하게 나타난다.
최근에 프로그래머는 “인기있는” 직업으로 느닷없이 부상하고 있다. 그 이유는 대략적으로 “취업” 과 “연봉” 일 것이다. 경제적인 측면에서 보면 많은 산업들이 “소프트웨어”적인 요소가 필요하고, 제품을 개발하기 위해서는 반드시 필요한게 “소프트웨어”이기 때문이다. 특히 4차 산업으로 진입하기 위해서는 “네트워크”와 “소프트웨어”는 필수이기 때문에 많은 기업들이 프로그래머들을 필요로 한다.
이런 물결은 우리나라도 예외가 없다. 자동차를 비롯하여 많은 제조업과 서비스업에서 소프트웨어 프로그래머가 필요로 하다 보니 자연스레 프로그래머의 수요는 많아진다. 하지만 얼마전까지 “IT 기피”로 인해 많은 학생들이 IT 분야로 진입을 꺼려했기 때문에 인력은 부족해질 수 밖에 없다.
이러다보니 현업에서는 프로그래머들이 부족하다고 아우성이다. 그래서 최근에는 각 대학이나 학원에서 “소프트웨어” 프로그래머서 육성과정이 우후죽순 생겨났고, 여기에 교육을 수료하고 프로그래머로 진출하는 사람들이 꽤 늘어났다. 심지어는 컴퓨터, 전자, 전산 전공이 아닌 학생들도 단순히 “취업” 때문에 프로그래머 교육을 받고 프로그래머로 진출하는 케이스가 꽤 많아졌다. 아무래도 어려운 취업난을 이겨내기 위해 그나마 취업이 잘되는 “프로그래머”의 길을 선택하였을 수도 있다.
그런데 이상하게도 내 주변에는 “신입 프로그래머”를 보기가 어렵다. 물론 내가 재직하는 회사는 “공장”이 있는 제조업 회사이다. 그렇다고 해도 네트워크 장비를 만드는 회사라서 리눅스를 기반으로 한 소프트웨어적인 요소가 대부분인 장비이다. 내가 신입 때만 해도 이쪽 분야에 진출하는 신입 프로그래머들이 꽤 많았다.
그러나 어느 순간 이쪽 분야에서 새로 들어오는 신입 프로그래머는 보기 어려워졌다. 지금은 막내가 30대 후반일 정도로 개발 인력들이 많이 “노령화(?)” 되고 있다. 그리고 경력이든 신입이든 간에 프로그래머를 뽑기가 대단히 어렵다.
그래서 최근에 많이 인력을 채용하는 웹이나, 앱 같은 어플리케이션 분야로 신입 프로그래머들이 많이 진출한줄 알았지만 몇몇 대기업 빼고는 실제로 중견, 중소기업에는 신입 웹 프로그래머도 찾기가 어렵다. 참 아이러니한 상황이다.
인터넷 광고나 언론에서는 “프로그래머”에 대한 장밋빛 내용이 그득하다. 4차 산업의 필수 요소인 IT 수요가 많기 때문에 신입 프로그래머도 많은 연봉을 받을 수 있다고 현혹한다. “네카라쿠배”와 같은 IT 서비스 대기업을 가면 신입도 연봉 6천만원을 받을 수 있다고 하니 신입 프로그래머들에게는 꿈같은 연봉일 수 있다.
하지만…. 실제로 인력 시장에서는 여전히 “경력”을 선호한다. 당장 내가 재직중인 회사에서도 “신입”을 채용한다고는 하지만 실제로 거의 뽑지 않을 뿐더러 신입은 지원조차 하지도 않는다. 아마 현실적으로 대부분의 중소, 중견 기업들이 신입 채용을 꺼릴 것이다. 그도 그럴께 작은 기업 규모에서 인건비에 투입할 여력은 한계가 있지만 그 한정된 비용에서 최대한의 효율을 얻으려면 “신입”은 매우 비 효율적인 방법일 수 밖에 없다.
현업에서 “신입”은 당장 써먹을 수 있는 인력이 아니다. 혼자 프로젝트나 유지보수를 처리하기에는 당연히 위험 부담이 높은 인력이다. 10년 경력자가 혼자서 하루만에 뚝딱 할일을 신입은 일주일이고 2주고 걸리는게 당연할 수 있다. 신입을 활용하려면 적어도 6개월~1년은 가르쳐야 그나마 현업에서 활용할 수 있는 자원이 된다. 그런 현실이기에 규모가 작은 중소, 중견 회사들은 신입 채용을 꺼릴 수 밖에 없는 것이다.
대기업은 당연히 인력 활용에 있어서 여유가 있다. 그래서 “신입”에 대한 부담이 없이 “투자”의 개념으로 신입들을 가르쳐서 키우려고 한다. 반면에 규모가 작은 기업들은 그럴 여력이 없다보니 여전히 “경력” 프로그래머를 선호하는게 어찌보면 당연하다.
이런 현실과 이제 대학을 갓 졸업한 신입 프로그래머들이 아이러니 하게도 “대기업”을 선호하는 것도 여전하다. 가장 큰 이유는 “연봉”과 “환경”일 것이다. 최근에 프로그래머들의 연봉이 많이 높아졌다고 하지만 대기업과 중소기업의 차이는 생각보다 그 간격이 크다. 같은 신입이라도 중소기업을 가면 2600만원 받는다면 대기업은 5천만원에서 최대 6천만원까지 받을 수 있는 것이다.
또한 중소기업은 같은 일이라고 해도 환경이 열악한 곳이 많다. 대기업에 가서 프로젝트의 일부 파트만 “프로그래밍”을 하면 되는 상황과 중소기업에 가서 프로젝트 전체 개발에, 테스트, 유지보수 등을 다~해야 하는 중소기업의 환경은 내가 봐도 꺼려진다.
적은 연봉에 많은 업무와 잡무까지… 여기에 지친 신입 프로그래머들은 조금 경력을 쌓고는 금새 그 회사를 퇴사고 이직해 버린다. 하지만 많은 중소기업들의 근무 환경을 개선할 생각은 하지 않고 다시 비슷한 사람을 뽑아 땜빵식으로 대응한다. 그래서 아예 신입을 뽑지 않고 경력을 뽑아서 최대한 인건비를 적게 투입하고 많이 부려먹는 “고효율”의 기업 운영을 한다. 경력 10년 1명 뽑으면 신입 2~3명을 뽑아서 쓰는 것과 더 좋은 효율을 내기 때문이다.
경력자는 경력자대로 업무에 지치고, 신입들은 중소기업을 꺼리고, IT 산업을 떠나는 프로그래머들이 늘어나면 당연히 중소기업들은 일할 프로그래머들을 찾는게 어려워진다. 이런 악순환이 현재까지 지속되다 보니 자연스레 “사람이 부족해 지는 것” 이다.
취업 시장에서도 적절한 근무 환경에 적절한 연봉을 지급한다면 그 직업을 꺼릴 이유가 전혀 없다. 그러나 열악한 환경을 겪은 뒤 아예 전직을 하거나 프로그래머들 그만두는 사람들이 늘어났던 것. 그러던 와중에 “4차 산업” 혁명이라는 트랜드가 생기게 되면서 프로그래머들의 수요가 다시 늘어나자 당연히 프로그래머들을 찾기가 어려워 지는 것이다.
그나마 최근에는 프로그래머들의 근무 환경이 예전보다 많이 개선된 부분은 있다. 급성장한 유니콘 기업들은 프로그래머들이 업무에 집중할 수 있도록 높은 수준의 연봉과 복리 후생을 제공하고 있다. 또한 불필요한 야근을 하지 않거나 회의를 하지 않는 등의 프로그래머들이 떠나지 않게 하는 여러 정책들을 펴는 기업들이 있다.
그럼에도 여전히 IT 업계는 “열악한 곳”이 많다. 여전히 박봉이며 적절한 보상을 받지 못하고 혹사 당하는 프로그래머들이 많다. “신입은 열심히 배워야 해”라는 마인드로 싸게 부려먹고 갑질을 일삼는 기업들이 많다.
프로그래머를 꿈꾸는 사람들에게….
필자는 십수년이 지난 현재도 여전히 프로그래머라는 직업으로 생계를 꾸려가고 있다. 그리고 당분간은 이 직업을 이어 나갈 생각이다.
보기와는 다르게 열악하고 불안한 직업인 것은 사실이다. 그리고 내 의지와 상관없이 회사가 망하거나 인간 관계 때문에 이직을 한 경우도 꽤 있다. 그럼에도 프로그래머를 이어 나가는 것은 단순히 “흥미” 때문이다.
현재 재직중인 곳은 내게 많은 “연봉”을 지급하지 않는다. 경력과 연차에 비해서 혹은 대기업 재직자에 비해서 초라한 수준이다. 물론 연봉을 많이 받고 싶은 생각은 있지만 그렇다고 해서 꼭 많이 받아야 겠다는 것도 딱히 없다. 현 수준에 만족하며 더 나은 미래를 위해 프로그래밍을 하는게 바람직하다고 생각한다.
혼자서 이것 저것 잡다한 것을 다 하더라도 이제는 내 선에서 알아서 맺고 끊는다. 너무 선을 넘는다 싶으면 당연히 “이직”을 준비한다. 그렇지 않으면 열악한 환경에서 계속 회사 생활을 해야 하기 때문이다. 결국 그런 결정은 내가 스스로 알아서 판단한다. 중이 절이 싫으면 떠나면 그만이다.
이런 모든 것을 상쇄하는 것은 “흥미”와 “가능성” 이다. 소프트웨어라는 분야는 사실 무궁무진하다. 자기가 어떻게 생각하는냐에 따라서 재미있고 가능성 있는 부분이 많다. 그래서 프로그래머인 동시에 직장인이지만 “회사”라는 조직에 매몰되진 않는다. 회사라는 곳은 단순히 생계 유지를 위해 월급을 받는 곳이라고 생각한다. 어느 수준의 월급을 받고 회사의 일을 해주는 것이다.
언젠가는 “회사”라는 곳을 떠나서 독립을 할 계획도 있다. 나만의 솔루션을 만들던가 “프리랜서” 같이 회사에 소속되지 않고 일감을 따서 비용을 받는 것도 생각하고 있다. 이런 걸 가능하게 해주는게 “프로그래머”의 장점이기도 하다. 최근 코로나 팬데믹 상황에서도 일감은 끊이지 않거니와 “비대면” 업무가 가능한 것도 프로그래머다. 이런 장점은 내게 프로그래머 생활을 이어나가게 해주는 원동력이 되는 듯 하다.
즉 프로그래머는 계획만 잘 세우고 경력을 잘 쌓아두면 활용할 수 있는게 많은 직업이기도 하다. 대신에 오랫동안 버티는게 쉽지는 않는 듯 하다. 최신 기술을 끊임없이 터득해야 하며 여러 언어를 사용해야 하기도 하고 말도 잘해야 하며 정신적으로 스트레스를 받고도 잘 버티는 “멘탈”도 필요하다.
그래서 신입~4년 동안에 낮은 연봉과 열악한 환경에서 프로그래밍을 하더라도 경력만 잘 쌓으면 나름 롱런 할 수 있는 직업이 프로그래머다. 다른 분야와 달리 프로그래머 개개인이 해놓은 일을 다른 사람이 쉽게 대체하기가 어렵다. 그래서 프로그래머는 경력과 결과물이 재산이라고 봐도 된다. 경력과 결과물을 토대로 연봉은 꾸준하게 오르고 더 나은 회사로 이직도 가능하다.
대신에 프로그래머를 꿈꾼다면 반드시 “흥미”를 지니고 있어야 한다. 그래야 버틸 수 있기 때문이다. 취업이 되지 않아서 프로그래머의 길을 택했다고 말리고 싶다. 주변에서 그렇게 프로그래머의 세계로 진입했다고 금새 다른 분야도 전직을 하거나 그만두는 사례를 봤기 때문이다. 그래서 일까? 여전히 프로그래머는 주변에서 찾기가 어렵다.