개발 공부 1년차 회고(+소소한 백준 골드 후기)

pengooseDev·2023년 5월 23일
2
post-thumbnail

독학이었지만, 혼자가 아니었다.

2022년 5월. 온라인 작업방에서 VSC 화면을 공유하며 ReactJS 독학을 시작했다.

온라인 작업방에서 화면을 공유하며 공부를 하다보면, 함께 목표를 향해 달려나가고자 하는 동료들 만날 수 있었다.

노마드코더 온라인 스터디(gather)

Discord 온라인 작업방

혼자 가면 빨리 가지만, 함께 가면 멀리 간다.

처음엔 막막했지만, 목표를 향해 달려가는 동료들이 옆에 있었다.
지치면 옆의 동료들을 바라보며 힘을 얻었고, 서로 격려하고 응원하며 각자의 위치에서 묵묵히 성장해 나아갔다.


노마드코더 ReactJS 챌린지

22년 7월. 노마드코더에서 ReactJS 챌린지를 진행하게 되었다.

이전 기수의 졸업생들이 워낙 뛰어났기에, 무조건 1등을 한다는 생각으로 졸업작품을 만들기 시작했다.

Discord의 작업방에 계시는 아티스트분과 협업을 진행했고 Drag&Drop으로 LP판을 LP 재생기로 옮겨 Lofi 음원을 직접 만들어보는 프로젝트를 구현하였다.

> Page Link
> Github

개발자를 시작하며 첫 협업을 하게 된 작품이다.

느낀점은 많지만, 짧게 설명하자면...

아티스트분의 예쁜 그림에 코드로 생명을 불어넣는 일은 정말 설레고 행복한 경험이었다.

정도로 표현할 수 있겠다.


노마드코더 ReactJS TA 제안!

꾸준히 공부를하고 챌린지를 우수하게 졸업하다보니, 운이 좋게도 노마드코더측에서 ReactJS 강의의 TA 제안이 들어왔다.

감사한 일이었다.

그렇게, 노마드코더 식구분들과의 인연은 시작되었다.

다른 개발자분들의 질문들 받아주며, 각 챌린지의 해설을 제작하게 되었다.
답변에 실수가 있으면 안되었기에, 공식문서를 정말 꼼꼼히 탐구하며 질문에 답변드렸다.

질문을 받고 답변하는 과정에서, 모르는 것을 함께 알아가며 함께 성장하는 것이 재밌다는 말이 무엇인지 깨닫게 되었다.


노마드코더 사이드프로젝트 모임 팀장?!

ReactJS TA를 진행하니, 재미있게 다른 개발자분들과 교류하며 성장하는 것에 흥미가 붙었다.

때마침, 노마드코더의 Lynn님이 개발자 모임을 권장하는 분위기를 만들어주셨다.

배운것들을 기반으로 팀원들이랑 서비스를 만들어보자!라는 취지로 사이드 프로젝트 모임의 팀장을 지원했고, 이전 활동을 좋게 봐주셔서 노마드코더 사이드 프로젝트 팀의 팀장을 맡을 수 있었다.

첫 시작의 인원은 많지 않았다.

하지만, 첫 주차 이후.
프로젝트 결과물을 홍보하고 Slack에서 활발히 활동하는 것이 재미있어 보이셨는지, 2주차부터 합류하시는 팀원분들이 많아지셨다.

> 노마드코더 사이드 프로젝트 모임 결과물!

결과적으로 총 50명 정도의 인원이 사이드 프로젝트 모임에 참석해주셨고 각자 재미있는 프로젝트 경험을 안고갈 수 있었다. 🥳

그렇다면 나는 무엇을 만들었느냐?!


GoosePlayer!

> Page Link
> Github

Youtube 검색 기반 음악을 듣는 사이트인 GoosePlayer를 만들었다.
후다닥 2주만에 만든 서비스치고 나와 지인들도 현재까지 잘 쓰고있는 서비스이다.

아쉬운 부분은 컴포넌트와 로직들의 결합도가 너무 높아 기능을 추가하는 것에 어려움이 있었다는 것이다.

