Episode 4. 어쩌다 마주친 너무나도 어려운 로봇

2023. 6. 11. 22:53취뽀를 향해서/취준일기(완)

Episode 4   |   어쩌다 마주친 너무나도 어려운 로봇

 

 

 

이전 포스팅에서 서술한 것과 같이 대외활동에 관심을 가진 후 보다 많은 활동에 참여하기 위한 노력을 기울였다. 1달간 링커리어의 대외활동 공고를 모니터링한 결과 내가 꿈꾸는 자동차 관련 대외활동은 별로 없음을 깨닫게 되었다. 그렇기 때문에 관점을 바꿔 자동차 산업에서 활용가능한 역량을 기를 수 있는 활동으로 관심 범위를 넓히는 선택을 했다. 그러던 와중 나의 이목을 집중시키고, 현재 내 취업 성공의 첫 스노우볼으로 작용한 교육과정을 찾게 되었다.

 

 

 

1. 모바일 로봇 AI 실무인력 양성 과정 참여

 

한국로봇융합연구원 대외활동 안내문 사진
2021년 한국로봇융합연구원(KIRO) 주도로 진행되었던 모바일 로봇 AI 인력양성과정 / 사진 출처 : 한국로봇융합연구원

 

그 교육은 바로 한국로봇융합연구원(KIRO)에서 진행한 모바일 로봇 인지 및 이동을 위한 AI 인력양성 실무과정이었다. 해당 과정에 큰 매력을 느낀 이유는 크게 3가지였다. 첫째, 현대자동차에서 미래 산업의 핵심 축으로 선택한 로봇이라는 분야에 대해 학습할 수 있을 것이라는 기대가 있었다. 학부 과정에서 로봇공학을 배웠지만, 이동로봇이 아닌 로봇팔 관련 지식을 배웠기 때문에 부족한 지식을 보충할 수 있는 좋은 기회라 생각했다. 둘째, 자율주행 레이싱대회 참가 기회가 제공된다는 것이었다. 자율주행은 자동차 산업의 핵심 변화인 CASE의 한 축이었기 때문에 해당 활동 참여를 통해 자동차 산업 부문에 어필하고자 했다. 셋째, 교육생 취업 현황에서 현대자동차가 포함된 것을 통해 해당 활동이 현대자동차 취업에 도움이 될 수도 있겠다는 판단이 들었다.

 

교육을 참여하기 위해서는 서류 제출 후 면접을 통과해야만 했다. 서류가 통과했다는 사실을 듣고 꿈에 한 발짝 다가간 것 같아 마냥 기뻤다. 그리고 면접에 참여했다. 면접은 3인 1조로 공통 질문을 물어보는 형식으로 진행되었다. 해당 교육을 완료하고 과정 이해에 어려움이 없는지를 평가하는 질문이 주를 이뤘다. 면접을 본 후 나는 가졌던 기대를 접고 반쯤 포기했었다. 내가 생각했던 것과 달리 S/W 역량에 해당하는 파이썬(Python)과 C++ 관련 질문이 나왔기 때문이다. 프로그래밍 언어를 약 2년간 사용하지 않았던 만큼 내가 교육과정에 참여하기에 역량이 부족하다는 것은 자명한 상황이었다.

 

하지만, 4월 즈음 해당 교육과정에 참여할 수 있다는 연락을 받았다. 기쁨과 두려움을 함께 느꼈다. 취업을 위한 나의 플랜대로 일이 진행되고 있다는 점이 좋았지만, 내가 교육을 잘 마무리할 수 있을까라는 불안도 엄습해 왔다. 코딩이라는 내가 정말로 피하고 싶었던 영역을 다시 마주한다는 점이 무서웠다. 그리고 실무프로젝트에서 내가 1인분을 할 수 있을지에 대한 의문점도 있기에 교육을 제대로 참여해 나의 부족함을 보충해야겠다는 다짐을 했다.

 

 

반응형

 

 

