캐나다에서 개발하는 이야기
– 캐나다 프로그래머 손세종 1편
캐나다에서 프로그래머로 일하는 지식공유자 손세종 님을 만났습니다. 여담이지만 세종님께서 처음 인프런에 강좌를 업로드 했을때, 팀원들은 바로 생각했습니다. 이분 강의 진짜 짱이다!! 심적으론 가깝지만 먼 나라, 캐나다의 개발 이야기 지금 들으러 갑시다.
Q. 간단한 자기소개 부탁드려요.
안녕하세요. 인문학의 감성으로 개발 하는 개발자 손세종입니다.
Q. 세종님 강의는 칭찬이 자자합니다. 비결이 무엇인가요?
부족하다고 생각했었는데 좋게 평가해 주신 수강생분들께 감사의 말씀드립니다.ㅠㅠ
비결은 없고요. 강좌 만들면서 항상 역지사지로 생각하면서 만들어요. 제가 토론토대학에서 문과생으로 공부하다가 군대 제대 후 더 큰 꿈을 바라보며 다른 학교로 전공을 컴퓨터 공학으로 급 바꿨던적이 있었는데요. 근본이 문과라, 일단 공대에 들어가서 프로그래밍에 익숙해지는 것과 교수님들이 내주시는 과제들을 끝내기가 힘들었었습니다.
어느날 자바 관련 과제를 끝내야 되는데 이해가 안 가는 부분들이 있어서 캐나다 최고의 공대인 워털루 대학을 졸업했던 친구에게 부탁해 도움을 구했어요. 학생으로써 그지였던 제가 심지어 거금을 들여가며 비싼 밥까지 쐈었는데 참 그지(?)같이 가르쳐주던 기억이 납니다.
세종: “생성자가 어떤 방식으로 작동하는거야?”
친구: “니가 생각을 해 봐 뭐인 것 같애?”
세종: “음.. 클래스에서 초기화를 담당하는 걸로 알고 있는데..”
친구: “어 맞어”
세종: “그런데 프로그램 돌려 가면서 어떤 식으로 작동하는지 더 정확히 볼 수 있을까?”
친구: (딴짓. 귀찮아 함. 계속 커피 마심)
저는 이 이후로 깨달았습니다. 누가 나중에 나에게 도움을 청하거나 물어보면 저 친구처럼 행동하지 않겠다고. 갑자기 그때 일이 생각나서 호흡곤란이 옵니다.
나중에 제가 프로그래밍을 이해하게 됐고 좀 잘하게 됐을 때 실제로 어떤 친구에게 도움 요청이 왔고 옛날의 상처를 생각하며 성심 성의껏 도와 주던 기억이 나네요.
최대한 처음 접하는 사람의 입장으로서 생각하는 게 저의 접근 방식인 것 같습니다.
Q. 캐나다 취업 꿀팁 동영상도 만드셨는데요. 업데이트 되신 게 있나요?
업데이트는 안했지만 전반적인 내용은 비슷할 겁니다. 저랑 같이 공부하시던 분들이 한국에서 대학교를 나오시고 직장도 다니다 오신 분 들이라 여러 이야기를 듣고, 또 그 분들이 실제로 캐나다 현지인들과 동등하게 공부하며 졸업한 다음에 취직하시는 거 보면서 한국에 계신 분들께 혹시 도움이 되지 않을까 하는 생각에 짧게 넣어봤었습니다.
Q. 현재 관심사, 머릿 속 생각의 많은 부분을 차지하는 건 무엇인가요?
닷넷코어와 블록체인에 관심이 많은데요 최근에는 private 블록체인인 하이퍼레져를 좀 파다가 얼마전에 카카오 자회사인 그라운드X 분들과 클레이튼 블록체인 강좌를 만들게 되었습니다.
개인적으로 공부하면서 먼저 한국분들 기술력이 대단하다는 것에 놀랐고, 또 지금 블록체인 플랫폼의 춘추전국시대라 누가 먼저 정상에서 리드하느냐가 굉장히 중요한 시기인데 public과 private의 장점을 합친 클레이튼 블록체인 플랫폼이 좋은 위치에서 이끌어 나갈 것 같다는 느낌을 받았습니다.
그리고 제가 이제 결혼한 지 2년이 넘어가는데요. 슬슬 주니어도 만들어야 될 것 같고, 어떤 판타스틱한 어플리케이션을 만들어야 빨리 회사를 그만둘 수 있을까, 생각하며 살고있습니다. (모든 개발자들의 꿈 )
그리고 여담이지만 예전에 이더리움 스마트 계약을 활용해서 스포츠 토토 디앱을 만들었었는데요. 빛의 속도로 망해 가는 걸 관찰하며, 혼자 운영하는 건 한계가 있고 마케팅 부서가 괜히 있는 게 아니라는 걸 느꼈었습니다.
Q. 본인이 그리는 5년 정도 후의 미래는 어떤지 궁금합니다. 이런 사람이고 싶다거나
일단 흰머리가 그만 났으면 좋겠구요 (젊은데 ㅠㅠ ) 그리고 5년 후면 애가 둘이 있을 것 같네요. 가족들 부양 잘 하며 잘 먹고 잘 살고 싶습니다. 부업으로 매달 돈이 들어오게 하는 시스템도 갖추고 싶네요. ㅡㅡ;
Q. 개인적으로 만들고 싶은 서비스, 상상해본 적 있나요?
만들고 싶은 서비스 많죠. 아이디어는 많습니다. 지금까지 혼자서 만든 거랑 팀이랑 같이 만든 서비스들이 한 4개 있었는데요. 아직 겨우 세번(?) 실패했네요. (하나는 일단 Pause.) 쓰러져가는 나의 자식들을 지켜 보며 값진 경험들을 몸소 배우고 있습니다. 그런 면에서 인프런 참 대단하다고 생각합니다.
일단 현재 관심사는 블록체인 쪽이라 밑의 셋 중 하나를 활용한 BApp을 구상하고 있습니다.
토큰을 인센티브로 활용
토큰으로 서로 거래 가능
토큰 필요없이 데이터의 신뢰를 중요시함
물론 셋 다 활용할 수도 있구요. 제 머리가 흰 머리카락으로 다 덮이기 전까지는 계속 여러가지 도전 하고 싶네요. 어쨌든 옛날 싸이월드의 도토리가 블록체인의 토큰과 비슷한 컨셉인데 블록체인 플랫폼이 10년만 더 일찍나와서 싸이월드가 잘 활용했었다면 전 국민이 블록체인과 친숙해져 있었을거라 생각합니다. 이런 면에서 카카오의 클레이튼이 그 역할을 할 수 있을 것 같구요.
Q. 이런 사람이 되고 싶다, 존경하거나 좋아하는 사람이 있나요?
일단 세종대왕 좋아하구요. 가족들 존경합니다.
Q. 닷넷코어는 어떤 계기로 관심을 갖게 되셨나요?
예전 학교 다닐때 담당 교수님이 자바쪽이셨는데 너무 못가르치셔서 ㅡ.,ㅡ; 재미가 없었는데요. 마지막 학기 때 닷넷코어를 다른 교수분이 가르쳐주셨는데 흥미를 붙일 수 있도록 잘 인도해주셔서 자바를 버리고 닷넷코어에 관심을 갖게 되었습니다. 그리고 C#이 Java에 비해 훨씬 더 간결해서 매력있구요. 한 사람의 가르침이 이렇게 중요한 겁니다. (그렇지? 워털루 친구야.)
Q. 어떤 개발분야를 거치며 일하셨어요? 대학을 졸업하고 난후의 발자취가 궁금합니다.
유튜브 포프TV의 포프킴(ㅋㅋ 팬임) 님이 나온 BCIT 졸업했구요. 감사하게도 졸업 전에 인터뷰 보러 다녔던 곳들 중에서 연락이 오고 졸업 후, 곧바로 캐나다 금융기관과 민간 주택 융자 기관에서 사용하는 소프트웨어 회사를 다니다가, 닷넷코어 쓰고 싶어서 몇 년전에 직장 옮겼습니다.
Q. 닷넷코어 기술 소개 (생소한 분들도 있으니) 간단히 설명해주세요.
진짜 한 페이지 넘게 서술할 수 있지만 짧게 하겠습니다. 한국에서는 자바, 스프링과 Node.js가 거의 독점하다 싶이 해서 닷넷코어가 뭐지? 하는 분들이 많으신데요. 북미/유럽에서는 닷넷코어를 거의 동등한 비율로 많이 씁니다. 일자리 수요도 많구요. Pay도 좋습니다.
마이크로소프트에서 자기네들이 시대에 뒤떨어졌다는 걸 인정하고, 크로스 플랫폼과 오픈소스로 전환해서 기존의 .NET을 환골탈태한 것이 .NET Core 입니다. 벌써 3년 전이네요.
마소의 Azure도 작년에 아마존의 AWS를 다 따라잡고 매출/수익 면에서 1등을 했었습니다. 마소 회장이 바뀌고 나서 모든 면에서 환골탈태 하고 있어요. 예전의 윈도우즈 플랫폼만 고집하던 고리타분하던 회사가 더 이상 아닙니다. (마소 홍보 아니에요.)
닷넷 코어가 콘솔 앱이나 웹앱 만들기에 아주 좋은데요 특히 Restful하게 WEB API를 만드는데 최적화 되어 있는 것 같아요. 언어가 C#이라 elegant하고 비동기 처리하는것도 쉽고, 비쥬얼 스튜디오를 써서 (진짜 최고의 IDE) 만들기가 편하고 속도도 진짜 빨라서 한 서버에서 일초에 칠백 만 개의 HTTP 요청을 처리할 수 있습니다. > 관련 링크
현재 닷넷코어 3.0 프리뷰까지 나왔는데요. 아마 다음 릴리즈 때 웹 어셈블리를 통해 자바스크립트 없이 C#으로만 Single Page Application을 만들 수 있게 될 겁니다. (야호! )
Q. 현재 회사에서는 어떤 일들을 맡고 계신가요?
자동차 산업 관련된 회사에 다니고 있는데요. 미국, 캐나다, 영국으로 사업이 뻗쳐 있는데 요즘에는 중국까지 진출하려고 하더군요. 나름 돈을 잘 버는 회사입니다. 그래서 내부적으로 진행하는 IT 프로젝트도 많고, 또 가끔 외주로도 받아오고요.
닷넷코어로 데이터를 임포트하는 콘솔 앱을 만들거나 CMS 또는 ERP 관련 웹 앱 만드는 메인 개발자로, 프로젝트를 진행하고 있습니다.
Q. 앞으로의 블록체인에 대해선 어떻게 생각하시나요?
블록체인은 한 마디로 모두가 다 신뢰할 수 있는 데이터 저장소라고 생각하시면 됩니다. 지금 시대에는 중앙 기관이 데이터를 관리 하죠. 게임회사가 내 아이템들을 관리하고 은행에서 내 돈을 관리하고, 또 정부에서 내 개인정보를 관리한다거나. 제 3자가 데이터를 관리 하니까, 그 기관이 해킹을 당하거나 아니면 악의적으로 내 데이터를 삭제하거나 변형시킬 수도 있죠. 이게 싫어서 나온 게 블록체인입니다.
그리고 블록체인하면 먼저 비트코인 떠올리시잖아요. 이게 마치 예전의 56k 모뎀 쓰던 때를 떠올리면 됩니다. 겁나 느리고 자주 끊기고 불안정하고.. 하지만 56k 모뎀쓰면서 인터넷 사용이 보급화되는 신호탄을 쏘아 올린거잖아요. 비트코인도 블록체인이 보급화되는 신호탄을 쏘아 올린겁니다. 초석을 마련한 거죠.
이더리움이 나오고 스마트 계약을 활용한 블록체인의 희망을 또 보았죠. 이건 마치 56k 모뎀에서 ADSL로 갈아탔던 느낌이라고 생각하시면 됩니다. 이를테면 스타크래프트 팀플하는 데 덜 끊기게 됐습니다. 하지만 아직도 다른 온라인게임 하는 데 느리고 불안정할 때가 있죠.
그래서 지금은 누가 GIGA 인터넷처럼 더 빠르고 안정성있게 블록체인 플랫폼을 만드는가, 로 전 세계적인 배틀이 진행중입니다. 기가 인터넷같은 광랜의 스마트계약을 탑재한 블록체인 플랫폼이 나오면 블록체인이 진짜 보급화되는거죠. 일반적인 게임할 때도 알고보니 블록체인 쓰는거였고 웹 서핑하고 있는데 또 알고보니 블록체인 기반이었고 뭐 이런 시대가 오는 겁니다.
지금은 카카오톡, 삼성, 라인같은 굴지의 대기업들이 세계적으로 먼저 앞다퉈서 시장을 이끌어 나가려고 블록체인 플랫폼을 개발하고 있고, 페이스북도 매우 눈독 들이죠.
아주 바람직한 현상이라고 생각합니다. 대기업같은 주체가 선봉에서 이끌어줘야 블록체인 상용화의 시대가 그만큼 더 일찍 도달합니다. 저는 그래서 이 부분 때문에 엄청 긍정적으로 생각하고 있습니다.
Q. 개발 환경이 한국과 비교했을 때 어떤 부분이 더 좋은가요?
한국에서 일은 안해봤지만 대충 군대에서 느꼈으므로 굳이 비교를 해보자면 일단 사람 마음을 편하게 해주는 것 같습니다. 자기 일만 잘하면 따로 Pressure 주는게 없어서 좋구요.
또 누가 이거 해줘 저거 해줘 하면서 개발직무와 관련없는 것들 부탁 안해서 좋은 것 같네요. 개인의 삶을 엄청 존중하고 가족주의적이라, 회사 퇴근하고 나면 나하고 싶은 거 하면 돼요.
그런데 이거는 호불호가 좀 있는 것 같습니다. 사람들이랑 끝나고 어울리기 좋아하시는 분들은 엄청 심심하실거예요. 그리고 왠만한 IT 회사들은 평소에 야근이 없는 것 같구요. (아마 게임개발쪽 제외) 또 출퇴근 시간도 유연해요. 저희 회사에서는 아침 6시 반에 출근해서 오후 2시반에 퇴근하는사람도 있습니다. ㅎㄷㄷ. 저는 9시에 출근해서 5시에 칼퇴근 합니다.
휴가 일수는 일단 법으로 기본이 15일이고, 5년 일하면 5일 더 늘고요. 크리스마스 시즌 때 한주를 아예 쉬게 하는 회사도 있어요. 휴가 일수는 회사마다 진짜 다 다릅니다.
마지막으로 수평구조라 다들 격식 안 차려도 되어서 너무 좋습니다. 저보다 10년 먼저 들어오신 시니어 개발자분이나 부서 매니저에게도 이런 말을 할 수 있습니다. “이거 이렇게 하는거 아닌데“ 또는 “나 이거 나중에 하면 안될까?” -_- ㅎㅎ 영어는 참 좋은 언어입니다.
블록체인 이더리움 부동산 댑(Dapp) 만들기 – 기본편