Notice
Recent Posts
Recent Comments
Link
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Tags
more
Archives
Today
Total
관리 메뉴

마로의 개발일지

내가 배운 것들과 앞으로의 방향성 본문

잡담

내가 배운 것들과 앞으로의 방향성

maro0201 2023. 7. 27. 13:30

 퇴사 후 여행을 8일 정도 다녀왔고 그전에는 부모님과 시간을 보냈다. 틈틈이 디자인 패턴 스터디와 코딩 테스트 문제 풀이, 스프링 강의도 들었다. 기초 지식을 쌓는 것은 언제나 옳기 때문에 네트워크와 테스트 코드에 대해 공부를 이어나갈 예정이다. 약 3주 정도가 지난 지금 나는 앞으로의 방향성에 대해 고민 중이다. 방향성을 찾기 위해 나에게 몇 가지 질문을 하고 답변을 해보았다.

 

그동안 나는 어떤 것들을 배웠는가?

- java/spring 기반의 서버 개발 능력이 많이 향상되었다. 기능 구현은 대부분 가능하고 좀 더 효율적인 코드를 짜기 위해 노력한 결과, 작성한 로직 자체가 비효율적이라 코드를 수정해야 했던 적은 그리 많지 않았다(물론 업무에 익숙해졌고 팀원들 스타일에 맞게 짜서 그럴 수도 있지만).

- SQL 쿼리 짜는 능력이 늘었다. 나는 입사할 때 조회 쿼리밖에 모르는 사람이었지만 실무를 통해 좀 더 효율적인 쿼리를 작성할 수 있게 되었다. explain을 통해 효율성을 파악하고 index를 적용해서 속도를 빠르게 하는 등 기존의 느린 쿼리를 튜닝해서 빠르게 만드는 작업이 특히 재밌었다. INSERT와 UPDATE는 항상 조심했고 운영 DB를 건드릴 땐 5번 넘게 확인했는데도 손에서 땀이 났었다.

- 서비스에 필요한 DB 설계 능력이 생겼다. 아직은 잘한다고 할 수 없지만 그래도 필요한 항목에 따라 어떻게 구현하고 추가할지, 나중에 기능을 추가하기 위해선 어떻게 짜는 게 좋을지 고민하며 성장했다. 너무 큰 그림을 그려서 과할 때도 있지만, 확장성을 고려해서 설계하기 위해 노력했다.

- 모니터링 및 디버깅 능력이 늘었다. 예전엔 서비스 운영 경험이 없어서 이런 시스템이 존재하는지 조차 몰랐다. 하지만 알고난 후 운영에서 가장 중요한 부분이 모니터링과 디버깅이라는 생각이 들었다. 로깅을 보고 문제를 파악하고 문제를 해결하는 게 마치 주어진 퀘스트를 깨는 것 같아 재밌었다. 주변의 동료들이 에러로 머리를 싸맬 때면, 내 개발 일정을 계산해 보고 시간 여유가 된다면 같이 해결했다. 문제를 해결할 때면 큰 성취감과 함께 동료들의 감사를 받을 수 있어 일석이조의 효과가 있었다.

- 협업을 배웠다. 기획자와 백엔드 개발자, 프론트엔드 개발자(앱, 웹)들과 함께 일하는 법을 배웠다. 덕분에 기획 단계와 서비스 설계부터 구현 및 배포까지 덕분에 전체적인 프로세스를 알 수 있었다. 처음이다 보니 사람들과의 관계에서도 삐걱거리는 부분이 존재했고 여러 시행착오가 있었다. 하지만 나중에는 내가 잘못한 부분은 반성하고 고치고, 남들이 잘못한 부분에 대해서는 좀 더 관대해지려 노력했다. 덕분에 그래도 주위에서 꽤 나쁘지 않은 평을 받았던 것 같다.

 

