2015년 1월 20일 화요일

대충 본 캐나다 Software Developer / Programmer 시장 및 처우

취업 전선에 뛰어들기 위한 본격적인 준비가 미비한 상태였지만, 정말로 운 좋게 어느정도는 한국에서 경력을 인정해 줄 만한 회사를 찾은 덕에 취업을 하게 되었다. 하지만 2013년 12월, 캐나다로 건너올 때 기존에 하던 업무와 같은, 아니 최소한 유사한 업무라도 하기 힘들 것을 이미 예상했기에 학교를 다니면서도 간간히 캐나다의 취업 시장에 어떠한 일자리들이 올라오는지는 모니터링 해 왔기에 대략적으로나마 이렇게 정리 해 본다.

한국에서 경력은 Embedded Platform쪽이였는데, 대기업이였기에 내 업무 스펙트럼은 그다지 넓지 않았고, 상이한 두개의 플랫폼 간에 인터페이스 구축이 주된 업무였다. 하지만 캐나다에는 제조업체가 그다지 많지 않고,  Embedded를 다루는 업체가 있다 하여도 보통 스타트업 수준의 회사이기에 드라이버부터 UI까지 스펙트럼이 넓은 사람을 찾는 경우가 많다. 그렇다 보니 일자리는 .Net, JEE, Javascript, Web front-end 등 웹 관련 분야와 Android/iOS등 모바일 쪽이 구인란에 주류를 이룬다.
좀 더 자세히 보면 JAVA 혹은 C#이라는 키워드로 등록된 일자리들이 많은데, 그 job description을 보면 데스크탑용 standalone application 개발은 거의 드물고, 결국은 웹쪽이였다. 특히나 Java쪽은 최근 Spring이 대세였던듯 하다. 회사들을 살펴보면 자체 솔루션으로 장사를 하는 회사 보다는 아웃소싱을 하는 회사들이 보다 많았고, 금융/서비스 업종의 대기업에서 채용을 하는 경우도 간간히 있다. 특히나 토론토 지역의 경우 IBM 연구소가 몇몇 곳에 자리하고 있어 클라우드나, Z-OS, 컴파일러, Rational product 디버깅 혹은 개발 등 이 곳에서는 다소 특이할 수도 있는 포지션들도 IBM을 통해서 간간히 올라오고 있었다.

처음 몇 개월 정도 취업 시장을 모니터링 해 본 결과 내 경력과 부합되는 포지션을 찾기는 어려운 것으로 판단했고, 내 적성상 Web쪽은 맞지 않을 듯 하여 보기에 따라 기존과 동일/유사한 경력인 mobile쪽을 택했고 예상 졸업 시기에 맞춰 하나씩 포트폴리오를 준비하기 시작했다. 다만... 플랫폼은 일자리가 없으니 결국 Application을 해야 했을 뿐...

참 무모한 이야기지만, 캐나다에 오기 전 굶어죽진 않겠지... 라는 생각 뿐 어느 수준의 연봉을 받을 수 있을까에 대해 전혀 모르고 왔다. 그래서 14년 하반기 부터는 취업 시장에서 제시되거나 협상되는 연봉 수준을 알아보기 시작했다.
보통 포스팅 되는 포지션에 연봉에 대해 공개를 하지 않는 회사가 많다. 한국 대기업이야 직급에 따라 기준 연봉이 정해지고 이후 고과에 따라 +/-가 되지만, 여기는 입사 할 때 마다, 매 년 마다 진짜 협상을 해야 하기에 회사 입장에서도 구지 가이드라인을 만들어 협상의 주도권을 빼앗길 위험을 감수 할 필요가 없기 때문인듯 하다. 하지만 여러가지 후일담들과 일부 공개된 연봉 range수준, 그리고 payscale등 웹사이트를 통해 확인 한 결과를 종합해보면 아래 정도인 듯 하다.

Entry/Junior Developer: $35,000-$55,000
Intermediate Developer: $50,000-$80,000
Senior Developer: $75,000-$110,000

일단 나의 개인 조사결과라 신뢰도가 매우 낮기도 하고, Mobile Application쪽 기준으로만 알아본 결과인데다, 연봉이란 것이 개인마다 다르고 회사마다 다르고, Industry마다 다르기에 단순 참고정도 하시길...

결국 이전 직장과 직접 비교하자면, 어느 레벨로 들어가건 캐나다에 와서 수입이 좋아 질 일은 없었다. 캐나다 환율도 지속적으로 내려가고 있기에 직접적인 원천소득액 자체도 한국보다 나을 것이 없는데다, 소득세율 역시 한국보다 높고, 전세가 아닌 월세로 집세를 내고 있기에 기본적인 생활비가 더 많이 나가고 있기 때문이다.

그렇다면 나는 어느 포지션을 노려야 할까?
이 것 역시 문제였다. 공지한 구인 포지션 대비 over qualified된 지원자의 경우 인터뷰 기회조차 주어지지 않기에, 공지된 job description과 required experience에 맞춰 이력서의 경력 내용을 조금은 줄이는 것이 필요하다는 조언을 많이 들었기 때문이다.

기간만 놓고 본다면 경력상 Senior를 해야 한다. 사실 연봉도 이쪽이 맘에 든다.
하지만 나의 경력을 그대로 이어갈 수 있는 일자리는 이 나라에 많지 않았고, 최근 몇년간 실제 상용 프로젝트에 참여하여 코딩을 해보지 않았기에 솔직히 자신이 없었다.

