앞선 포스팅에서 승인전직을 받기 위한 조건/케이스를 간단하게 다뤄보았다.

뭐 근데 세부적인거 잘 몰라도 1.5년이 지나셨다면 솔직히 크게 걱정할 것 없이 바로 이 포스팅을 보면 된다.

이 포스팅에서는 어떤 과정/단계를 밟아서 전직승인이 되는지 최대한 아는대로 자세히 말해보겠다.

각 단계의 주체를 [ ] 로 표현하였다.

 

1) [본인] 옮겨가고 싶은 회사를 탐색한다.

 

2) [본인] 해당 회사가 "전문연구요원 병역지정업체"에 해당하는지를 확인한다. 
(https://work.mma.go.kr/caisBYIS/search/byjjecgeomsaek.do
여기서 검색이 된다고 하면 해당 업체는 전문연구요원 병역지정업체이다.

여기서, 대소문자 영문자/한문을 완벽하게 작성해야만 검색이 되므로 주의하자.

참고로 전문연구요원과 산업기능요원은 완전히 다른 것이므로, 둘 다 안되는 경우, 둘 중 하나만 되는 경우, 둘 다 되는 경우 등이 있다. 그러므로, 본인이 전문연구요원이라면 전문연구요원을 선택한 후에 검색!

 

3) [본인] 해당 회사에 지원과정을 거쳐 최종합격을 받는다. (이하 새 회사)

 

4) [본인, 새 회사] 최종합격을 받은 후 통상 오퍼레터를 받게 될것이고, 오퍼레터와 함께 채용동의서를 요구한다.

채용동의서는 양식이 년도마다 문서마다 살짝씩 다르다. 내가 갈 회사가 나를 기점으로 전문연구요원을 처음 받는거라면 나도 나서서 양식이라던지 세부사항에 대해서 병무청에 문의하며 도와주는게 좋다.

통상적으로는 인터넷에서 2개의 양식을 찾을 수 있었는데, 둘 중 한개의 양식을 사용하면 된다.

* https://www.mma.go.kr/seoul/board/boardView.do?gesipan_id=26&gsgeul_no=1499720&

* https://www.mma.go.kr/seoul/board/boardView.do?gesipan_id=26&gsgeul_no=1454089& ("복무관리서식" 첨부파일)
참고로 채용동의서에는 내가 작성해야하는 부분도 있다. (성명, 주민등록번호, 아버지 성명, 어머니 성명, 편입일자, 역종)
커뮤니케이션이 귀찮으면 이 부분은 미리 작성해서 넘겨주고 새 회사가 나머지를 채우고 날인을 찍어서 달라고 하면 된다.

 

5) [본인] 채용동의서를 받은 후, 현 회사에 퇴직의사를 밝힌다.

퇴직의사를 밝히는 과정은 보통 실무진 직속 상사(팀장 및 직속 조직장) 에게 보고하는 것을 말하고, 
퇴사결재를 한다는 것은 실제 더 그 위의 인사담당자 및 임원진에게까지 결재 보고를 하는 것을 말한다.

여기서 승인 전에 퇴직의사를 밝히는 이유는 통상 1달의 시간 후에 퇴직이 가능하기 때문이다. 

만약에 현 회사가 통상 회사들과 다르게 하루만에 내가 원하는 날 바로 퇴직이 가능하다면 승인 후에 이야기해도 되긴 한다. 


6) [본인, 현 회사] 내가 전직신청서를 작성한다.
앞서 썼던 링크 중 하나인 
https://www.mma.go.kr/seoul/board/boardView.do?gesipan_id=26&gsgeul_no=1454089&
에 복무관리서식이라는 파일에 있다. 전직신청서에는 현 회사, 개인 복무 정보, 그리고 새 회사에 대한 작성이 필요하므로 본인이 작성하고 현 회사 인사담당자에게 넘겨준다. 현 회사 인사 담당자가 해당 신청서를 확인하고 업체 장의 날인을 찍어줄 것이다.

7) [정리] 채용동의서, 전직신청서, 그 외 필요 서류 등을 현 회사의 인사담당자에게 전달한다.

