2024년이 끝났다.
2024년은 유난히 긴 한 해가 되었던 것 같다.
아쉬운 점
상반기에는 프로젝트가 무산되는 등 힘든 일이 많았지만 하반기에는 그래도 좋은 일이 많이 있었던 것 같다.
우선, 현장실습 인턴으로 미리디에 입사하여 약 4개월간 서비스 유지보수 및 고도화 작업을 할 수 있었다.
이와 함께 상반기부터 하던 공모전과 오픈소스 컨트리뷰션도 함께 참여했기 때문에 바쁜 하반기가 되었다.
이번 하반기에 아쉬웠던 점으로는 체력 관리와 규칙적인 생활 패턴을 유지하지 못했던 것이다.
8시부터 11시 사이에 출근하면 되는 자율 출퇴근제를 운영하는 회사였지만 나는 일찍 퇴근하는 것이 좋아 8시 30분에 출근을 하고자 했다.
이렇게 되면 퇴근은 5시 30분에 하기 때문에 집에 와서는 개인적인 공부와 다른 작업들을 할 수 있을 것이라 생각했다.
하지만, 점점 시간이 갈 수록 내 출근 시간은 9시 30분에 가까워졌다.
퇴근하면 무언가를 할 수 있을 것이라 기대했지만 생각보다 낮에 많은 에너지가 소모되었고 집에 와서는 거의 아무것도 할 수 없었다.
계획했던 것들을 제대로 할 수 없었으며 날씨가 추워지면서 출근 시간이 점점 늦어지게 되었다.
퇴근하고 남는 시간에 뭐든지 할 수 있도록 규칙적인 생활과 체력 관리의 중요성을 다시 한 번 느끼게 되었다.
잘한 점
회사에서 업무를 수행할 때 기존에 습관처럼 하던 문서화가 많은 도움이 되었다.
문서화라고 해서 거창한 것이 아니라 문제를 정의하고 해결 방법에 대한 가설을 세우고 이에 대해 실험한 뒤 결론을 도출하는 일종의 연구노트와 더 가까운 것 같다.
이렇게 문서화를 하게 되면 내가 어떤 생각을 갖고 어떤 행동을 했는지 조금 더 기억하기 쉬울 뿐만 아니라 다른 사람이 이 작업의 히스토리를 파악하는 과정이 좀 더 수월할 것이라 생각한다.
업무적
업무적으로 위와 같은 문서화 뿐만 아니라 기존에 알고 있던 CS 지식들을 활용하여 문제를 해결할 수 있었다.
시간이 오래 걸리기는 했으나 결코 깊이가 얕다고 볼 수 없는 문제였다는 피드백을 들을 수 있었으며 이를 해결했을 때 엄청난 성취감을 느꼈다.
이 문제의 핵심은 JS에 있는 이벤트 루프의 내용 중 마이크로 태스크 큐와 매크로 태스크 큐의 우선순위와 관련되어 있었다.
Promise의 경우 마이크로 태스크 큐에 포함되며 setTImeout은 매크로 태스크 큐에 포함되는 개념이다.
이 두 비동기 방식은 모두 콜스택이 비어있을 때 실행된다는 특징이 있다.
또한, 여러 종류의 비동기 방식을 처리하기 위해 JS의 이벤트 루프에서는 각 단계에 우선순위를 두고 있다.
마이크로 태스크 큐가 매크로 태스크 큐 보다 우선순위가 높다.
문제가 발생한 부분은 매크로 태스크 큐에 있는 콜백함수가 실행되기 전 마이크로 태스크 큐에 있는 콜백함수에 의해 특정 값을 참조하기 때문에 발생한 문제였다.
이를 해결하기 위해 다시 한 번 이벤트 루프에 대해 배울 수 있었고 코드 베이스의 실행 흐름을 도표로 나타내는 과정을 통해 코드 베이스에 대해 보다 더 깊은 이해를 할 수 있었던 것 같다.
마찬가지로 문서화를 통해 동료 개발자에게 이 문제에 대해 쉽게 설명할 수 있었고 이 문제의 근본적인 해결 방법을 제시할 수 있었다.
위에서 언급한 내용 이외에도 다양한 문제들을 마주할 수 있었고 서비스의 특성상 CS 지식이 받쳐주지 않는다면 어떻게 해결할 수 있을지 막막했을 것 같다.
다시 한 번 기초가 중요함을 깨닫는 계기가 된 것 같다.
업무 외
업무 외에 하던 다른 활동들을 성공적으로 마칠 수 있었다.
오픈소스 컨트리뷰션의 경우 성공적으로 발표까지 할 수 있었으며 Node.js 팀은 전체 프로젝트 중 1위(장관상)를 수상할 수 있었다.
처음 받아보는 장관상이었으며 몇 개월의 노력으로 배운 점도 많았지만 그 노력들이 결실을 맺을 수 있었기에 더 보람찼던 것 같다.
또한, 상반기부터 진행했던 공모전에서도 최우수 상을 받을 수 있었다.
업무 관리를 위해 노력했으며 주말을 이용해 밀린 작업들을 할 수 있었다.
결과적으로 성공적으로 서비스를 출시할 수 있었고 심사위원들 앞에서 발표할 수 있는 기회도 갖게 되었다.
예전 산업보안 논문 공모전을 제외한 첫 개발 관련 공모전에서 수상을 할 수 있어 좋았던 것 같다.
이 공모전을 하면서 React Native에 조금 더 다뤄볼 수 있었다.
React와는 다른 React Native 만의 매력이 있는 것 같다.
사람들의 일상에 빠질 수 없는 것이 모바일 기기인데 조금 더 많은 사람들에게 내 서비스가 닿게 하기 위해서는 모바일 서비스 개발을 하는 것도 좋은 방법이 될 수 있을 것 같다.
앞으로
현장 실습생일 때 회사에서 수습기간 리뷰를 한 적이 있다.
담당 멘토분과 서로에 대해 피드백하고 앞으로 어떤 것을 새롭게 시도해볼 수 있을지 서로 이야기 하는 자리였다.
여기서 멘토님이 말씀하신 내용이 크게 와닿았다.
이들의 "동료"가 되고자 노력해보면 좋을 것 같다.
이 말이 아직까지 생각나는 이유는 내가 당시에 인턴 신분이었기 때문인 것 같다.
인턴 등으로 새로운 조직에 들어가면 자신을 증명하기 위해 노력하곤 한다.
자신의 실력을 뽐내고자 하는 사람도 있을 것이고, 많은 시간을 회사에서 보내며 스스로의 열정을 보여주는 사람도 있을 것이다.
나 또한 주어진 업무를 성공적으로 끝내기 위한 마음가짐을 갖고 있는 상태였다.
저 말을 들은 후 나름의 충격(?)을 받았다.
별거 아닌 말이라 생각할 수 있지만 최소한 나는 어떤 조직에서 조직원이 되기 위해 가져야 할 진짜 마음 가짐이 저것이라 생각한다.
많은 구인 공고를 보면 "협업 경험이 있는 사람", "다양한 직군과 원활한 소통이 가능한 사람" 등의 조건을 볼 수 있다.
이것이 말하는 것이 단순히 뛰어난 소통 능력을 요구하는 것일 수도 있지만 한 조직에 어떻게 녹아들고 서로를 동료로 의식할 수 있도록 만드는 능력을 요구하는 것일수도 있다는 생각이 들었다.
저 말을 들은 이후 나는 좀 더 많은 질문을 하고자 했으며 모르는 부분이 있거나 내 해결 방법에 대해 의문이 드는 경우 스스로 생각하기 보다는 주변의 동료에게 도움을 요청하고 의견을 듣고자 했다.
이 과정에서 느낀 것은 코드를 스스로 읽고 이해하는데 5일의 시간이 걸린다면 이 코드를 작성한 동료를 찾아가거나 이 작업에 참여한 동료를 찾아간다면 5분만에 끝나는 경우도 있다는 것이다.
동료도 모든 것을 기억할 수는 없지만 최소한 참고할 만한 파일, 코드, 문서 등에 대한 정보를 얻을 수 있다.
질문이 문제를 빠르게 해결하는 방법이 될 수도 있지만, 동료들과 더 많은 얘기를 할 수도 있고 보다 더 가까워 질 수 있는 방법이라 생각한다.
자신의 실력을 보여주는 것도 중요하지만 그와 동시에 개개인이 모여 시너지를 낼 수 있는 방법을 찾는 것도 좋은 방법이 될 수 있을 것이라는 생각을 갖게 되었다.
이러한 생각들을 바탕으로 내년에 어떤 조직에 포함되건 그들의 동료가 되기 위해 노력할 것이다.
2025년이 시작하자 마자 미국으로 교환학생을 갈 예정이다.
미국으로 가서 한 학기를 보내는 것이 나름 도전이 될 수 도 있을 것이라 생각한다.
새로운 사람을 만나고 새로운 환경에서 낯선 사람들과 한국어가 아닌 언어로 대화한다는 것이 부담이 될 수 있으나 이 또한 배울 점이 있을 것이라 기대한다.
내년 한 해는 취업 전 마지막 장기 휴가(?)가 될 것 같기도 하고 나름의 배울점도 있을 것 같다.
2025년에는 조금 더 시간 관리, 건강 관리를 잘 할 수 있도록 노력해야겠다고 다짐한다.
'개발 > 회고' 카테고리의 다른 글
[2024년 상반기] 2024년 상반기 회고 (1) | 2024.08.08 |
---|---|
[네이버 부스트캠프] 네이버 부스트캠프 웹・모바일 8기 수료 후기 (0) | 2023.12.19 |
[네이버 부스트캠프] 네이버 부스트캠프 웹・모바일 8기 그룹 프로젝트 6주차 회고 + 마무리 (0) | 2023.12.19 |
[네이버 부스트캠프] 네이버 부스트캠프 웹・모바일 8기 그룹 프로젝트 5주차 회고 (0) | 2023.12.19 |
[네이버 부스트캠프] 네이버 부스트캠프 웹・모바일 8기 그룹 프로젝트 4주차 회고 (0) | 2023.12.05 |