2. 교육 진행 과정

 

한국로봇융합연구원에서 초기에 교육이 진행되었던 강남 Uni 로봇 리빙랩 / 사진 출처 : 강남구청 홈페이지

 

2021년 4월 16일, 두근거리는 마음으로 첫 교육에 참여하게 되었다. 교육 참여 전날 전체 커리큘럼을 확인할 수 있었는데 모든 일정이 타이트하게 진행됨을 알 수 있었다. 3월부터 6월까지 실무과정 참여를 위한 이론 교육이 진행되고 이를 위해 파이썬(Python), C++, 코펠리아심(CoppeliaSim), 리눅스(Linux), ROS(Robot Operating System) 플랫폼, 랩뷰(Labview), 컴퓨터비전, 머신러닝/딥러닝과 같은 광범위한 분야를 학습해야 했다. 그리고 이는 전부 로봇의 S/W에 해당하는 영역인 만큼 내가 겪어온 설계, 응력 분석과 같은 지식을 활용할 수 없다는 것을 의미하기도 했다. 흥미로웠던 순간과 어려웠던 순간을 각각 2가지씩 뽑아보면 다음과 같다.

 

Interesting Moment

 

1. 머신러닝 / 딥러닝 실습

머신러닝/딥러닝 학습 과정이 재일 흥미로운 순간이었습니다. 고려대 전자공학과 교수님께서 직접 와서 교육을 진행하시는데 Relu, Sigmoid 등의 개념에 대해 재미있게 강의해 주신다는 점이 좋았어요. 이를 통해 Hidden Layer, 최적화를 위한 경사하강법(Gradient Descent)과 같은 머신러닝/딥러닝 개념에 대해 이해할 수 있었습니다. 또한 구글 Colab을 통해 직접 머신러닝/딥러닝을 구현해 보며 파이썬 코드에 대한 이해를 높일 수 있다는 점이 만족스러웠습니다.

 

2. ROS 플랫폼 활용 실습

ROS 플랫폼을 이용한 터틀봇 작동 실습이 두 번째로 재미있었습니다. ROS 관련 포스팅을 찾아보면 발견할 수 있는 PinkWink, 민형기 박사님께서 강의를 진행해 주셨는데요. ROS를 활용해 GAZEBO, Rviz 등의 가상 환경에서 시뮬레이션 결과를 직접 볼 수 있다는 점이 좋았습니다. 저의 개인 노트북 성능이 좋았으면 더 재미있게 진행할 수 있었을 것 같아요. 그램의 폭발적인 발열량으로 인해 스로틀링이 걸려 프로그램 실행이 더딘 부분만 뺀다면 정말 재미있었습니다.

 

3. 리눅스 운영체제 학습

Window와 다른 또 다른 운영체제인 리눅스에 대해 알아갈 수 있다는 점 역시 큰 도움이 되었어요. 난생처음 접한 리눅스라는 운영체제를 학습함에 있어 어려움이 있었지만, 옆에 앉으신 다른 교육생분의 도움을 받아 어려움을 해결할 수 있었습니다. 너무 많은 명령어에 정신이 없었지만 그럼에도 불구하고 새로운 분야 학습이라는 소소한 재미를 느낄 수 있었습니다.

 

 

반응형

 

 

Difficult Moment

 

1. 코펠리아심

로봇팔의 움직임을 제어하는 코펠리아심이 가장 어려운 순간이었습니다. 파이썬과 C++이라는 프로그래밍 언어에 대한 기초 지식이 없는 상태로 교육에 참여했기 때문에 과정을 진행하며 많은 답답함을 느꼈습니다. 분명히 학교 수업과정에서 로봇의 정기구학과 역기구학을 배웠기 때문에 이론적으로 아는 내용이지만, 이를 구현할 수 있는 능력이 없다는 것이 너무나도 분했던 순간이었어요

 

2. 프로그래밍 언어(Python/C++)

