2024년은 개발자로서의 신입딱지를 떼고,
진득하게 한가지 프로젝트에 올인하는 해 였다.
신입에서 벗어났다고는 하지만,
업무에서의 우여곡절이 많았기에 이를 회고해 보고자 한다.
1. 상반기(1~6월)
상황
js 와 vue.js의 문법 등을 겨우 익혀놓은 상태 였다. 설계를 보고 자유롭게 코드를 짤 수 있는 실력까지는 안되었다. 그런데도, 운이 좋았던건지 외환 주문 컴포넌트를 작업을 업무로 맡게 되었다. (나름 핵심기능임!)
문제
- 설계가 이해 가지 않았다.
- js 문법은 익혔으나 class문법, 디자인패턴과 같은 심화 공부가 덜 된 상태였다.
- 컴포넌트 자체가 워낙 복잡해 어떻게 분기처리를 해야 할지에 대해 막막 했다.
- 설계가 추가되고, 수정되고, 보완되는 작업이 끊임없이 이루어졌기 때문에 옳게 작업을 했어도 재작업하고, 수정해야 하는 일들이 많았다.
원인
설계가 이해 가지 않는 것에는 두가지 원인이 있었다.
- 첫번째는 디자인팀 조차 주문 컴포넌트의 성격을 제대로 파악하지 못해 많은 부분이 생략 되었다는 것이다. 기존의 AsIs 버전을 그대로 따다가 붙였고, 나머지 기본적인 업무 흐름을 각 개발자가 직접 현업과 이야기해서 파악해야 했기 때문에 작업이 더뎠다.
- 두번째는 금융권 업무가 처음이다보니 주문 시스템 자체에 대한 업무 이해도가 너무 낮았다는 것이다. 그러다 보니 코드의 재사용성이나, 확장성 등을 고려하기보다는 눈앞에있는 마감기한을 맞추기 급급했다. 어떤 기능들은 혼자 해결 할 수 없어서 상사분들의 도움을 받아야 할 때도 있었다. 설계의 추가에 대한 부분은 내 문제는 아니었지만 아직 직장생활에 대한 융통성이 없어 그때그때 제대로 대응하지 못했고, 계속해서 일이 늘어나는 결과만 초래 하게 되었다.
개발환경에 대한 이해도 부족했다.
특성상, 서버를 두개로 나누어 써야 했는데 서버의 성격에 따라서 특정 데이터를 받아올 수 있고 없고의 여부가 달랐다. 어떤 페이지는 A서버를 통해 정보를 받아와서 적용하고, 어떤 페이지는 B서버를 통해 정보를 받아와야 했는데 서버가 달라지면 사용하는 IDE 선택부터 vue.js를 쓰는지, jsp위에서 작업을 하는지... 빌드를 어떻게 해서 반영하는지까지 달랐다. 이런 일련의 과정들에 대해서 큰 그림을 그리지 못했고, 적응도도 떨어질 수밖에 없었다.
작업의 속도가 느려지고, 질이 떨어진다고 느끼는 것에는 아무래도 js 문법을 깔끔하게 복잡한 기능에 맞게 적용하는 것이 어렵다는 것에 원인이 있었다. 결국, 공부가 더 되고 덜되고의 문제였던 것 같다.
해결 방법
주변에 많은 지인들에게 해법을 물어봤던 것같다. 코드를 짜는 능력이 부족한 것인지, 대인관계 스킬이 부족한 것인지, 업무에 대한 이해도가 낮은 것이 문제인지....결론적으로는 세가지 모두 문제였기 때문에 이 부분을 보완 했어야 했다.
특히 2~3월 무렵부터는 내가 하고 있는 업무와 전반적인 프로세스 자체가 정리되지 않아서 일부러 작업일지를 쓰기 시작했다.
그날그날 해야할 작업들을 나열 하고, 당일 추가하거나 변경한 코드의 컨텍스트를 커밋메시지와 함께 적어놓았다. 누가 지시를 했고, 어떤 목적으로 지시한 것인지를 적어 놓으니 다음에 설계가 변경 되더라도 큰 혼란이 없었다. 목적을 알게 되니 상대와 타협도 가능 했다.
공유를 했다.
함께 일하는 사람들이 급작스럽게 늘어나니 처음에는 숨기에 바빴던 것 같다. 하지만 저년차의 장점이 무엇인가..!!!!
잘 몰라도, 못해도 이해받을 수 있다는 것이었다. 많이 혼나기도 했고, 스스로 주눅도 들었지만 지금이 아니면 잘못된 것을 고칠 수가 없을 것만 같았다. 영원히.
그래서 많은 것을 공유했다.
내가 잘 모르는 것, 아는 것, 남들이 알만한 것, 모를만한 것 등등을 끊임없이 공유했다.
어떻게 보면 내가 해야할 일이 아니라고 생각할 수도 있었지만, 이러한 과정이 있었던 덕분에 오히려 많은 선배들로부터 도움을 받았고, 업무이해도나 개발환경에 대한 이해도가 점점 높아졌다.
2. 하반기(7~12월)
상황
결재라인 서비스의 한 페이지를 작업분으로 맡게 되었다.
그런데 페이지 작업 뿐만 아니라 서비스 전체를 보아야 하는 상황이 생기기 시작했다.
문제
- 작업 공수를 잘못 파악했다.
- 타 부서와 소통이 어려웠다.
원인
- 내 페이지는 결재라인 서비스의 중간단계에 있는 페이지였기 때문에, 겉으로 보이는 것처럼 단순한 데이터 출력 페이지가 아니었다. 앞뒤 단계로 데이터를 올바르게 주고 받을 수 있어야 했는데 작업자들간에 이러한 소통이 부족했다.
- 신기하게도, 상반기에 작업했던 주문 컴포넌트와도 연결된 서비스였는데.. 그럼에도 서비스의 전체 흐름 자체를 생각하지 않고 단순 데이터 출력에만 치중하다보니, 작업을 마쳤다고 생각하고 나서도 부가작업을 해야하는 경우들이 생겼다.
- 어떤 분께 무엇을 어떤방식으로 요청 드려야 하는지에 대한 공부가 덜 되었던 것 같다.
- 나의 연차와 직급을 잘 활용 하지 못했다.
해결 방법
- 또 무작정 공유를 했던 것 같다. 상황이 안좋을 때에는 공유를 해야 한다. 이런 상황이고, 이런 부분이 작업이 안되고 있고, 이런 해결 방법이 필요하다. 도와달라는 요청을 기꺼이 해야한다고 생각했다.
- 서비스 전체의 흐름에 대해 공부했다.(대표님의 도움을 받았다)
- 상사분들 께 진행상황을 틈틈히 알린다. 그래야 해결의 실마리를 찾을 수 있다.
3. 느낀점 및 얻은 것
- 공부는 개인적으로 하는 것이지만, 업무는 다같이 하는 것이다. 따라서 상황에 대한 공유와 보고를 시시때때로 해야한다고 느꼈다. 그래야 리스크에 대한 대비를 각자 하 수 있다. 순간 창피한게 일이 안되는 것보다 훨씬 낫기 때문이다.
- 도움을 요청드려도 된다. 직급과 연차가 낮다는 것은 그만큼 권한이 적고, 독립적이지 못하다는 것을 뜻한다. 충분한 권한을 가진 분들께 도움을 요청드리자.
- 인간에 대한 포기를 하자. 상대에게 화가 나는 이유는 내가 아직도 그에게 작게나마 기대를 하고 있기 때문이다.
- 원하는 것이 무엇인지 알아야 요청도 확실하게 드릴 수 있다.
- 책임은 모두가 지는 것이다. 회피하지 말자.
- 거절을 하자. 모두에게 잘 보일 수는 없다.
4. 2025년 목표
- 정보처리 기사를 따야한다 진짜로 진짜로 진짜로 이럴때가 아님
- java, spring boot의 숙련도를 높여서 이제 진짜 풀스택을 향해 나아가는 중니어가 되어야겠다.
- 리더십을 길러서 관리자를 향해 나아갈 준비를 하자.
'회고, 개발문화 등' 카테고리의 다른 글
[항해99 / WIL] 1주차 회고 (1) | 2024.09.28 |
---|