여기서 그 외라 하면 보통은 개인 복무상황부를 말한다. 출퇴근기록표라고 보면 된다. 출퇴근기록 및 (출퇴근 안한날에 대한 소명이 필요하므로) 휴가기록 이 포함되어야 하는데, 휴가기록을 일일이 대신 작성해주시는 천사 인사담당자님은 보통 거의 없으므로 통상적으로는 휴가기록을 작성해달라고 요청하실거다. 그러면 말을 잘듣고 작성해드려서 복무상황부를 채우는데 도움을 드리자.

8) [현 회사] 현 회사 인사담당자가 전직에 필요한 서류들을 병무청에 전달한다. 

총 3개의 서류가 전달될 예정이다. (전직신청서 / 채용동의서 / 개인복무상황부)

 

9) [병무청] 전직승인을 허가한다.

 

10) [본인, 현 회사] 퇴직일이 반드시 전직승인일 이후가 되도록 한다. 그리고 퇴사를 한다.

 

11) [본인, 새 회사] 새 회사에 입사한다.

9) 이후에 반드시 14일 이내로 새 회사에 입사하여야 한다. 참고로, 병무청 승인이 늦어지는 경우 현 회사의 퇴직일을 어느 정도 조정할 수 있도록 부탁드려야 한다. 

 

------

 

이것으로 단계가 끝난다. 여기서 궁금한것은 아무래도 퇴직일과 관련된 영역일 것이다.

전직승인 후에만 퇴직을 해야 하지만, 문제는 통상 회사는 퇴직 전 한달 전에 보고할 것을 요구한다. 그런데, 이렇게 해버리면 14일 이내 새 회사 입사라는 조건을 지킬 수 없게 된다. 


채용 동의서 확보 > 실무진 퇴직 의사 표명 > 퇴직 결재/보고/상신 > "병무청 승인" > 퇴사 > 새 회사 입사


가 될텐데, 병무청 승인이라는 걸림돌이 있으므로, 퇴직 의사 표명 후에 퇴사 및 새 회사 입사가 불가능해질 수도 있는 것이다. 승인은 어지간하면 조건만 맞으면 해주는 것 같으나, 몇몇 경우와 비전공자라던가 새 회사와 현 회사 사이에 업종이 맞지 않는다거나 하면 승인 불허가 날 수 있다. 즉 마음을 마냥 놓을수는 없다. 

 

즉, 최악의 경우 퇴직 결재 승인됬는데 병무청 승인 불허되버린 경우다. 그치만, 이런 경우 충분히 있을수 있고 이것은 우리의 잘못이 아니기 때문에 이 상황을 확실하게 현 회사가 인지하고 이 경우에는 퇴사를 무를수 있게 해줘야 한다. 보통 통상적으로 회사랑 척을 진게 아니면 그렇게 해준다.
그렇기 때문에 우리가 전세 대출 계약하듯이 어느정도 인사담당자/실무자랑 딜을 해야 한다.


1) 병무청 승인 후 "퇴직 결재/보고/상신~승인" 까지 현 회사가 엄청 빠르게 해 줄 것을 보장받기
  (14일 내로 해줘서 새 회사 입사에 무리없게끔)

or
2) 1달전 혹은 병무청 승인 전에 퇴사 결재를 먼저 올리고 최악의 경우, 퇴직일 변경 혹은 퇴직 자체를 취소 (병무청 승인 불허 경우) 할 수 있는 상황을 보장받기

이상한 회사가 아니라면 그래도 최소한 2번은 하게 해준다. 당연히 근데 그럴거라 믿고 단독행동하면 안되고 이 과정에서 제일 중요한 것은 각 회사의 인사담당자랑 충분한 커뮤니케이션과 상황 공유이다. 필자가 다녔던 회사의 경우 인사담당자께서 통상 2번으로 하신다고 하여서 나도 2번으로 처리하였다. 


