Thursday, May 31, 2018

소프트웨어 개발 활동 #1 - 과외

과외를 하게 된 계기


타이틀을 소프트웨어 공학으로 할까 하다가 공학이라는 단어가 들어가면 거부감이 강하게 들까봐 개발로 바꿨다.

어쨌든 새로운 시리즈로 글을 써보려 하는데 table of contents는 아래와 같다.


  1. 소프트웨어가 뭔지 모르는 사람들이 코딩에 대한 질문을 하고 있는 걸 볼 때의 안타까움

그런데 다시 생각해 보니 첫 글은 내가 활동을 시작한 이후 느꼈던 생각에 대한 글이라 시간 순서는 지금 이 글이 먼저다. 시간 순서가 중요한 게 아니라 내가 어떤 활동을 하고 있느냐가 중요하니까.

과외를 하려고 마음을 먹게 된 계기는 새로운 개발의 욕구가 생길 때라고 봐야 할 것 같다. 그 욕구는 내가 항상 개발일을 하고 있을 때도 느끼는 거지만 회사에서 하는 일이 좀 쉽고 재미가 없는데다가 의외로 시간이 많이 남아서 딴짓을 하게 되는 시간이 많아질 때를 얘기하는 것이다.

여기서 딴짓에 대해 오해할까봐 덧붙이면, 딴짓이 개인적인 사사로운 웹서핑이 아니라 개발 관련된 글, 최신 트렌드 검색 및 개념 정리 그리고 그에 따르는 적절한 프로토타이핑 코딩 연습 및 공부를 얘기한다. 일이 없으면 스스로 능력을 개발하는 시간에 투자하는게 프로그래머의 숙명이 아니겠는가?


<한 프로그래밍 과외 공고, 화려한 스펙에 왠지 움츠러든다. 물론 난 저정도 수준은 아니다.
출처: 인벤>


첫 시작을 하다


그래서 시간이 많이 남으니 소프트웨어에 대한 가치를 전파하기 위해 처음엔 과외를 생각했다.

이유는 과외를 하면 개발 하는데 힘들어하는 사람들에게 1:1로 알려줄 수 있을 뿐 아니라 개발이라는게 코딩이 다가 아니고 소프트웨어라는게 뭔지 이해를 시켜 주면서 내 경험과 시행착오에 대한 가이드를 같이 해주면 좋지 않을까 해서다. 물론 돈을 조금 벌면서 할 수 있다는 것도 이유 중 하나다.

그리고 과외비도 아주 비싸게 책정하지 않고 시간당 1~2만원 선에서 1주일에 한번 2~3시간을 생각했다. 내 주력 언어인 C#으로 뭔가 하려는 사람들은 전부 windows application을 만들어서 원하는 특정 기능을 구현하고 싶어하는 사람들이었기 때문에 여러 까페와 구글 검색을 통해 연락한 사람 몇 명에 대해 오프라인 및 온라인 과외를 진행했다.

제일 궁금한게 과외 수입일 텐데 사실 과외 시간만 투자해서 시간당 돈을 벌면 나름 괜찮을 거라 생각하겠지만 만나서 얘기하지 않을 때도 준비하고 확인하고 하는 시간을 별도로 써야 하기 때문에 생각만큼 많은 돈을 벌 수는 없다. 그냥 용돈 조금 버는 수준으로 생각하면 된다.

그런데 지금은 돈 안받고 활동한다, 사실 소프트웨어 개발 알려주고 돈 받는게 돈을 번다는 목적에서는 의미가 있을 수도 있지만 돈 주는 사람의 입장에서는 과외를 통해 개발을 배운다기 보다는 돈을 줬으니 자기가 개발 하려는 기능에 대해 이것 저것 시키는 쪽으로 변질이 된다. 결국 진행하다 보면 과외가 아닌 갑을관계 방향으로 흘러가기 때문에 돈 보다는 일 하는게 재미가 없게 된다.

쉽게 얘기하면 일로 변질된 과외는 가르치는 보람은 둘째치고 목적 자체를 상실했기 때문에 과외비가 아니라 프리랜서 단가에 상응하는 돈을 받아야 의미가 있다는 뜻이다. 하지만 과외비의 암묵적인 상한선은 정해져 있어 이를 악용하는 사람들이 있다. 그래서 대신 일 해주는 과외 안하는 대신에 돈도 안받는다.