파이썬과 C++을 학습하는 순간이 두 번째로 어려웠습니다. 지금에서는 뭐 나름대로 파이썬도 굴릴 줄 알고 C++도 각 잡고 하면 할 수 있을 것이라는 자신감이 있습니다. 하지만 해당 과정이 어려웠던 이유는 파이썬과 C++을 각각 5일 안에 교육을 마무리했기 때문이에요. 각 데이터 타입이나 구문을 빠르게 치고 나가서 정신이 없었던 기억이 있습니다. 돌이켜보면 기초적인 수준(Python의 경우 Lamda함수, C++의 경우 기초자료구조)의 내용이지만 그 당시에는 많은 어려움을 느꼈다는 점에서 두 번째로 어려운 순간으로 선택했습니다.

 

3. Visual Perception

세 번째는 컴퓨터 비전에 해당하는 Visual Perception 과목이었습니다. 컴퓨터 비전이라는 것에서 알 수 있듯이 Python의 OpenCV 모듈을 활용해 이미지를 처리하고 변형하는 과정이 주를 이뤘습니다. 그때 당시 저는 내가 설마 저런 부분을 하겠어라는 마음가짐에 수업을 가볍게 대했었던 것 같아요. 거기에 더해 해당 교육 기간이 학교 기말고사 및 캡스톤 마무리 과정과 겹쳐 집중이 떨어진 상태로 수강을 진행했습니다. (그리고 귀신같이 실무프로젝트에서 모종의 사건으로 인해 컴퓨터 비전을 담당하게 되었습니다...) 교육 과정만 놓고 보면 다른 과정에 비해 제가 큰 흥미를 느끼지 못했기 때문에 해당 과목 역시 가장 어려운 순간 중 하나로 골랐습니다.

 

 

반응형

 

 

교육 기간이 끝나갈 무렵 고민이 깊어졌습니다. 홍보문에서 나와있는 유명기업에 취업한 사람들은 원래 그런 역량을 갖춘 사람이 교육에 참여한 게 아닐까?라는 생각이 들었습니다. 분명히 배운 점은 많지만 타이트하고 짧은 교육기간으로 인해 내가 이거를 정확히 알고 있다고 하기에는 부족함을 느꼈기 때문이에요. 이런 생각으로 중간에 교육과정을 그만두신 분들도 여럿 계셨습니다. 저 역시도 이런 생각을 가지지 않은 것은 아니지만, 그럼에도 불구하고 아직 과정이 마무리되지 않은만큼 끝까지 해보기로 다짐했습니다.

 

그리고 교육 마무리 2주 전 실습과정 프로젝트 선택이 진행되었습니다. 제가 참여한 당시에는 자율주행 대회 참여, AMR 개발, 웨어러블 로봇 개발 참여, 소셜로봇 개발이라는 4가지 실무프로젝트 중 하나를 선택해야 했습니다. 원래 목표대로였다면 자율주행 대회 참여를 선택했겠지만 웨어러블 로봇 프로젝트를 선택했습니다. 그 이유는 크게 2가지였습니다.

 

첫째, 실무 프로젝트 과정에서 팀에 해가 되면 안된다는 생각 때문입니다. 그나마 알고 있는 기구학 지식을 활용할 수 있는 분야가 바로 웨어러블 로봇 분야였기 때문에 이를 골랐습니다. 실제로 학과 교수님께 메일로 상담을 진행했었고, 이와 비슷한 답변을 해주신다는 점 역시 선택의 이유로 작용했었죠. 둘째, 기업에 직접 가서 프로젝트를 진행할 수 있기 때문이었습니다. 아무래도 산업 현장을 간접적으로 경험할 수 있고 집에서 가까운 지역에 위치한 현장이라는 점이 매력적이었습니다. 그리고 마침내 저는 웨어러블 로봇 개발 분야 과정을 확정받으며 본격적인 실무 프로젝트를 시작하게 되었습니다.

 

- Episode 4 끝 -

반응형