만약 2번으로 한다고 가정하면 채용 동의서 후 퇴직 결재를 올리고, 퇴직일로 합의하였던 일자 약 10일전쯤부터 인사담당자가 병무청에 서류를 보내어 퇴사/입사에 문제없게끔 승인 처리를 시도한다. 그 후에 승인이 됬다면 문제가 없는 거고 승인이 안됬다고 하면 그 사이에 퇴사를 유보/취소하는 처리를 함으로써 다시금 원래 회사를 계속 다닐 수 있게 되는 것이다. 아시다시피 이것은 회사가 엄청 나를 잘 봐준 것이므로 회사랑 사이가 너무 안좋거나 하면 쉽지 않을 거다. 어쨌든 미리 말을 잘 받아놓고 시도하는게 좋다.

 

아예 날짜로 말해주자면, (날짜는 예시임)

1월 1일 채용동의서 수령
1월 1일 실무진 직속 상사에게 퇴사 의사 보고
1월 1일 퇴사 결재/보고/상신
1월 20일 병무청 승인 관련 서류 전송 (by 현 회사 인사담당자)
1월 25일 병무청 전직 승인 결정
1월 25일 퇴사 (퇴사 결재를 올린 날과 한달이 안되었으나 현 회사와 딜을 했다는 가정하임. 딜이 안되었다면 이 값이 2월 1일이 되어야 함)

2월 1일 입사 (14일을 풀로 기다리지 않고 7일 뒤에 입사한 케이스)

이런식이 될거다.

개인적인 경험으로는 굳이 14일 풀로 하는 것보다 혹시 모를 상황을 대비해 퇴직일과 입사일을 1주일 떨어뜨려 생각해 두고 진행하는게 제일 베스트다.

이미 좋은 포스팅 글이 많지만, 나 스스로 정리하기 위한 목적으로 글을 한 번 써본다.

 

전문연구요원 전직이라 함은 전문연구요원의 신분으로써 현 병역지정업체가 아닌 다른 병역지정업체로 가서 일을 하게 되는 것을 말하는데, 여러 가지 케이스가 있겠으나 1) 회사 or 2) 대학원 박사과정 이고, 여기서는 회사에서 다른 회사로 가는 케이스에 대해서만 주로 다뤄보려고 한다.

 

아, 그 전에 전문연구요원 전직은 1) 당연전직, 2) 승인전직으로 나뉘어지며, 당연전직은 회사가 망했다거나 하는 등의 당연히 옮길 수밖에 없는 상황에 특별한 제약없이 쉽게 할 수 있는 전직을 말하고, 승인전직은 승인이 필요한 전직을 말하는데, 통상적으로 개인 의사로 인한 전직을 의미한다.

 

그래서 이 "승인전직" 안에서도 여러가지 해당사항이 있으나, 가장 대표적인 케이스가 첫번째로 명시되어 있는 1년 6개월 이상 한 병역지정업체에서 근무한 경우이다. 여기서 재밌는 건, 대학원 박사과정 전문연 중에 회사로 가려는 경우 굳이 1년 6개월이라는 조건을 맞출 필요는 없고, 중소기업 외 연구기관에서 중소기업부설로 가려는 경우에도 1년 6개월의 조건은 필요없다.

 

즉, 현재 가려는 곳이 중소기업부설 연구기관으로 가고자 한다면 이미 중소기업 부설 연구기관에 다니고 있는 게 아닌 이상 이 1년 6개월의 조건을 신경 쓸 필요가 없다. 원래는 1년 6개월의 기간은 있어야만 티오를 얻고 다른데로 자유롭게 떠날수 있는 줄 알고 있었는데, 본인이 대학원 박사학위과정의 전문연구요원이거나, 중소가 아닌 곳에서 중소로 가려는 경우 (기업규모 를 낮추는 경우) 는 이 조건을 지키지 않아도 된다.

 

확실한 참고: https://www.mma.go.kr/contents.do?mc=mma0000765 

 

복무관리 - 전문연구,산업기능요원 - 복무제도 - 병역이행안내 - 병무청

병역이행안내INFORMATION --> --> 복무관리 전문연구/산업기능요원 복무 관련규정 병역법 제39조 및 제40조(전문연구/산업기능요원의 복무, 신상변동통보) 병역법시행령 제83조 내지 제92조의2 근무해

www.mma.go.kr

 