이제 돈을 안받는다는 걸 알게 되었으니 취업, 진로, 문제 해결이 아닌
멘토, 조언, 공동 작업을 원하는 분은 아래 링크를 참조하고 연락하면 된다.
https://jongfeel.github.io/Software/

물론 글 내용에 취업, 진로, 문제 해결 내용이 들어가면 회신 안간다.
나중에 회신 안준다고 뿅뿅하는 사람 있을 까봐 미리 알려준다.


후기


다시 돌아와서 계속 이런일이 반복되고 진행되다 보니 과외는 돈 번 것 보다는 결과가 썩 좋지 않았기 때문에 더 이상 하지 않기로 했다. 여기서 결과가 좋지 않았다는 건 돈을 많이 못벌었다는 뜻이 아니라 내가 생각하는 소프트웨어 개발의 가치에 대한 전파가 잘 안됐다는 뜻이다.

사람의 마음이 간사하기에 처음 과외 할 때와 나중에 끝날 때 쯤 마음이 같은 사람은 여태까지 한 사람도 못봤다. 애초에 과외를 의뢰하는 사람의 의도는 아주 저렴한 돈으로 사람을 구해 일을 시키려는 것이기 때문이다.

그런 사람들에게 소프트웨어에 대한 얘기를 해봤자 이해도 잘 못할 뿐더러 이해하려고도 하지 않는다. 이유는 딱 하나 밖에 없다. 과외를 받는 사람은 돈을 쥐고 있기 때문에 뭔가 과외를 포장한 갑질이라는게 본인 스스로 허용이 된다는 걸 알게 되는 것 같다. 결국 과외 선생님이라고 부르고 을이라 쓰는 사람에게 뭔가 이런 저런 얘기를 듣고 싶어하지 않는다.


몇 가지 사례



#1, C#을 배워 주식 트레이딩 프로그램을 만들 수 있게 도와달라는 사람.


처음에 만날 때 C# 인강도 보고 해서 트레이딩 프로그램 만들고 있고 개발을 잘 모르니까 알려주면 열심히 배우겠다고 해서 진행했다.
두번째 만날 때 까진 C# 문법과 구현 테크닉 들을 알려줬는데 그 다음부터는 점점 자기가 만들려는 프로그램에 대한 설명을 조금씩 하기 시작하더니 만드는 방법에 대해 계속 물어보는 식으로 바뀌어 갔다. 정신을 차려 보니 어느샌가 내가 주식에 대해 공부를 하고 있었고 그 사람이 만들려는 프로그램을 만들어 줘야 하는 일로 변질된 걸 깨닫고 빠르게 그만 뒀다. 의도가 상당히 불순했기에 소프트웨어에 대해 1도 모르는 사람에게 필요없는 말을 떠든 셈이 됐다.


#2, C#을 잘 몰라 기초부터 차근차근 배우고 싶어하는 사람


이 친구는 실무에서 프로그램 개발하는 현직 개발자인데도 C#을 잘 모른다기에 상당히 의아했는데, 알고 보니 개발이라는 타이틀만 가졌을 학교 연구실에서 교수님의 갑질을 받아가면 일을 하는 친구였다. 그렇다고 석사 박사 과정을 하는 학생도 아니고 엄연한 직원인데 교수가 마치 학생 대하듯 갑질 하는 것 보고 기가 찼다.

지잡대 대학에서 일어나는 일이라 생각할 수 있지만 서울의 유명한 S대학에서 벌어진 일이다. 어쨌든 이 친구도 수업 몇 번을 진행하다 보니 슬슬 만들고자 하는 프로그램 얘기를 조금씩 하기 시작했다. 벡터값으로 3D 그래픽 렌더링 하는 걸 만들고자 했는데, 이 친구는 정말 C#을 배워서 그래픽 프로그램을 개발하고 싶어했지만 교수님의 갑질이 그 친구를 통해 나한테 전달이 됐고, 뭔가 일을 시켜서 해보면 되지 않겠냐는 듯이 얘기했다고 했다. 그 친구는 스스로 직원을 채용해서 일을 시켜야 하는 걸 알았기에 이쯤에서 과외를 그만 두는게 좋겠다고 했다.
지금 생각해 보면 착한 건데, 일을 할 수준이면 과외가 아니라 직원을 뽑는게 맞다고 판단해서 그랬던 것이다. 이 케이스도 크게 보면 결국 과외로 포장된 일 떠넘기기로 변질이 된 것이다.


