버그 개선/에러 핸들링을 할 때 중요한 것들

Outclass·2022년 8월 2일
0
post-thumbnail

최근 신규 솔루션과 기존 솔루션 연동 작업에 참여하면서 에러 및 버그 개선을 해야하는 상황들이 많았는데, 계속해서 문제들을 마주하고 해결해가다보니 느끼고 생각하게된 것들이 있다.

1. 버그/에러가 일어난 경로를 정확하게 재현해야 한다.

  • 당연하겠지만 재현 할 수 없는 버그는 개선할 수도 없다. 그리고 어떤 경로를 따라 어떤 상황에서 문제가 발생했는지를 알아야 그 원인도 정확하게 진단할 수 있다.

2. 문제속에 답이 있다. 문제 먼저 잘 들여다 보자.

  • 버그가 일어난 경로를 따라 발생한 문제를 잘 들여다보면, 그 속에 실마리도 있다는 것을 최근에 뼈저리게 느꼈다. 기존의 경험이나 내가 가진 배경지식이 물론 필요는 하지만, 경험과 지식에만 근거하여 문제에 대해 섯부른 판단을 해버리면 오히려 문제를 개선하는데 더 많은 시간을 들이는 경우들도 있었다. 일단은 내가 눈 앞에 마주한 문제를 정확하게 바라보는 습관을 들이자.

3. 공식문서를 잘 보자.

  • 사용하는 프레임워크/라이브러리 등의 정확한 구현방향은 결국 공식문서 속에 있다. 일례로 Three.js draco loader를 사용하는데 지속적으로 특정 디코더를 불러오지 못하는 문제가 있었는데, 공식문서를 살펴보니 해당 문제를 해결할 방법이 아주 정확하게 제시되어 있었다. 사실 혼자서 해결하려고 끙끙대면서 배우는 것도 있다지만, 공식문서를 먼저 잘 찾아보고 이해했으면 5분이면 해결할 수 있는 문제였다.

4. 모르면 잘 물어볼줄도 알아야 한다.

  • 최소한의 노력도 기울이지 않고 질문하는 것은 지양해야겠지만, 내가 일정시간을 투입했음에도 실마리를 찾지 못했다면 '잘' 질문하는 것도 아주 중요함을 느낀다. 질문을 두려워하지 말고 할 땐 하자. 다만 내가 마주한 문제는 무엇이며, 여태까지 내가 분석한 문제의 원인은 무엇이고 어떤 시도를 했는데 어떤 결과가 나왔는지 충분히 정리하고 질문했을 때 문제의 해결책을 더 명쾌하게 얻는 경우들이 많았던 것 같다.

5. 그리고 메모하자

  • 이러한 과정을 잘 마무리했다면, 기록으로 남기는 것까지가 한 사이클의 마무리가 되도록 습관을 들이자. 이렇게 버그개선 / 에러핸들링을 하는 과정들을 나름대로 기록을 남기다 보니 내가 지금 다루고 있는 솔루션에 대한 이해도도 깊어지게 되고, 비슷한 문제를 만났을 때 더 빨리 해결할 수 있는 단초가 되는 것 같다.
profile
When you stop having big dreams that’s when you’ve died, despite not being buried yet.

0개의 댓글