이러한 부분에서 많은 고민을 하였고, 현재는 컴포넌트 내부의 의존성을 최대한 배제하여 이러한 문제점을 개선하며 확장성과 재사용성에 대한 배움을 얻어갈 수 있었다.

참여자 모두가 재밌었고 많이 배울 수 있었던 행복한 경험이었다. 🥰

자리를 잡아 여유가 생긴다면, 꾸준히 이런 모임을 주최할 수 있지 않을까 기대해본다.


노마드 어워즈 수상!!

사이드 프로젝트의 결과와 반응이 워낙 좋았던지라 (각 게시글 평균 조회수 2만회) 연말에 노마드코더 어워드에 초대되어 상을 받게 되었다. 🥳

니꼬형님과 Lynn님이 좋은 기회를 주신 덕분에, 정말 많은 지식과 경험을 얻어갈 수 있었던 것 같다.

자리만 잡히면, 개발자 모임을 꾸준히 운영하며 받을 것들을 누군가에게 다시 돌려주고 싶다.

노마드코더! 니꼬형! Lynn님! 감사합니다! 😍

2-3만원짜리 키보드만 쓰다가 키크론 키보드를 사보니 너무 좋다...
손에 쫙쫙 달라붙는 느낌이랄까...


+ GoosePlayer! 정식 컨텐츠화!

멜론 클론코딩이 한 달 모임의 최종 작품 MusicPlayer에 영감을 받았다니, 영광이다.

머리속에 정말 재밌고 함께 성장할 수 있는 컨텐츠들은 많지만, 아직까지 자리를 못잡은게 아쉬울 따름이다.
하지만 기회는 언제든 있으니! 언젠가를 기약하기로 한다.


그렇게 즐기다보니...
어느덧 노마드코더 10레벨을 달성했다.

아직까지 배우고 싶은 기술도 많고, 하고 싶은 프로젝트도 많다.
계속해서 성장하고 있지만, 아직까지 배우고싶은 것들이 너무 많다.

1년이 된 지금, 우리는 계속해서 달려 나아가고 있다.
화이팅!


우아한 테크코스 프리코스

22년 11월 우아한 테크코스 프리코스에 참여하게 되었다.

개발의 방향성과 가치관에 가장 큰 영향을 받았던 시기였다.
개발을 독학으로 공부하며 놓쳤던 것들을 배울 수 있었다.

많은 과제들을 수행하며 정말 다양한 공부를 할 수 있었다.

  • 확장성이 높고 유지보수가 용이한 코드.
  • 가독성이 좋은 코드.
  • commitConvention과 살아있는 커밋로그. 그리고 문서화.
  • ESLint와 Prettier을 이용한 codeConvention.
  • 협업을 위한 Node version관리와 package.json 버젼 관리.
  • 기능명세서와 API명세서.
  • 객체의 책임과 범위.
  • 테스트코드 작성과 테스트코드 리팩터링.
  • 목표를 달성하기 위한 간단한 디자인 패턴.
  • 동료를 만들고, 지식을 나누는 것의 중요함.
  • 개발자로서 나아가야 할 방향성.

처음 과제를 보았을 때, 굉장히 쉬워보였지만 요구사항이 담고있는 깊은 뜻을 해결하기 위해선 코드 몇 줄을 작성하는데, 2~3이 걸리는 멋진 경험도 해보았다.
어려웠지만 끝까지 과제를 해냈고 정말 많은 것들을 배워갈 수 있었다.

특히, Discussions을 이용해 다른 개발자분들과 같이 고민한 내용들을 토론하는 것이 정말 흥미로웠다.

십 수개의 답변이 달렸고 답변의 댓글에서도 로직을 고민하고 타당성을 검토하며 지식을 교류하는 것이 참 즐거운 경험이었다.

이렇게 즐겁게 공부를 하며, 많은 교류를 하였고 좋은 지식과 인연을 얻어갈 수 있었던 시간이었다.


면접! 자료구조. 그것은 기본기.