지금의 나는 경쟁력이 있는가?

 아니 전혀 존재하지 않는다. 많은 것을 배웠지만 겉으로 보기에 그저 흔한 스타트업에서 일한 3년 차 java/spring 기반 백엔드 개발자일 뿐이다. 거기다 서버 개발이기 때문에 포트폴리오로 내세울 코드도 존재하지 않는다. 남들처럼 열심히 기술 블로그를 작성한 것도 아니고, 사이드 프로젝트를 한 것도 아니며, 그저 혼자 열심히 1인분을 하기 위해 달려왔다. 기록할 시간에 하나라도 더 배우고 싶었고, 당장의 업무가 바쁘고 많은데 다른 프로젝트를 할 시간이 있을 리가 없었다. 2년 차 초반에는 그래도 블로그도 조금 쓰고, 사이드 프로젝트도 시도했지만 이게 과연 내가 남들과 다른 가치를 가지는 것에 도움이 되는가에 대한 회의감이 들었다. 그래서 경쟁력을 가지기 위해 남들이 가지 않는 길을 가는 건 어떨까?라는 생각이 들었고 블록체인을 공부했다. 

 블록체인은 확실히 흥미로운 기술이었고 꽤 재밌었다. 어렵고 복잡한 기술이었지만 기술적 가치는 꽤 있어 보였고 이 분야로의 전직을 고민했다. 고민하던 중에 블록체인 회사에 다니는 사람을 소개받아 면접을 보게 되었고 거기서 많은 실망을 하게 되었다. 기술적인 성장보단 코인 투자를 위한 회사 같다는 느낌을 받았다(물론 실제로는 아닐 수도 있다). 그래도 국내에서 나쁘지 않은 회사라고 생각했는데 이런 현실을 보니 이 길은 아니라는 생각이 들었다.

 그 이후 기술 블로그를 제대로 해보자는 생각이 들어 다시 개설해서 열심히 글을 쓰고 있는 중이지만 여전히 나에게 경쟁력은 존재하지 않는다. 맡겨만 주면 잘할 자신 있는데 이대로라면 서류에서 탈락을 면할 수 없을 것 같다는 생각이 들었다.

 

경쟁력을 가지기 위해선 어떤 것을 해야 할까?

 남들이 모두 하는 블로그, 토이 프로젝트 등이 아닌 새로운 무언가가 필요했다. 그러던 와중에 항상 우대사항에 존재하는 오픈소스 개발 경험이 눈에 띄었다. 예전의 나에게 오픈소스 개발은 언제나 잘하는 사람들이 좋은 프로그램을 만드는 것이었고 난 그런 걸 할 수 없을 것 같다고 생각했었다. 그런데 사내 동아리 스터디에서 logback-kafka-appender 오픈소스를 잠깐 본 적이 있는데 생각보다 간단하고 이정도면 나도 분석정도는 해볼 수 있을 것 같았다. 천리길도 한걸음부터라는 말이 있듯이 천천히 조금씩 분석하다 보면 좀 더 나은 개선사항이 있는 코드가 있을 수도 있지 않을까 하는 생각이 들었다. 개선사항이 없다면 없는 대로 나는 더 좋은 코드를 보고 배운 것이기에 그것도 그거대로 좋지 않을까? 그래서 한 번 도전해 보기로 했다.

 

앞으로의 계획

 일단 3년 차 백엔드 개발자로서 여러 기업에 지원해 볼 생각이다. 그러기 위해서 취업 준비 겸 일단 기초적인 CS 복습도 하고 전에 작업했던 일들과 배웠던 것들을 다시 돌아볼 생각이다. 그동안 쉬었기에 까먹은 것들도 많은 테니 다시 한번 봐야겠다. 시간이 남으면 오픈소스 컨트리뷰트를 시도해보려고 한다. 

 

'잡담' 카테고리의 다른 글

Web3가 아닌 Web2.5 백엔드 개발자  (1) 2023.10.09
퇴사 이후의 생각 변화와 블록체인  (0) 2023.08.21
퇴사를 하게된 이유  (0) 2023.07.03
AWS Summit Seoul 2023 Day 1 후기  (0) 2023.05.06
팀원의 퇴사(+팀장님)  (0) 2023.04.23
Comments