결론


그래서 과외는 그만두고 온라인 코드 리뷰 모임을 하는 걸로 도전을 해보기로 했다.

Sunday, May 27, 2018

정보처리기사 후기

뜬금 없이 정보처리기사라니 하겠지만 그 동안의 히스토리를 쭉 정리해보려고 한다.

정보처리기사 자격증을 여태까지 취득하지 않은 이유


대학 다닐 때 졸업을 위해 학교에서 제시한 선택지가 3개가 있었는데

  • 설계프로젝트 과목 B학점 이상 이수
  • 정보처리기사 자격증 취득
  • 논문
이렇게 였는데, 논문은 거의 대부분 하지 않았고 설계프로젝트 과목을 이수하거나 정보처리기사 자격증을 따거나 했다.
사실 부지런한 친구들은 정보처리기사 자격증 공부도 하고 설계프로젝트 과목도 이수하고 한 친구들이 있었는데 난 자격증이 그리 중요하지 않다고 생각해서 공부하지는 않았고 나중에 공무원할때 가산점 주니까 그때 해도 늦지 않을거라는 생각에 따지 않았다.

그리고 사회생활을 14년 간 하면서 자격증을 딸 이유도 없었고, 그게 있다고 해서 나한테 크게 이득이 되는 일이 있거나 하지 않았다.

정보처리기사 자격증을 따려고 마음 먹은 계기


그렇게 작년까지 일을 열심히 했다가 회사 대표님과 프로젝트 얘기를 하던 중 이런 얘기를 들었다.

"종필님 어차피 기사 자격증 있으시니까 단가 책정할 때 문제는 없을 것 같아요"

그때 빨리 "저 자격증 없어요" 라고 했어야 했는데, 우물쭈물 하다가 말할 타이밍을 놓치게 됐고 졸지에 기사 자격증을 취득하고 실무 경력 13년이 있는 개발자가 되어 버렸다.
그래서 자격증 따 놔야 하나 라는 생각을 조금 하다가 정보처리기사 시험에 대한 검색을 해 봤다.

사실 이때까지만 해도 자격증을 따고 싶다는 생각이 없었다.
대표님한테는 그냥 자격증 없다고 얘기하면 되는 거였고, 프로젝트에 투입하는 인력이야 다른 인력으로 대체해서 넣어도 되는 거였으니까.

그런데 최근 정보처리기사 자격증의 난이도가 급상승해서 실기 합격률이 10~20% 정도밖에 안되는 아주 어려운 시험으로 변했다는 나무위키의 글을 보고 얼마나 어렵게 바뀐거길래 합격률이 이런가 궁금해서 자격증에 도전해 보기로 마음을 먹었다. 그리고 실제 실무에서는 아무 짝에도 쓸모 없는 자격증인데, 이걸 공부하는게 의미가 있는 건가 알아도 볼겸 시험을 보기로 한 것이다.

나무위키에 나온 실기 합격률의 가파른 변화

정보처리기사 필기 준비


시나공 책을 사 놓고 처음부터 쭉 훑어 봤는데 학교 다니던 시절에 배운 내용이 거짓말 처럼 쭉 나열이 되어 있었고 10년이 넘는 세월에도 컴퓨터 관련 기본 지식들에는 변화가 없구나 하며 시작을 했다. 기출 문제들도 어처구니 없는 수준으로 나와 있어서 과연 이렇게 딴 자격증이 무슨 소용이 있나 싶을 정도였다.

<요 책으로 열심히 공부를 했다. 그리고 합격한 다음날 중고로 바로 팔아버렸다.
출처: Yes24>

내용 보고 기출문제 보고 하는 식으로 공부했는데 운영체제와 데이터 통신에서 쓸데없이 많이 외워야 하는 기술 용어들을 제외하고는 기출문제 위주로 봐도 큰 문제가 없을거라 생각해서 한 2주 정도 공부한거 같다.

그리고 정말 평가를 이런 식으로밖에 할 수 없나 라는 생각이 많이 들었다. 요즘 같은 시대는 얼마나 많이 알고 있냐를 평가하는 게 아니라 알고 있는 걸 어떻게 써야 하고 어떻게 생각을 해야 하냐로 평가하는게 맞는 건데, 시험의 수준이 이정도니까 쓸모 없는 자격증이라고 하는거 아닐까? 라는 생각이 많이 든다.