일전의 기술 면접 당시, 시니어 개발자 선배님이 자료구조에 대한 중요성을 강조해주셨다.
바쁘다는 핑계로 기본기에 소홀히 하지 않았나 찔리는 순간이었다. 머쓱..

물론, 언매니지드를 배워 직접 구현해보는 것이 제일 좋지만, 이는 추후에 자리를 잡게 될때로 미루기로 하였다.

대신, JS의 Class를 통해 자료구조를 직접 구현하고 문제를 풀어 나아가는 방식을 채택했다.

array와 linkedList, 이를 기반으로 구현한 stack, queue, 메모라이징, cache, DFS, 백트래킹, 재귀 시리즈를 풀다보니 생각한것보다 금방 골드를 달성하게 되었다.


PS 선생님들!

최근, PS를 풀 때 준아님과 토선생님, atgane님이 많은 도움을 주셨다.
화면을 공유하고 혼자 끙끙거리고 있으니 많이 안타까우셨나보다 머쓱..

Junah님은 숙제까지 내주셨고, 열심히 풀어가니 아주 흡족해하셨다. :)

6월까지 골드5, 7월까지 골드 3을 목표로 잡아주셨는데 골드를 이미 달성했으니..!
플레까지 화이팅이다! :)


우아한 테크코스 프리코스에서 연이 닿아 만나게된 wizardrabbit님(토선생님)!
백준 follow 등록을 해주셔서 오랜만에 연락이 닿았다.

화면공유를하며 PS를 풀고있으니 토선생님도 작업방에 들어오셔서 문제와 접근 방법을 공유해주셨다 :)

덕분에 시간복잡도를 개선할 때, 캐싱이나 백트래킹과 같은 기술도 중요하지만 특정 index를 건너뛰어도 될 경우, 해당 index를 조건에 따라 뛰어넘는 기술도 있다는 것을 깨닫게 되었다.

과제로 밤새시는 토센세... 화이팅입니다..

문득, 1년을 회고하다보니 공부를 하는 과정에서 만났던, 감사한 사람들이 너무 많았던 것 같다.

자료구조를 공부하기 시작한 이유가, 시니어 개발자님의 조언이었듯.
1년동안, 주변에서 통찰력을 넓혀줄 수 있는 "조언"을 해주시는 분들이 꽤 많았다.

문득, 주변을 둘러보니. 나는 1년 동안 멋진 사람들과 좋은 인연을 정말 많이 쌓았구나를 느낄 수 있었다.


PS 뉴비를 축하해주시는 선생님들

따듯한 Solved.ac 선생님들!
솔닥 디스코드에 골드를 찍고 올리면, 칭찬세례를 해주신다는 말을 듣고 한 번 올려보았다.

시간복잡도를 개선하기 위해 자료구조와 알고리즘을 시작하는 골드. 뉴비가 지치지 않도록 항상 따듯하게 축하해주시는 문화가 자리잡혀있다...

응원과 격려를 하는 이유는, 꾸준히 정진하고 계속해서 앞으로 나아가라는 선생님들의 깊은 뜻이다.

응원해주신 솔닥 Discord 선생님들 감사합니다!


여태까지 감사했고, 앞으로도 잘부탁드립니다 🥳

살면서 다른건 다 해도, 후회만큼은 하지 말자.

내 좌우명이다.

이렇게 글로 남기며 옛 자료들을 찾다보니, 열심히 살았고 후회가 남지않는 시간들이었구나 안심이 되었다.

그런데 뭐, 여기서 안주하고 멈추겠다는 의미는 당연히 아니다.
회고록 썼다고 공부가 끝나는게 아니듯.
아직 배워야 할 것, 재밌는 것들이 너무나도 많이 남았기 때문이다.

개발자가 되어가는 발을 내딛을 때마다, 멋진 선배님들과 선생님들. 그리고 동료들을 만나 무척이나 행복했던 1년이었다. 앞으로 만나게 될 인연들도 너무나 기대가 된다.

정말 너무나도 감사했고, 앞으로도 잘부탁드립니다! :) ❤

0개의 댓글