어쨌든, 그래도 대다수 분들은 또 1년 6개월을 반드시 지켜야만 하는 경우가 많을 것이다. 지금 회사 규모 이상으로 가고 싶은 경우도 있을테고, 아니면 이미 중소기업 부설 연구소에 다니고 있다면 어차피 다른 중소기업을 가고 싶어도 1년 6개월은 지켜야 한다. 

 

그렇다면 내가 다니고 있는 회사/ 다닐 회사가 어떤 기업규모가 어떤지 알고 싶다면 "전문연구요원 병역지정업체"를 검색해보면 된다. https://work.mma.go.kr/caisBYIS/search/byjjecgeomsaek.do 

 

병역지정업체검색>「산업지원 병역일터」

 

work.mma.go.kr

기업에 대해서는 내가 알기론 대기업 > 중견 > 중소 > 벤처 와 같은 형태로 기업 규모가 명세되어 있는 것으로 안다.

위 사진을 보면 알 수 있듯이, 네이버의 경우 대기업 부설 연구소로 전문연구요원을 받고 있는걸 볼 수 있다. 재미있는 건 병역지정업체 검색 사이트에서 정확히 대/소문자 한글/영문을 잘 지켜서 검색해야 한다. 네이버의 경우 정확히 "Naver"라고 검색해야만 뜬다. "NAVER"라던지 "네이버"라던지 "naver"라던지는 안됨

 

어쨌든, 본인이 위의 상황을 잘 확인해봤을 때
1) 1년 6개월 조건을 만족시켰거나 or
2) 1년 6개월 조건이 없더라도 승인전직이 가능한 상황 (기업규모 줄이는 이직 or 대학원 빤스런)
이제 승인전직을 위한 조건은 준비가 되었다.

 

승인전직의 프로세스에 대해서는 다음 포스팅에서 다뤄보고자 한다.

  1. 도전하는인생 2021.06.26 21:40

    안녕하세요, 포스팅 정말 감사합니다.

    궁금한 점이 있어 댓글 달게 되었습니다.

    링크 주신 곳 https://www.mma.go.kr/contents.do?mc=mma0000765 에서

    '전직승인 제한' 이라는 주제에서 맨 마지막 줄에 '대기업 연구기관으로의 전직' 이라는 언급이 있는데

    그렇다면 중소기업 연구소에서 1년 6개월 이후에 대기업으로의 승인전직이 제한된다는 건지 좀 헷갈리는데

    내용에서는 대기업으로 전직이 가능한 느낌이어서,, ㅠㅠ 확실히 알고 가고싶어서요

    1년 6개월 미만의 중소기업 연구원 -> 대기업 연구기관 전직이 불가 하다는 건지 .. 혹시 아시는 내용 있으시면 답변 부탁드립니다...!!!

    • THINKPRO THINK_PRO 2021.06.26 21:46 신고

      주변에 중소->대기업 전직한 경우를 본적이 있는거 같은데, 단순히 저 전직승인 제한 항목만 보면 대기업쪽으로 가는건 불가한것처럼 보이긴 하네요.. 이 부분은 병무청 직원분께 직접 문의하셔야할 거 같습니다. 일단 어떤 경우든 이미 중소기업 전문연 다니고 계시면 어딜 가더라도 1.5년은 무조건 채워야 합니다.

 

 

authentication: 인증

누군가 자신을 A라고 말하고 있을 때 그것이 사실인지 확인하는 과정.

 

authorization: 권한 부여

A라는 사람이 특정한 일을 하려고 할 때 (특정 장소로 가려고 하거나, 원하는 정보를 얻도록 할 때) 그것을 허용하는 행위.

completeness: 모든 정답 사례를 찾아낼 수 있다.

soundness: 어떠한 오답 사례도 정답 사례라고 잘못 판단하지 않는다. 

 

true/false positive/negative 개념을 동원하면 이해하기가 비교적 쉽다.

true positive = 참이라고 예측했고 실제로도 참인 경우

false positive = 참이라고 예측했으나 실제로는 거짓인 경우

false negative = 거짓이라고 예측했으나 실제로는 참인 경우

true negative = 거짓이라고 예측했고 실제로도 거짓인 경우

 

예를 들어 보자.