어쨌뜬 필기 시험의 소감은 대학다닐때도 그랬지만 내가 잘 하고 좋아했던 분야는 소프트웨어 공학 쪽이어서 그 과목에서 높은 점수를 받았고, 나머지 과목들도 과락이 안되는 수준에서 점수를 받아 합격할 수 있었다.

정보처리기사 실기 준비


실기 역시 시나공 책을 사서 쭉 문제를 푸는 방식으로 했다. 하다 보니 알고리즘 푸는 건 코드에 빈칸 채우기 수준이라 따로 안봐도 될거 같았고 신기술동향에 외워야 할게 너무 많아서 머리 터지는 줄 알았다.

실기 시험도 이런 식으로 평가하는게 아니라 실제 프로그램 짜는 걸로 좀 바꾸는게 좋을 것 같고, 신기술동향 문제도 답맞추기 형태가 아니라 이런 기술이 어떤 영향을 미치고 뭘 의미하는 건지에 대해 서술하는게 좋을 것 같다는 생각이 든다.

사실 필기는 뭐 그렇다 쳐도 실기 시험은 그러지 않아야 하는데 실기도 크게 다르지 않다는 점에서 계속해서 이 자격증을 따는게 큰 의미가 없다는 생각을 많이 했다.

시험 보는 날 문제 다 풀고 확실한 것만 점수를 매겨보니 50 점 정도밖에 안되서, 부분 점수를 받는다고 해도 60점이 넘을까? 라는 생각을 했다. 확실한 점수로만 해도 합격 점수는 아니니 좋은 경험 한 셈 치고 다음 실기 시험을 준비해야 겠다는 생각을 했다.

그러다 지난 주 금요일인 5월 25일이 합격자 발표일이었는데 합격됐다고 문자가 왔다. 이게 뭔일이지? 하고 사이트 가서 확인해 보니 생각보다 높은 점수인 69점을 받았다고 되어 있었다.

나무 위키에 다시 확인해 보니 내가 봤던 2018년 1차 시험은 갑자기 난이도 하락해서 합격률이 53.8% 라고 하는데, 다행이라고 해야 하는 건지 아니라고 해야 하는 건지 잘 모르겠다. 사실 난 합격의 의의보다는 이런 자격증 따는데 난이도가 왜 이따위인지 그리고 이 자격증 시험을 위해 공부하는게 의미가 있는지를 알아보려고 한 거였기 때문이다.

결론


이 자격증이 정말 자격이 있는지를 증명하는 방법인지를 다시 한번 생각해 볼 필요가 있다. 내 블로그를 본 사람 중에 "너는 실무 경력이 10년이 넘었고 전공도 컴퓨터공학이니 자격증 시험 보는게 쉬운거 아니냐?" 라고 할 수는 있다.

그런데 실무에서 일을 잘 하는 것과 자격증 시험을 위해 공부를 하는 건 다른 차원의 일이라는 걸 알아야 한다.

사실 자격증이 없어도 개발일 하는데 아무 지장이 없다. 그런데도 공공 프로젝트에서 노임 단가를 책정할 때는 어김없이 자격증 취득 여부에 따라 초급인지 아닌지가 결정이 된다. 우스개소리로 빌게이츠가 한국에 와서 공공프로젝트 단가를 받으면 초급 단가를 받아야 한다는 얘기가 있다. 

나는 이제와서 자격증을 땄고, 이제 공공 프로젝트에 노임 단가에서 특급기술자 단가를 받을 수 있게 되었다. 그런데 이게 내 개발능력이 특별히 갑자기 상승한다던가, 없던 능력이 특별히 생긴다던가 그런 건 아니다. 특급기술자 단가로 돈을 받을 수 있다는 것만 알려주는 것일 뿐 자격증 유무와 개발 실력은 전혀 상관이 없다는 뜻이다.

그러므로 K뿅뿅 너네들은 정말 쓸데없는 자격증 가지고 단가 측정하는 짓 하지 말고, 합리적이고 현실적인 단가를 측정하기 위한 노력을 좀 하길 바란다. 단, 앞장서서 나서는 짓좀 이제 그만하고, 여태까지 열심히 일하고 있는 사람들과 앞으로 일할 청년들에게 개발을 잘 할 수 있게 방해나 하지 않았으면 한다. 정보처리기사 자격증 정말 방해된다 이것들아.