구인 시장 특성에 맞춰 내 레벨을 평가하자면 Junior나 Entry레벨이 맞다.
C#은 캐나다 컬리지에 와서 처음 접했고, Java는 한국에서 대학생일때 Java Swing이 MFC보다 백배 편하다는 말을 듣고 친구와 메신져/파일전송 앱을 만들어 본 것이 전부였으며, Android도 이제 갓 API doc을 보며 심심풀이로 간단한 어플리케이션을 짜보는 수준이기 때문이다.

그래서 결정 한 것은 그 중간값인 중급 개발자.
사견이지만 일반적인 software개발은 단순 로직 싸움이 80%다. 요즘에는 워낙 온라인을 통해 문서 접근이 용이하고 다양한 샘플코드들도 있다. 그리고 개발환경이나 플랫폼, 언어 특성에 대한 무수히 많은 팁들도 존재한다. (쓰레기 같은 팁이나 잘못된 팁도 넘쳐나지만...) 결국 요구사항이 있을 때 로직을 어떻게 만들고 구현 할지와 문제 발생시 어떻게 디버깅을 접근 할 지가 키라고 생각했기에 생판 모르는 플랫폼에서 개발한다 해도 전체적인 프로젝트의 가이드라인만 있다면 얼마든 할 수 있을 것 같은 생각이 들었기 때문이다.
중급으로 선택한 다른 이유는 시장 수요였다. 한국에는 중소기업 뿐 아니라 대기업, 공기업 등에서 취업 시즌만 되면 대규모 공채를 벌인다. 하지만 캐나다에서는 Entry job이나 Junior job을 찾기 정말 힘들었다. 어찌된건지 대부분 "아래 사항들에 대한 최소 2년 이상의 경력"을 지원자 요구사항으로 내걸었다. 혼자서 계속해서 구직 포털을 뒤지다 결국 학교에서 만난 캐나다 친구에게 물어 보았더니 그 친구 왈...
"요구조건을 100% 만족시켜야만 취직되는건 아니지만 가능한 만족시키는게 아무래도 구직하기에 수월하다. 그래서 co-op프로그램을 통해 경력을 만들거나, 방학 기간동안 파트타임이나 volunteer job을 구해 레퍼런스를 받아 경력을 만들거나, in-campus job을 구해 일해서 경력 만든다. 아니면 요구 경력이 있어도 충분한 포트폴리오가 있음 개인 개발로 그 정도 경력이 있다고 증명하기도 한다."
이런... 난 최대한 빨리 졸업하고 시간을 지체하기 싫었기에, co-op도 안했고, 방학도 없이 주구장창 학교 다니기로 했는데 뭔가 틀어진 것 같았다.

결과적으로는 나에게 적절한 Intermediate급으로 입사를 했다.
Android Developer 포지션이였지만, 보안 솔루션 전문 업체이다 보니 안드로이드 코어쪽에 대한 지식이 필요했고, 그 덕분에 그 동안 계륵처럼만 느껴지던 한국에서의 경력이 황금알이 되어 주었다. 처음 회사와는 Senior급 Android Developer 포지션으로 이야기가 시작 되었는데, 아직도 entry level에서 허우덕 대는 나의 Java와 Android경력을 스스로 잘 알고 있었기에 기술 면접 당시 C/C++외 다른 분야에 대한 지식은 완전 미천하다고 고백 아닌 고백을 하고 Senior 포지션은 나에게 맞지 않다고 선을 그었다.

사전 경험삼아 시작한 이력서 제출에서 이렇게도 운이 좋을 수 있다니 그저 놀랍고 감사할 뿐이다. 이렇게 나의 인생은 햄릿과 돈키호테 사이에서 돈키호테에 조금 더 가까울 때 빛을 발휘하는 것 같다. 아마도... 생각이 많아도 깊지 못하기 때문일 것이다.

댓글 6개:

  1. 현재 케나다 유학 준비하고있는데 이런 단비같은 게시물이 ㅠㅠ 기술에 관한 상세한 고민을 하신 흔적이 있어서, 정말 이것저것 여줘보고싶은게 정말 많고, 또한 존경스럽습니다. 저는현제 프론트엔드쪽 개발자고 서버쪽 공부하고 있는데 케나다 구직이야기가 정말정말 궁금합니다. 이런글을 쓰시느라 수고하셨고 감사합니다.

    답글삭제
    답글
    1. 웹/서버쪽은 제가 문외한이라 잘 모르네요. 따로 궁금하신 점 있으시면 메일 주셔도 됩니다.

      삭제
    2. 안녕하세요! 제가 궁금한게 몇가지 있는데 메일좀 알려주실 수 있나요?

      삭제
    3. victor.ws.sim@gmail.com으로 연락 주시면 됩니다

      삭제
    4. victor.ws.sim@gmail.com으로 연락 주시면 됩니다

      삭제
  2. 대략적인 연봉 range에 대해 조금 업데이트 하자면, 요즘에는 Entry level로 들어와도 최소 4만불 정도 되는 것 같습니다.
    요즘 개발자 연봉 시세는 본문에 나온 range에서 5천~1만 불 정도 올려야 할 것 같네요.

    답글삭제