A B C D E F 라는 사람이 있고, A B C 는 거짓말 쟁이고, D E F는 보통 사람이라고 하자.

그리고 우리는 보통 사람을 찾아내는 알고리즘을 구현해야 한다.

 

우리가 만든 알고리즘이 completeness를 만족한다면 그 알고리즘은 반드시 D E F 에 대해서 보통 사람이라고 이야기한다. 하지만 이것이  A B C가 거짓말 쟁이임을 말하지는 않는다. 즉, completeness를 만족하지만 soundness를 만족하지 않았다면 A B C 중 최소 한 명 이상을 평범한 사람이라고 잘못 지적한 것이다. (false positive)

 

우리가 만든 알고리즘이 soundness를 만족한다면 그 알고리즘은 A B C를 평범한 사람이라고 잘못 지적하지는 않는다. 만약 soundness는 만족하지만 completeness를 만족하지 않는다면, A B C 에 대해서는 거짓말 쟁이임을 잘 찾아내지만, D E F 중에서 최소 한 명을 거짓말 쟁이라고 잘못 판단하게 될 것이다. (false negative)

 

따라서, completeness와 soundness를 전부 만족한다면, 어떠한 false 결정도 하지 않게 된다.

 

completeness 만족 & soundness 만족 => D E F 보통 사람 / A B C 거짓말 쟁이 (완벽하게 모든 사례 정답!)

completeness 만족 & soundness 불만족 => A D E F 보통 사람 / B C 거짓말 쟁이 (이 경우 A가 false positive)

completeness 불만족 & soundness 만족 => E F 보통 사람 / A B C D 거짓말 쟁이 (이 경우 D가 false negative)

  1. ㅇㅇ 2021.04.16 19:49

    소프트웨어 설계에 대해 공부하다가 본 글을 보고 댓글을 남깁니다ㅣ.
    soundness를 만족한다는 뜻은 false alarm(false positive)가 존재한다는 의미로 알고 있는데
    본문에는 false negative라고 작성하셨네요. 그 반대 아닌가요?

    • THINKPRO THINK_PRO 2021.05.17 22:36 신고

      soundness는 그 정의가 false 사례를 true로 말하지는 않는다는 것을 의미합니다.
      여기서, false 사례를 true로 말하는 것은 false positive이므로,
      "soundness = false positive하지 않음" 을 의미할 뿐입니다.

      여기서 주의해야 할 것은, false positive 하지 않은 것과 false negative 하다는 것은 동치가 아니라는 점입니다. 그럼에도 제가 false negative하다고 작성한 이유는 completeness를 만족하지 않는다는 전제하의 예시를 들었기 때문입니다.

      false positive한 사례가 없고, false negative한 사례가 없다면 completeness와 soundness를 만족한 셈이고.

      false positive한 사례가 없고, false negative한 사례가 있다면
      soundness 만 만족한 것이라 볼 수 있겠습니다.

문제 출처: https://www.acmicpc.net/problem/9078

문제

주어진 숫자 열을 정렬하는데, 사용할 수 있는 연산은 이웃하는 두 숫자를 다른 두 수 사이나 숫자열의 맨 앞 혹은 맨 뒤에 끼워 넣는 것 뿐이다. 즉, 한 번에 숫자를 하나씩 옮기는 것이 아니라, 이웃하는 숫자를 두 개씩 묶어서 옮긴다. 4 1 5 3 2의 경우 다음과 같이 정렬할 수 있다.

4 1 5 3 2 → 3 2 4 1 5 → 3 4 1 2 5 → 1 2 3 4 5

그러나 2 1 3의 경우에는 어떻게 하더라도 정렬할 수 없다.

이와 같이 입력으로 1에서 N까지의 서로 다른 N의 정수로 구성된 숫자 열이 주어졌을 때, 그것이 위의 연산만으로 정렬가능한지 여부를 결정하는 프로그램을 작성하시오.

입력

입력의 첫 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스는 두 줄로 이루어져 있다. 첫째 줄에는 정수 N(1 ≤ N ≤ 100)이 주어지고, 둘째 줄에는 N개의 정수가 공백을 사이에 두고 주어진다.

출력

