블로그 이전 및 늦은 2024년 회고
블로그 이전
티스토리에서 깃허브로 블로그 이전을 했습니다. 티스토리에서도 글을 많이 작성한 것도 아니고 제 글을 본 사람들도 거의 없다시피 해서 이쁜 디자인을 찾아서 깃허브 페이지로 블로그 이전을 했습니다.
글쓰기
작년 초에 티스토리에서 처음 기술 블로그 개설을 했는데, 인생에서 살면서 글이라는 것을 작성해본 경험이 거의 없다 보니까 “글의 퀄리티를 생각하지 말고 일단 써보자”라고 생각해서 시작했습니다. “글을 잘 써서 사람들이 많이 방문했으면 좋겠다!”라는 마음에 시작하지는 않았고 그냥 글쓰기 자체를 습관으로 만들어보고 싶었어요. 제가 평소에도 좋아하는 것을 꾸준히 하는 것을 잘해서 글쓰기도 잘할 줄 알았죠.
그런데 역시나 흥미가 생기지 않는 분야에는 의지로만은 안 되더라고요? 흥미가 있고 꾸준히 해오던 영어공부, 헬스, 개발은 시키지 않아도 꾸준히 잘하는데 글쓰기 자체는 습관으로 잡히지 못했어요.
그래서 새로운 마음을 가지고자 블로그를 옮긴 것도 있습니다. 티스토리에서 작성한 글들은 기술(경험?)과 관련된 글임에도 체계화되지도 않았고 그냥 쓰고 싶은 대로 썼거든요. 지금이라도 막 다르거나 그렇진 않지만 그래도 여러 번 써봤다고 글쓰기 실력이 늘었습니다.
이번에 프로젝트를 진행하며 “단일 모듈에서 멀티 모듈 전환기”라는 시리즈를 작성하고 있는데요. 이 글 뒤에 올라갈 것 같습니다. 이 계기로 글을 꾸준히 쓰고 싶어요.
관심있게 보고 있는 몇몇 기술 블로그들이 존재하는데, 취준생이었던 분들이 취업하고 나서 글 작성 빈도가 엄청 주는 것을 많이 봤어요. 저도 취업하면 그렇게 될까요?
공부랑 운동은 시간 있을 때 하는 게 아니라 시간을 내서 하는 것들인데 글쓰기도 시간을 내서 할 수 있었으면 좋겠습니다.
프로젝트
작년 초에 시작해서 1차 MVP가 만들어진 프로젝트가 있는데요. 작년 여름에 다시 새롭게 기획을 바꾸어 진행한 프로젝트가 드디어 올해 1월에 끝이 났습니다. 년수로는 1년인데 실제 진행한 시간은 8~9개월 정도 진행한 것 같아요. 2차 프로젝트는 1차 MVP에 비해 기능이 추가되거나 그런 건 없었습니다. 1차 MVP보다 좀 더 디테일하게 기획을 진행했는데요. 바뀐 기획에 따라 리팩터링을 진행했습니다.
2차 프로젝트를 시작하기 전에 팀을 꾸리고 시작했어요. 그런데 팀을 구성하고 유지하는 것이 정말 어려웠습니다. 프론트2 백엔드2 디자이너1로 팀을 구성하고 기획을 다시 했는데요. 취준생과 현업 개발자들이 포함된 팀으로 구성했습니다. 기획 마무리까지는 별탈 없이 진행이 되었는데 실제 개발이 들어갔을 때 문제가 발생했습니다. 현업자 분들은 일을 하고 남은 시간에 사이드 프로젝트를 진행하게 되는데요. 매번 각기 다른 사유로 기능 구현이 되지 않고 시간만 흘러가는 것을 보았습니다. 물론 이해합니다. 현업이 훨씬 중요하니까요. 당연히 중요하죠.
그런데 팀을 이끌어가는 제 입장에서는 많이 힘들었네요. 2달 동안 프로젝트는 진행이 되지 않고 사람은 계속 바뀌어 나갔습니다. 2달 동안 8명 바뀐 것 같아요. 그래서 팀원들과 상의 끝에 더 이상 프로젝트 진행을 어려울 것 같다고 이야기하고 팀은 해체되었습니다.
물론 백엔드에 팀원 한 분은 남아서 계속 하시겠다고 해서 프론트 없이 백엔드만 진행했습니다. 정말 고마웠어요. 올 1월까지 같이 리팩터링을 진행했고 결국엔 마무리했습니다.
팀을 꾸리고 팀원이 계속 바뀌는 상황에서 많은 고민을 했었어요. 뭐가 문제였을까? 제가 내린 결론은 팀을 유지하는 것은 사람들의 니즈와 이해관계가 맞아야 한다였습니다. 프로젝트에서 사람들마다 얻어가고 싶은 것은 달라요. 또한 프로젝트에 대한 애정도도 다르죠. 각기 다른 상황에 처해 있기 때문에 팀이 유지될 수 없다고 결론을 지었습니다.
만약 내가 회사에서 팀을 이끌어나가는 리더의 자리에 있다면 팀을 어떻게 유지할 수 있을까 생각을 해봤어요. 물론 개발자는 직장인이기 때문에 돈을 받고 회사의 이익을 위해 일을 해야 합니다. 그럼에도 불구하고 퇴사하는 사람은 있을 수밖에 없죠? 팀을 유지하기 위해서는 사람들의 니즈를 만족시켜줘야 한다고 생각했습니다. 그 니즈라는 게 돈일 수도 있고 성장일 수도 있고 워라벨일 수도 있죠. 물론 회사는 이익집단이기에 모든 직원들의 니즈를 만족시켜줄 순 없습니다. 하지만 같이 문제를 헤쳐나가는 동료의 입장도 생각해볼 수 있지 않을까 싶습니다. 그런데 지금은 취준생이라 이런 생각을 하지만 생각이 달라질 수도 있겠네요.
기술 및 문제해결
이제 개발 시작한 지 거의 2년이 다 되가는데요. 개발을 시작하고 나서 1년은 내가 개발을 진심으로 좋아한다는 것을 느꼈어요. 성장에도 진심이고요. 그리고 작년 1년은 기본기에 초점을 맞췄어요. 기본기라는 게 CS지식일 수도 있고 알고리즘일 수도 있고 다양하죠? 작년에 제가 생각한 기본기는 “유지보수”였어요.
재작년에 우아한테크코스 프리코스를 하고 나서 객체지향이 무엇인지 알고 나서였던 것 같아요. 어떻게 해야 유지보수하기 좋은 코드가 나올까? 어떻게 하면 읽기 좋은 코드가 나올까에 집중했어요. 그 생각이 작년 1년 동안 계속 지속되었어요. 그렇게 하다가 테스트 코드에 빠지게 되었어요.
테스트 코드가 주는 영향, 테스트 코드를 통해 유지보수하는 법, 테스트 코드를 통해 리팩터링하는 법 등에 대해서 고민을 많이 했어요. 특히 테스트 코드를 어떻게 빠르게 작성하고 테스트 코드 작성 경험이 없는 사람이 테스트 코드에 어떻게 해야 적응하고 작성할까를 고민했습니다.
작년 한 해 동안 유지보수하기 좋은 코드, 읽기 좋은 코드에 집중하다 보니까 기술적인 부분에 소홀히 하고 있는 저를 발견했어요. 그래서 올해는 기술적인 부분을 좀 더 공부해보려고 해요.
그리고 제가 가지고 있던 관념이 있었는데요. 부끄럽게도 이런 생각을 했답니다. “난 프론트엔드에 소질이 없어. 백엔드만 공부해야지”라는 생각을 했답니다. 진짜로 프론트엔드에 소질이 없는 것 같긴 해요.
그런데 생각이 바뀌었습니다. 백엔드 개발자도 기본적인 프론트도 할 줄 알아야 된다는 것을요. 깊이 있는 공부까지는 아니더라도 html, css, javascript로 기본적인 것은 스스로 만들 줄 알아야 하는 것 같아요.
왜 이런 생각을 했냐면요. 저는 개발자라는 직무로 일을 하게 되겠죠? 그런데 창업을 하지 않는 이상 개발자도 결국엔 직장인인걸요. 돈을 받고 회사에 가치를 만들어내야 하는 사람인 거죠. 저에게 어떠한 업무가 주어졌는데 “그거 프론트엔드라 못해요”라고 할 순 없잖아요? 그래서 여유가 되면 프론트도 공부해볼 생각입니다.