2023 수시 합격생 릴레이 인터뷰 | 성균관대 소프트웨어학과 이현우

“생각을 현실로 구현하는 프로그래밍의 매력”

2023-03-23 16:52:29 게재

호기심이 많았던 성균관대 소프트웨어학과 이현우씨는 궁금한 점이 있거나 풀어야 할 문제가 있으면 끝까지 매달려 해결하려고 노력했다. 매일 제출해야 했던 건강상태 자가진단을 편리하게 작성하도록 만든 자가진단 매크로 앱 역시 문제 해결 과정에서 나온 산물이었다. 누적 다운로드 수가 약 1만3천 회에 이를 정도로 인기를 얻었지만 앱 운영을 중단할 수밖에 없었던 경험을 통해 많은 것을 배우고 느꼈다.

     
이미지확대
이현우 | 성균관대 소프트웨어학과 (대구 영남고등학교) 사진 이의종      
?
편리함을 위해 만든 자가진단 매크로 앱
  코로나19 상황에서 학생들은 매일 자신의 건강상태를 자가진단해 제출해야 했다. 작성을 종종 잊어버리곤 했던 현우씨는 손쉽게 작성해 제출할 수 있는 자가진단 매크로 앱을 만들었다.   “원래는 제가 사용할 목적으로 만들었지만 긍정적인 친구들의 반응을 보면서 ‘사람들의 삶을 편하게 만들고 싶다’는 평소의 생각을 실천에 옮길 좋은 기회라고 판단했어요.”   사람들이 편하게 사용할 수 있도록 앱의 성능, 안정성, 편리성을 세심히 살펴 개선한 후 인터넷에 공유했다.   “나중에 살펴보니 누적 다운로드 수가 1만3천 회에 이르더라고요. 자가진단 사이트의 업데이트를 반영해 계속 앱을 수정해야 했기 때문에 다소 번거로웠죠. 하지만 사용자가 늘어감에 따라 책임감이 커졌어요. 1년 넘게 학업과 병행하면서 앱을 보수·유지하느라 꽤 힘들었지만 그만큼 뿌듯했던 프로젝트였습니다.”   그러던 중 교육청으로부터 인터넷상에서의 앱 배포를 중단하라는 메일을 받았다.   “앱에 분명히 ‘건강상태가 좋지 않다면 매크로 예약을 취소하고 공식 사이트나 앱에서 자가진단을 하시길 바랍니다’라는 문구를 통해 발열 등 문제가 있을 경우에는 따로 입력할 것을 명시했지만, 교육청은 혹시 통계가 제대로 잡히지 않을 상황을 우려했던 거죠. 친구들은 본인의 일인 듯 관련 법률을 찾아주고, 기관에 연락하도록 도와줬습니다. 이 앱으로 도움을 받는 사람들이 생각나 내리고 싶지 않았지만, 자가진단 자동화의 편의성보다는 전염병 상황의 정확한 확인이 중요하다는 데 동의했어요. 앱 운영은 중단했지만 열정을 쏟았던 그간의 노력과 어려운 상황을 함께 헤쳐나갈 수 있도록 도와준 친구들의 따뜻한 모습은 기억에 남았습니다.”    