각 테스트 케이스에 대해서 정렬 가능하면 YES를, 아니면 NO를 한 줄에 하나씩 출력한다.

 

내 해답: https://github.com/jeongmincha/BOJ/blob/master/9078.py

설명

이미 정렬 가능한 배열 = A (예를 들어 12)가 있다고 가정했을 때, 이후에 원소를 2개 추가한다고 했을 때, 그 추가되는 두 개의 숫자도 이미 정렬되어 있어야만 새로운 배열의 정답이 YES가 됩니다.
(예를 들어 12 배열에 3,4를 추가한다면->1234, 3412, 3124, 즉 3과 4는 어떤 곳에 위치하든 정렬된 상태여야만 합니다)

 

여기서 count 변수를 각 배열의 원소 뒤에 오는 다른 원소의 크기 비교를 한 값을 전부 합한 sum값이라고 합시다.
1. 1234의 경우
34가 뒤에 추가되었으나 count가 변하지 않음.
2. 3412의 경우
34가 앞에 추가되었으므로 count가 +4 (3이 12보다 크므로 +2, 4가 12보다 크므로 +2해서 총 +4)
3. 3124의 경우
3이 앞에 추가되었으므로 count가 +2 (3이 12보다 크므로 +2, 4는 뒤에 왔으므로 count 변화 없음)

즉, 기존에 이미 정렬 가능한 배열에서 새로운 원소를 추가시킬 때마다 count의 변화는 짝수로 변하게 됨.

참고로 위 사례에서는 12와 같이 짝수개의 원소 배열부터 시작했지만, 123과 같이 홀수개의 원소 배열에서 출발하더라도 같은 논리를 도출하게 됨. 또한, 태초에 12나 123같은 정렬된 배열에 대해서 count값은 0을 가지므로 어떠한 길이의 배열도 count가 짝수여야 YES가 됨.

학습 자체는 좋아하지만 스스로에 대한 피드백을 제대로 하지는 않는 편이었다. 많이 다양하게 읽는 것을 좋아하지만 하나의 책을 읽고 나면 그 책에 대해서 독후감을 쓴다거나 시간을 따로 가져 머릿속에서 다시 떠올리려는 연습을 하지 않아왔다. 그러다보니 책을 읽어도 다시금 누군가에게 설명해야 한다고 하면 정작 자세한 이야기는 할 수 없는 것이었다. 기껏해야 책 표지 책 목차의 제목 정도를 보고서 책 읽기 전에도 이미 할 수 있었던 예측 내용만을 읊을 수 있을 뿐이었다. 이렇다면 책을 읽는 이유가 없는 것이 아닌가?

 

질적으로 향상된 학습이 필요한 시점이라고 생각했다. 그러면서 자연스럽게 읽었던 책의 내용을 "의도적으로" 상기시키는 것이 중요하다고 생각이 들었다. 100권의 책을 읽고 그 책들의 내용이 내 삶의 가치관을 가랑비에 옷 젖듯이 변화시키는 것도 좋은 방법이겠지만, 한 권의 명저를 읽고 그것을 완벽하게 내 것으로 만들어 버리는 것이 더 중요하다고 생각이 들었다. 그러니까, 좀 더 쉽게 생각하면 아예 한 책을 시험을 치듯이 곱씹어 먹어버리는 것이다. 그리고 그 책이 나에게 바라는 실천 행동들을 "훈련"하는 것이다.

 

그러다 보니 요즘은 "집약적인", "의도적인", "학습", "훈련", "수련" 들이 내 학습의 키워드가 되었다. 한 책을 읽고 또 다른 읽고 싶은 책을 읽어버리는 것보다는 그 책을 다시금 읽고 또 다시금 읽어 집약적인 학습을 하고, 시간과 노력을 할애하여 의도적으로 그 책의 내용을 머릿속으로 끄집어 내 보는 것이다. 이런 키워드들을 생각하다보니 자연스럽게 "의도적 수련"이라는 용어를 접하게 되었다.

 

 

