언젠가 한 번쯤 개발자로서 강의를 해보고 싶은 분들을 위한 글.
2019년 11월
https://brunch.co.kr/@chickenmoim/11
강의를 처음 제안받고 나서,
강의를 진행하는 과정과 강의의 장단점들을 한번 글로 작성해 보았는데요.
벌써 2023년 1월이 되었네요.
3년 하고도 2개월이 지났습니다.
지난 글로 CTO의 역할과 현재 하고 있는 업무들에 대해서 기재를 해보았었는데요.
첫 강의 이후에 달라진 것들을 한번 정리하고,
회고 및 공유를 해볼까 합니다.
지난 첫 패캠의 온라인 강의를 진행했을 당시,
사실 15시간 강의에 대해서 너무 얕본 측면이 있었는데요.
3개월간 고생을 하고 나서, 온라인 강의를 진행한다는 것은 마치 영혼을 불살라서 후대에게 자식을 남겨주는 심정으로 한 땀 한 땀 교안도 작성하고, 내용도 정리하고, 어떻게 알고 있는 내용들을 정리해서 보여주어야 할지 정리해야 하는 작업이었는데요.
해당 강의를 오픈하고 난 뒤 2년이 지나고,
해당 강의는 사라지게 되었습니다.
그 이후 진행한 강의
3년이 지난 사이 회사에서의 업무도 다양한 일들이 있었지만,
강의도 다양한 강의들을 진행했었는데요.
. 패스트 캠퍼스 - Spring Boot 프레임 워크 강의 - JPA 강의 - 온라인
. 중앙 ICS [한기대] 클라우드 인프라 네트워크 구성 - 온라인 강의
. KB증권 신입사원 DT 역량 강화 강의 - 비대면 강의
. 웰컴 저축은행 - 재직자 대상 프런트 엔드 역량 업스킬링 과정 강의(오프라인)
. K-Digital 훈련[한국공학대학교] - 서버 강의(온라인+오프라인)
. 스마일 게이트 스토브 신입 인턴 교육과정 강의(오프라인)
. 신한 투자 증권 프로 디지털 아카데미 DevOps 강의(오프라인)
패스트 캠퍼스를 통한 스프링 부트 강의를 시작으로,
한기대, 한국 공학 대학교에서도 서버 관련 강의를 했고,
KB증권, 신한 투자 증권에서도 신입사원 대상, 교육자들 대상으로도 강의를 진행했는데요.
첫 devOps 강의를 진행한 이후에 다양하게 컨택을 주셨고,
시간이 되고 기회가 되는 경우 몇몇 강의들을 진행해 왔습니다.
강의를 통해 얻은 점
강의를 통해서 얻게 된 점은,
강의 교안을 준비하는 과정을 통해서,
공부하고 있고, 알고 있고, 실제로 적용하고 있던 많은 데이터들을
정리하게 된다는 점입니다.
실제로 강의에 들어가기 앞서서,
주로 강의에 사용하는 소스의 경우는 제가 나름대로,
강의용 페이지를 만들어서, 공유하고,
관련 소스들을 직접 테스트해볼 수 있도록 해드렸는데요.
devOps의 경우, 강의 교안을 만들거나 할 때,
실제 사례를 표현하기 어려운 경우들도 많기 때문에,
진짜 내부에 사용하고 있는 지라의 버전과 강의에 사용된 지라의 버전이 달라 힘든 경우도 있고,
강의를 하는 중간에 이 내용은 꼭 들어가야 한다고 해서,
강의 중간에 강의의 내용을 추가하는 경우도 있었지만,
강의를 한다는 자체를 통한 '성장'이 추가적으로 있지 않았나 생각해 봅니다.
실제로
아이고고에서는
제가 진행했던 강의를 신입 사원 대상으로 교육해주기도 했었는데요.
그만큼 강의에 대해서 한번 해당 내용들을 정리하고,
흐름이 만들어지고, 해당 내용이 공유되고 나면, 비슷한 플롯의 강의에 대해서는 조금씩 자신감이 더 생기는 차원이 있는듯합니다.
그리고,
'강의가 강의를 부른다'
강의 제안이 들어오면, 기존의 강의 히스토리를 요청하는 경우들이 있는데요.
이미 강의를 한 이력이 있다면, 추가적으로 다음 강의가 성사(?) 될 가능성이 높습니다.
그리고, 강의를 잘한다고 개발을 잘하는 것도 아닐 테고,
개발을 잘한다고 강의를 잘하는 것도 아닐 텐데요.
그럼에도 불구하고, 강의 이력이 있을 때, 면접을 볼 때 주는 '신뢰감'이 추가로
생기는듯합니다.
면접에서 강의를 많이 어필하지는 않았지만,
강의를 한 이력들을 보면, 그래도 어느 정도의 이해도는 있겠다는 생각은 들 테니 말이죠.
일과 강의의 밸런스
회사의 업무와 병행하면서 강의를 할 수 있을지 의문이 들 수 있는데요.
대부분의 강의는 밤늦게 교안을 작성하거나 주말을 이용합니다.
최대한 회사에 지장을 주지 않는 선에서 강의를 받고 진행해 왔습니다.
다만, 가정(?) 에는 조금 영향을 준듯하네요.
실제로 시간이 좀 필요한 경우는, 회사와 어느정도 합의후에, 회사의 연차들을 사용해서, 강의를 진행했는데요. 시간을 잘 정리해서 사용해야 이런 일도 할 수 있는 듯합니다.
치킨모임의 모임장으로써 모임을 운영하는 일.
CTO로써 회사의 업무를 분류하고, 과업을 성취하는 일.
개발자로서, 강의를 제작하고, 다른 사람에게 무엇인가를 전파하는 일.
예전에, 드라마나 웹툰, 게임, 독서 모임 등을 통해서, 취미활동의 영역들을 해왔는데요.
회사의 '일'을 하기 시작한 이후로는 개발자로서의 스펙과 '성장'에 대한 끊임없는 생각들을 해온듯해요.
그 결과 회사를 다녀오고, 집에 와서, 일반적인 취미 활동들을 한다기보다는,
개발과 관련된 연장선의 생각들을 많이 하게 되고,
그 결과 '강의'와 같은 일도 생각하게 되지 않았나 생각해 보네요.
치킨 모임을 운영하는 모임 초기에는
제가 무료로 진행하는 안드로이드 스터디 모임을 4회 차까지 리드하면서 진행했었는데요.
아마도 그런 과정들 하나하나가 모여서, 지금 이런 일들을 수행할 수 있게 된 게 아닌가 싶네요.
결과적으로는, '몰입'에 대한 차이가 이런 것들을 가능하게 하지 않았나 생각해 보네요.
아직도, 강의에 대해서는 그런 생각을 합니다.
남에게 가르치기 위해서는 그 내용을 더 딥하게 이해해야 하는데,
그게 공부가 되고, 공부를 멈출 수 없게 하는 또 다른 요인이 된다고 생각합니다.
강의가 들어오는 경로
프리랜서가 일이 들어오는 경로와 비슷한듯합니다.
첫 패캠을 통해서 강의가 들어온 뒤로,
다른 교육업체들에서도 강의들이 들어오게 되었고,
브런치를 통해서도 강의가 들어왔고,
강의 평가가 나쁘지 않게 나오고 나니,
자연스럽게, 다른 기업으로, 다른 곳으로 추천이 흘러갔습니다.
재미있는 것은,
엄청 유명한 대기업도 아니고,
엄청 유명한 책을 쓴 것도 아니고,
모임을 운영하기는 하지만, 그게 저의 개발 강의를 할 수 있는 사람이라는 것을 보증하지는 않는데,
그럼에도 불구하고, 계속 강의 제안이 들어왔다는 것입니다.
물론 CTO란 타이틀이 있지만,
그건 세미나에서나 먹히는 타이틀입니다.
이름 없는 회사에 대해서, 학생들은 관심도 없고, 실제로 CTO가 뭐지? 하는 경우도 많아서,
실제로, 그 학생들이 무엇을 얻는가?
이것에 포커스를 가지는 게 중요한 것이라고 할 수 있는데요.
안드로이드의 기본 개념을 학습할 때는,
생명주기, 라이프 사이클에 대한 설명을 기본적으로 진행합니다.
마찬가지로, 개발이라는 것을 잘 모르는 학생들의 경우,
눈앞에서, 자기가 만든 혹은 수정한 웹사이트가 실제로, 구동되고,
자기가 수정한 내용이 반영되고, 동작하게 만드는 것.
즉,강의를 듣는 사람이 흥미를 갖게 만들어야, 강의가 성공한다고 생각합니다.
그래서,
저는 IF, FOR 이런 기본적인 문법 학습보다는,
카카오톡으로 회원 가입이 되게 하고,
검색했을 때 결과가 눈에 보이게 하고,
AWS에 소스를 올려서 동작하게 하는 것을 시작으로 살을 붙여나가는 방식을 선호합니다.
막연한 것들이 막연하지 않고 실제 하게 만드는 것
그렇게 시작하는데요.
강의는 그래서, 입소문과, 제안을 통해서 들어옵니다.
강의를 하는 두려움 극복하기
온라인 강의를 할 때도,
오프라인 강의를 할 때도,
처음 뭔가를 하면 늘 두려움이 있습니다.
내가 잘할 수 있을까?
나보다 잘하는 사람은 많은데 역량이 될까?
떨면 어떡할 것인가?
학생들이 반응이 없으면 어떡할 것인가?
내가 한 강의가 그들에게 의미는 줄 수 있는가?
다양한 고민들이 없지 않습니다.
아마도, 처음 페어 프로그래밍을 하는 심정과 비슷하지 않을까 싶습니다.
내 소스를 누군가 본다면, 엄청 부끄럽지 않을까? 타박하지 않을까? 이런 걱정과도 같은 거죠.
3년 전 첫 마음은 그랬습니다.
직장도 처음이었던 시절이 있고,
대학생도 신입생이었던 시절이 있습니다.
군대도 이병 시절이 있는 것처럼요.
결국, 어떤 일을 하기로 마음먹었다면, 익숙하지 않은 시점이 존재하는데요.
그 시점들을 지나 돌이키게 되면,
또 어쩌면 너무 익숙해져 버리는 부분도 있는듯하네요.
언젠가 익숙함에 발을 담그게 된다는 것을 미리 알고 있다면,
첫발은 조금 더 가벼워지지 않을까 생각해 보네요.
강의를 해보고는 싶지만, 여러 가지 핑계와 이유 때문에
아직 시도도 못해보신 분들이 계시다면, 비슷한 고민들을 했었고,
그리고 그것들을 극복했을 때, 또 펼쳐지는 새로운 것들이 있음을 말씀드려보고 싶습니다.
온라인 강의와 오프라인 강의의 차이
두어 번의 온라인 강의와
오프라인 강의를 하면서 느꼈던 생각들을 간단히 정리해보려고 합니다.
우선 온라인 강의의 경우,
해야 하는 강의의 분량에 대해서 확인이 필요합니다.
또한, 강의 자료를 어떤 수준으로 얼마큼 만들어야 할지도 생각을 해야 하고,
또 이론만 있는 것인지, 이론 + 실습을 강의로 만드는 것인지, 소스는 어떤 수준으로 제공해야 하며,
보는 학생들의 수준은 어느 정도인지를 체크해야 하는데요.
온라인 강의의 경우, 분량이 중요하고, 발음이나, 시선처리도 중요합니다.
오프라인 강의의 경우, 눈앞에 대상이 있기 때문에 대상에 대한 이해도에 따라서, 강의의 레벨이나 시간들을
자유롭게 조절할 수 있지만,
온라인 강의의 경우, 해당 부분에 대한 조절이 불가능하다는 점이 단점이라고 할 수 있겠네요.
다만, 온라인 강의의 경우, 스크립트를 미리 잘 짜면, 강의 전에 조금 더 당황하지 않고, 강의를 부드럽게 할 수 있는데요.
오프라인의 경우는 딱딱하게 정해진 멘트를 하는 것이 아니라,
해당 상황에 따라서, 자연스럽게 강의를 진행해야 한다는 점이 있습니다.
오프라인 강의의 경우, 실무자와 신입, 전공자와 비전공자에 따라서 확연한 레벨차이가 존재하는데요.
따라서, 강의 레벨을 맞추기가 어려운 경우들이 존재합니다.
특히나 이미 알고 있는 것들을 재 학습하는 경우는 레벨이 낮아서 재미없다고 느낄 수 있고,
너무 난이도 있게 어려운 내용을 다루는 경우, 따라가기 어렵다고 느껴서 또 강의가 힘들다고 느낄 수 있는데요.
그래서, 오프라인 강의의 경우, 미리 알 수 있다면,
해당 강의를 받는 사람들의 성향들을 미리 파악하는 것이 중요합니다.
그리고,
온라인이든, 오프라인이든, 개발 강의의 경우는,
직접 소스를 개발해서, 배포하는 경우가 많이 있는데요.
약간의 디자인이 가미된 화면이라면, 조금 더 성취감이 있지 않나 생각해봅니다.
웰컴 저축은행과 KB증권 신입 사원 경우는 프로젝트 진행 시에
실제로 팀을 짜서 진행했고, 해당 팀의 아이디어를 반영한 프로젝트의 구현을 도와주었는데요.
일상에서 사용 가능한, 계산기, 맛집 목록, 네이버 지도 연동, 오늘의 메뉴, 오늘의 일기 등
다양한 아이디어들을 실제로 '구현' 할 수 있도록 하면서,
성취감을 높였는데요.
강의마다의 '특성'을 이해하고 접근하면, 그만큼의 만족도가 있던듯합니다.
강의를 도전하는 개발자들에게 해주고 싶은 말
세상에는
너무 잘하는 사람이 많습니다.
저도 존경하는 분들이 많이 있고,
주변에 강의도 잘하시고, 책도 쓰시고, 유명하신 분들을 보면,
동경하는 마음도 들고, 주눅이 들기도 하는데요.
'어차피 인생은 마이웨이'라는 말도 있지만,
해보지 않고 결과는 모르는 것이고, 주사위도 던져봐야 안다는 이야기가 있죠.
처음 스타트업에 발을 내딛을 때도 그랬습니다.
망할 수도 있고, 절망할 수도 있고, 실패할 수도 있지만,
도전하지 않으면, 결코 그다음을 볼 수 없으니까요.
아마도 지금도 가끔 블로그를 열심히 하다가 우연히 강의 제안이 들어왔는데,
내가 과연 할 수 있을지 없을지 망설이는 분이 계실지도 모르겠네요.
그리고 어쩌면 작은 회사의 팀장으로서,
혹은 큰 회사의 작은 리더로서,
사수 없이 홀로 성장한 개발자로서,
주변 사람과의 깊이를 가늠하면서, 내가 할 수 있을지 없을지 망설이는 분들에게,
한번 '시도'해보라는 말씀을 해 드려 보고 싶네요.
개발자로서, 강의가 최종 목적지는 아닙니다.
책을 쓰는 것도 최종 목적지는 아니죠.
하지만, 한 번쯤 해보고 싶은데 도전을 못하시는 분들에게 '용기'를 드려보고 싶네요.
차곡차곡, 레퍼런스가 쌓여 나갈 수 있도록 말이죠.