<통합과학> 속 생태계 평형을 프로그래밍으로 구현
  호기심이 많아 교과 공부를 하면서 ‘왜?’라는 질문을 수없이 던졌고 대답을 찾을 때까지 고민했다. <수학II> 시간에 배운 극한의 정의가 모호하게 느껴져서 엡실론-델타 논법을 기반으로 지수함수의 연속성과 사잇값 정리를 증명해보기도 했다.   “지수함수의 연속성을 증명해보면서 엡실론-델타 논법의 의미를 이해할 수 있었고, 왜 조건문을 이용해서 정의했는지도 알 수 있었습니다. 또 사잇값 정리의 증명을 찾아보면서 우리가 알던 극한의 개념과 어떻게 이어지는지 깨닫게 됐죠. 이 과정에서 명제 논리나 실질 조건문도 알게 되면서 수학의 엄밀함과 체계성에 매료됐어요.”   1학년 <통합과학>에서 생태계 평형을 배운 후 실제로 생태계 평형이 이루어지는지 알고 싶어서 개체의 질량과 수, 에너지 효율 등을 이용해 가상의 생태계 시뮬레이션을 구현했다.   “프로그램을 실행해본 결과 생태계 평형이 이루어지는 것을 확인할 수 있었지만, 도출한 통계치가 실제로 유의미한지 의구심이 들었어요. 이후 문제점을 개선해서 2학년 때는 물리적인 시뮬레이션으로 생태계를 구현해봤어요. 포만감, 목마름, 시야 범위, 최대속도 등 다양한 형질을 추가했고 나름 유전과 번식도 고려해 만들었죠. 또한 부족했던 시각 자료를 보완하기 위해 간단한 3D 모델링을 이용해서 실제 모습을 구현했습니다. 하지만 시뮬레이션 과정에서 오류, 오차 등의 문제로 생태계 평형과 같은 현상을 실제로 만족시키기 쉽지 않았어요. 물리적 시뮬레이션은 국지적인 규모에는 적합하더라도 거시적인 관점에서 의미 있는 결과를 내기엔 부적합하다고 판단했습니다. 생태계 평형에 대해 1학년 때는 수학적 모델링으로, 2학년 때는 물리적 시뮬레이션으로 구현했지만 결국 접근은 1학년 때 시도했던 수학적 모델링이 더 적합하다는 결론에 이르렀어요. 시행착오를 겪었지만 <통합과학> 속 생태계 평형을 가상의 상황으로 프로그래밍해 구현해보면서 프로그래밍에 한층 더 매력을 느낀 건 분명한 사실입니다.”    
공동 교육과정 적극 활용
  “<고급물리학> 수업을 통해 깊이 들어갈수록 더 정교해진 식으로 배운다는 사실을 알게 됐어요. 매력적이었죠. 예를 들어 속도는 변위를 시간에 대해 미분한 것이고, 힘은 운동량을 시간에 대해 미분한 것, 일은 힘과 미소 변위의 내적을 선적분한 것임을 알 수 있었습니다. <프로그래밍> <응용프로그래밍개발>은 공동 교육과정으로 이수했어요. 여러 학교 학생들을 만날 수 있고 이수한 내용은 학생부에 기재된다는 장점도 있어 학생부종합전형을 고려한다면 공동교육과정은 꼭 들어야 한다고 생각해요.”     고2 선택 과목은 수능까지 고려해 결정하기   “학교 선생님께서 의대 진학이 가능한 내신 성적이라면서 지원을 권유하셨어요. 수시 6장 중 3장은 제가 원하는 공학 쪽으로, 나머지 3장은 의대를 썼는데 수능 최저 학력 기준을 맞추지 못했어요. 원래 생각했던 진로가 아니라서 그런지 고교를 졸업하고 나니 의대 생각은 싹 사라지더라고요. 고3 때 점수가 되면 의대를 지망해보는 분위기에 휩쓸렸다는 생각이 들었습니다. 생각보다 제 귀가 팔랑귀였더라고요. 하하.”   다만 후배들은 고2 과학탐구 과목을 정할 때, 수능에서 치를 과목까지 고려해서 선택하길 바란다고 조언했다.   “학교에서 과학탐구 과목을 세 과목 선택하도록 해, 관심사에 따라 2학년 선택 과목으로 <물리학Ⅰ> <화학Ⅰ> <생명과학Ⅰ>을 선택했고 3학년 진로선택 과목은 <물리학Ⅱ>와 <화학Ⅱ>를 선택했죠. 자연스럽게 수능에서 <물리학Ⅰ>과 <화학Ⅰ>로 시험을 쳤어요. 만만치 않더라고요. 게다가 2023학년 대입에선 과학탐구가 어려웠죠. 고3은 수능 공부할 시간이 충분하지 않아 재수생에 비해 아무래도 불리해요. 수능을 치르고 나니 응시생이 많은 <지구과학Ⅰ>이 확실히 수능에서 강점이 있다는 것을 느꼈어요. 이 부분을 알았더라면 고2 선택 과목으로 <지구과학Ⅰ>을 선택했을 것 같아요.”   인터뷰가 끝난 후 코딩 동아리 면접이 있다고 했다.   “3단계 전형으로 동아리 부원을 선발하는데 들어가기 쉽지 않다고 들었어요. 합격해서 관심사가 비슷한 사람들과 함께 프로그래밍 작업도 열심히 하고, 학교생활도 신나게 해보고 싶습니다.”
김민정 내일교육 리포터 mjkim@naeil.com
내일교육 기자 기사 더보기