김창준 멘토님 (예전에 소프트웨어 마에스트로 프로그램할 때 멘토님이셨었기에 나는 이 분을 멘토님으로 부르는 것이 편하다.) 이 작성하신 http://egloos.zum.com/agile/v/5749946 글을 읽고서 내가 하고 있는 의도적 수련에 대해서 나의 시간과 노력을 할애하여 의도적으로 고민해보고자 한다. 앞서 계속 나의 부끄러운 습관을 말해왔지만, 솔직히 과거에는 어떤 글을 읽어도 한 1-2초 생각했을까, 그냥 내용을 받아들이거나 아예 까먹어버리거나 했을 뿐, 나 스스로 적어도 몇수십분에서 몇시간을 들여서 혼자만의 생각을 해보는 시간을 가져본 적이 거의 없다고 본다. 이번 기회에 그런 습관을 타파하고 100개의 글을 읽기만 하고 넘겨버리는 것보다 하나의 글을 읽고 혼자서 깊이 생각해보는 시간을 가지는 습관을 들여보고자 한다. 

 

하여간, 저 글에 있는 내용에서 핵심은 두 가지 파라미터가 어울려야 최고의 몰입을 경험하고 최대의 학습능력, 퍼포먼스를 보일 수 있다고 한다. 1) 자신이 느끼는 난이도와 2) 자신이 느끼는 실력 (자기효능감) 이다. 

  • 난이도 < 실력
  • 난이도 = 실력
  • 난이도 > 실력

위 세 경우가 존재할 것이고, 가운데 경우가 가장 최고의 학습 위치라는 것이다. 여기까지는 사실 늘 읽던 글처럼 정보를 생각없이 받아들이고 있었는데, 그 다음의 그래프와 각각의 사례 설명을 보고 깊은 생각에 빠지게 되었다.

현실적으로 난이도와 실력이 비슷한 환경에 처하기는 사실 쉽지가 않다. 이 말은 즉슨, 내 실력에 정확하게 적절한 난이도의 업무만 항상 하게 된다는 것인데, 회사든 학교든 그런 이상적인 일은 많이 발생하지 않을 것이다. 팀장이나 리더의 관점에서는 사실 팀원의 실력에 맞는 난이도의 업무를 배치하는 능력 또한 중요할 것인데, 그것은 그 자체로 또 다른 주제의 연구가 필요할 것이다.

 

어쨌든 우리는 자주 [난이도 < 실력] 혹은 [난이도 > 실력] 의 상황에 처하게 될 것이다. 난이도 > 실력의 경우에는 불안함을 느끼고, 난이도 < 실력의 경우 지루함을 느끼게 된다. 이 때 최고의 학습 몰입, 퍼포먼스를 얻기 위해 a1,a2,b1,b2 총 4가지 시도를 함으로써 난이도와 실력을 align할 수 있는 것이다.

 

각각의 설명과 사례 설명은 사실 원글에서 훨씬 더 잘 하고 있고, 이 글의 목적은 원글을 다시 설명하기 위함이 아니라 나라는 사람이 a1,a2,b1,b2를 어떻게 해왔고 어떻게 할 것인가? 에 대한 생각을 써보기 위함이다. 

  • a1: 본인의 실력을 낮춤. ex. 평소에 쓰던 도구를 쓰지 않는다.
  • a2: 문제의 난이도를 높임 ex. 해야 할 업무에서 부가 업무를 추가한다.
  • b1: 문제의 난이도를 낮춤 ex. 어려운 문제를 쉬운 문제로 변환한다.
  • b2: 본인의 실력을 높임 ex. 사회적 (전문가의 도움) /도구적 (새로운 도구) /내재적 접근

이런 방식으로 생각해낸다는 것도 되게 신기했다. 일단, 이 4가지 중에서 b1만큼은 내가 자주 쓰던 방법이다. 어려운 문제를 맞이하면 쉬운 문제나 부분문제로 "reduction" (알고리즘 용어 관점에서 ㅎㅎ) 하려는 습관이 있다. 다만, b2에서의 내재적 접근은 부족한 것 같다. 나의 비슷한 경험을 토대로 비유적으로 해결하는 방법인데, 아직까진 나는 나에 대해서 잘 모르고 나의 이전 경험들에 대해서 깊은 고민을 해보지 못한 사람이라고 생각한다. 아주 사소한 문제라도 문제를 풀었던 방법, 그 때의 생각, 고민을 기록하고 복기해야 할 필요성을 느끼게 되었다.

 

