서비스 개발 및 운영을 하다보면 크고 작은 문제들이 생기기 마련이다.
문제가 하나도 발생하지 않는게 가장 좋겠지만, 그렇게 하기는 쉽지 않다.
그렇다고 문제 발생이 두려워 서비스 기능 추가나 코드 수정을 안할 수는 없는 노릇이다.
"구더기 무서워 장 못 담글까"라는 말처럼..
95%의 완성도에서 100%의 완성도로 가기 위해서는
0%에서 95%로 가기위해 들였던만큼의 노력이 필요한 경우가 많다.
100% 완벽한 무장애 시스템을 만드는 것을 최우선 목표로 하게되면
안정성은 높아지겠지만 그만큼 서비스 기능 추가에는 시간이 걸리게 될 것이다.
그리고 개발자의 스트레스 지수와 불안감도 올라갈 것이다..
서비스에 기능 추가도 빨리 빨리 하면서
무장애 시스템을 만드는 것은 일반적인 수준의 노력만으로는 불가능할 것이다.
그래서 현실적으로 생각해보면
완벽한 무장애 시스템을 최우선 목표로 하기보다는 95% 정도의 완성도를 가져서
때때로 문제들이 발생하지만 수습은 가능한 수준의 문제가 발생하는 시스템을 만드는게 가장 실용적인게 아닌가 싶다.
그리고 문제를 수습하는 과정에서 대응을 잘하면 어느정도 신용이 생기는 효과도 있을듯 하다.
원래 문제가 전혀없으면 그로 인한 소중함도 느끼기 어렵고 당연한 것으로 여기게 된다.
그리고 대출을 받고 신용카드도 쓰지만 잘 상환하는 사람이 대출이나 신용카드를 전혀 안쓰는 사람보다 신용도가 높지 않은가.
문제가 발생할 수 있다는 것은 받아들이지만 그렇다고 해서 장애가 발생해도 된다는 마음가짐으로
안일한 생각으로 서비스 개발을 해서는 안될 것이다.
주어진 시간, 리소스안에서는 가능한 최선의 서비스 안정성을 확보하도록 하고
서비스에 큰 영향을 주는 크리티컬한 문제는 발생하지 않게 해야할 것이다.
(동일한 시간에 버그가 더 적은 코드를 만들 수 있는게 능력일 것이다.)
그리고 시스템의 안정성이 정말 중요한 시스템인 경우에는 그것을 최우선으로 하는게 맞을 것이다.
'개발 > 생각' 카테고리의 다른 글
재택 근무는 마치 대학 생활 (0) | 2023.03.17 |
---|---|
프로그래밍도 결국 일 (0) | 2023.02.08 |
효율적 코드 리뷰 (0) | 2023.02.07 |
프로그래밍 언어는 도구에 불과하다 (0) | 2023.02.03 |
개발 지식 습득에 대한 생각 (1) | 2016.09.09 |