Back to the Basics

이제 막 3년차가 되는 백엔드 개발자의 회고타임 본문

Books & Reviews/회고획오

이제 막 3년차가 되는 백엔드 개발자의 회고타임

9Jaeng 2024. 7. 12. 16:26
728x90

가볍게 내가 개발자가 된 계기를 적어 보자면..

기계공학과 전공으로 공대를 졸업하고 전공에 맞게 항공기를 설계 및 개발하는 엔지니어로 경력을 시작했다. 그러다 어떤 계기로 (길어서 생략) 개발 공부를 하게 되었고 "나의 길은 이거다!"싶은 순간이 와서 아예 퇴사를 해 버리고 개발 공부를 시작, 운 좋게 꽤 인지도 있는 회사의 백엔드 개발자로 일하게 되었다. 이곳이 개발자로서 경력을 시작하게 된 첫 회사였다.

첫 회사에 들어와서 어느 것을 먼저 해야 하는지 우왕좌왕했던 기억이 있다. 비전공자로 들어온 나로서는 사실 모르는게 많았다. 회의에 들어가면 이런저런 용어들이 마구마구 나오는데 이게 무슨 말인지, 이런 것까지 질문을 해도 될지, 회의 중간중간 기초적인 부분까지 물어봐도 되는 것인지 등등 많은 고민을 하며 주말에도 공부를 해 가며. 사고도 좀 쳐 보고 🤴우왕좌왕🤴 우당탕탕 지냈던 것 같다.  이제 막 현업에 들어온 주니어 of 주니어인 내가 "개발자"라는 삶에 언제 녹아들었나 싶을 정도로 시간이 후딱 가 버리고 이제 막 3년 차가 되었다(글을 쓴 시점까지 약 2년 하고 3개월이 되어 간다)

처음 개발자로 들어와서 집중했던 것은 "개발자라는 삶에 녹아들기"였다. 그래서 일단 해야 할 일이 있다면 이것을 하기 위해 관련 지식을 공부하고 고민하고 해결하는 과정에 집중했다. 이제 한숨 돌리고 주위를 둘러볼 여유가 좀 생긴 것 같다. 요즘엔 "어떻게 하면 좋은 개발을 할 수 있을까?"와 같은 것에 집중하고있다.

그리고 "고민" 또한 초반에 하던 고민과는 꽤나 달라졌다. 처음에는 기존의 코드를 이해하는 것과 내가 있는 팀의 서비스와 비즈니스를 조금이라도 알기 위한 고민들 그리고 무엇을 어떻게 질문할지에 대한 고민들이었다. 나는 잘하고 있는가? 이렇게 하는 것이 맞는 것인가? 하는 고민들... 이런 추상적이고 정리가 안 된 고민들이 주를 이루었다면 지금은 그나마 좀 정리가 된 듯하고, 목적이 분명한 고민들을 하는 것 같다. 가령 좋은 코드란 무엇인가? 간결한 코드가 좋은 코드인가? 가독성 있는 코드가 좋은 코드인가? 클린 코드란 무엇일까?와 같은 고민이라든가, 확장성 있는 아키텍처란 무엇일까? 지금 내가 짜고 있는 코드는 확장성 있는 아키텍처 안에서 짜여지고 있는가? 함수는 하나의 기능만을 담고 있나? 의존성을 최소화할 수 없을까? 성능상 문제는 없을까? 하는 고민들을 하면서 개발을 하고 있다.

"한 번만 읽어도 찰떡같이 이해할 수 있는 코드를 작성하고 싶다"가 요즘 내가 갖는 제일 큰 관심사이다.  그러다 보니 OOP라든가 AOP라든가 DDD라든가 TDD 등과 같은 프로그래밍 패러다임, 여러 디자인 패턴에 대해 관심이 생기기 시작했다. 예전에 어떤 개발자분이 "이런 건 나중에 스스로 찾게 될 것이다"라고 했던 말이 기억나는데 지금 내가 딱 그런 것인가 싶다.

그리고 깨달은 것 중에 꽤나 어렵지만 중요한 것이 있는데 바로 WHY라는 생각을 항상 해야 한다는 것이다.  물론 이런 말은 주변에서 많이 들었지만 머리로 이해하는 것과 직접 깨닫는 것은 많이 다르다 생각한다. 예를 들면 Task를 할당받으면 단지 이대로 하는 것이 아니라 "왜?" 라는 물음을 갖고 해야 한다는 것, 코드 리뷰를 할 때 상대방이 "왜" 이렇게 코드를 짰는지에 대해 생각하면서 컨텍스트를 이해한다면 더 좋은 개발을 할 수 있고 더욱 좋은 코드 리뷰를 할 수 있다는 것이다.

정리하자면, 요즈음 난 "좋은 개발을 하고 싶다"는 욕구가 있다. 그래서 개발자가 된 초반에 좋다고 해서 사 놓기만 한 책들이 다시 눈에 들어오고 있다. 하나 하나 다시 읽어 볼 생각이다.

 

 

728x90
Comments