a1, a2는 지루할 때의 상황의 해결책(?)인데, a1,a2는 내가 전혀 고려를 해보지 못한 방법들인 것 같다. 왜냐하면 내가 풀기에 쉬운 문제는 풀어버린 다음에 더 고민을 하지 않았던 것 같다. a2와 같이 문제의 난이도를 높여볼 수도 있는 것이고, 반대로 자기의 실력을 낮춰볼 수도 있는데 (a1) 말이다.

 

a2 전략은 뛰어난 프로그래머들이 자주 쓰는 전략이라는데, 뜨금하면서도 부족함을 느낀다. 반성한다. 특히 여기서 자신만의 도구/방법 만들기가 중요하다고 하는데, 아직 나는 나만의 코드 스니펫 도구가 있지는 않은 것 같다. 뭔가 알게 모르게 반복화된 코드들이 있고, 그것을 재사용하거나 클린 코드로 만드는 습관은 있으나, 그것을 나만의 무기처럼 엮어두고 언제든지 빼서 쓸 수 있는 형태로 만들어두지는 못했다. "남들보다 일을 효율적/효과적으로 하기 위해 내가 직접 만들어 쓰는 나만의 도구/방법"을 만들어두어야 겠다.

 

a1 전략으로는 평소에 쓰던 도구를 덜 쓰는 것이 대표적인 예이다. 구체적인 예를 들면 컴파일을 더 적은 빈도로 돌리는 것이다. 나는 코드 뿐만 아니라 거의 모든 문서를 무결하고 완벽하게 쓰고 싶어한다. docx를 쓸 때는 ctrl+S를 거의 매10초마다 한번씩은 누른다. 코드 또한 작은 테스트 코드를 거의 몇 수십번을 돌려가며 코드를 짠다. 간단히 말하면 컴파일과 테스트가 바로 즉각되는 작은 코드 루틴을 만들고 컴파일을 자주 한다는 뜻이다. 코드가 완전하게 돌아가고 무결하게 돌아가는데 있어서는 최고의 습관이라고 자부한다. 그러나, 다시 한번 생각을 해보면 머릿속으로 알고리즘을 돌리는 연산은 덜 한다는 뜻이 되기도 한다.

 

그러니까, 나는 큰 로직에서의 알고리즘은 당연히 머릿속으로 생각하지만 세부적인 디테일적인 알고리즘은 머릿속으로 생각은 덜 하고 도구에게 맡긴다는 것이 된다. 솔직히 이런 습관은 현업에서는 좋은 것 같으면서도 알고리즘 인터뷰를 준비하는 입장에서는 별로 안 좋은 듯 하다. 알고리즘 인터뷰를 할 때는 손코딩이나 세부적인 로직까지 컴퓨터의 도움없이 진행해야 하는 경우가 많은데 확실히 그런 측면에서는 약한 점을 보인다. 가끔은 a1전략을 위해 도구의 도움없이 깊은 고민을 해보는 연습도 필요한 것 같다.

 

 

이번 글을 쓰면서 반성을 많이 했다. 특히 원글이 좋았던 이유 중 하나는 프로그래머로써 확실하게 공감이 가는 정확한 예시들을 소개했다는 것이다. 그러다 보니 단순하게 더 잘해야겠다~ 이런게 아니라 확실하게 뭘 해야겠다는 반성이 되었다. 앞으로 열심히 살아야겠다~ 이런 느낌을 주는 글이나 영상은 무수히 많지만, 정확한 방법론적인 수준까지 (당장 act할 수 있는? 아니면 머릿속으로 기억이 확실하게 남을 수 있는?) 반성하게 되는 계기를 주는 글/영상은 많지 않은 듯 하다. 글도 서두없이 막 썼는데, 앞으로 이렇게 혼자서 글을 써보고 나에 대해서 깊은 고민을 해보고 시간을 쏟고, 의도적으로 수련하고 연습하는 생각을 해야겠다.

+ Recent posts