힘듭니다.. 시스템 유지관리.. 조언이나 뭐 아무거나 이야기 해주세요.

calpice의 이미지

일본에서 2년차 개발자입니다.

어플 유지관리 하고 있고 서버는 php, mysql이용 합니다..
어플은 안드로이드, iOS이고 titanium으로 개발했습니다.
어플은 바쁠때 동접 만명? 이상되는 리워딩 광고 앱입니다. ( 일본에서 리워딩 광고앱중에 상위랭크 되어 있는 앱입니다 )
현재, 유지관리는 저 혼자 책임지고 담당하고 있고,
어플, 서버 개발도 저 혼자 하고 있습니다.
물론 자사 앱이 아니라 클라이언트 앱이고 저희 회사가 개발했습니다.

어플 특성상 유저가 포인트를 획득해서 현금으로 교환하는 어플이다보니..
뭐하나 잘못되면 피해가 장난이 아닙니다.

유지보수 관리 및 기능 추가 개발을 하고있지만..
이상하게 문제가 항상 터집니다.

서버가 다운된다든지, 버그때문에 접속이 안된다든지..
유저한테 포인트가 지급이 안되었다는둥.., 서버가 부정 유저의 공격을 받아서 다량으로 포인트를 획득해서 현금화 했다느니...
하는 일 대부분이 조사, 버그 수정이고,

하루에 약 1기가 이상이 넘는 엑세스 로그파일을 한달치, 혹은 두 세달치를 분석해야 할때도 있습니다.
웹서버도 5개나 되어서 각각 서버에 접속해서 취득해야하는 번거로움도 있고..
참고로 DB 서버는 3개입니다..

얼마전에 부정 유저가 다량으로 생겨서 그것 조사하는것도 엄청 빡신데..
본방( 일본어로는 본방으로 부릅니다. 실제 유저가 사용하는한 곳 ) DB서버에서 쿼리 몇개 돌리다가
새벽에 DB 서버가 다운되었나 봅니다.
( slow쿼리는 13시간 정도 걸리는 쿼리 두개였는데, 이 두개로 서버가 다운이 실제로 되었는지 안되었는지는 정확하지 않습니다. 일단 서버는 다운되었고 제가 쿼리를 실행했기때문에 일단은 제 책임... )

본방 서버에 어떤일이 일어날지 알고 너무 안이한게 그랬냐는둥 이러쿵 저러쿵
클라이언트측에서 엄청 뭐라고 하네요.

제가 집중력이 좀 없어서 실수를 많이 하는 편인데..
진짜 이 일은 저한테 안맞는것 같습니다.
하나 실수때문에 데미지가 너무 크니.. 하루하루 살 얼음판을 걷는 느낌입니다.

뭔가 스킬을 배운다거나 그런것도 아니고..
매일 하는게 로그분석 및 조사이니..
별로 남는것도 없는것 같네요..

물론 제 실수이므로 저의 능력 부족탓인건 압니다.
상사는 좋은분이라 저한테 뭐라고는 안하는데..
클라이언트측에서 이번에 엄청 세게 나가니까..
아무래도 제가 책임을 져야겠지요.

아마도 지금까지 저의 빈번한 실수가 클라이언트한테의 신뢰를 잃어버린것 같습니다.
지금은 일본생활 정리하고 한국에 돌아가고싶은 마음 뿐입니다.

그만두고 싶다는 생각은 정말 많이 했지만..
아니.. 그만두고 싶은게 아니라.. 포기하고 싶은거죠
회사는 나쁘지 않습니다. 상사도 굉장히 똑똑하고 좋은분이고..
포기하고싶은 이유는 제 능력 부족이라고 생각합니다.

미스를 줄이는게 굉장히 중요하다거 절실히 깨달았습니다.
리스크를 줄이는거.. 굉장히 중요하다는거 알지만..
와.. 저는 이게 너무 힘드네요.
이상하게 테스트할때와 뭔가를 확인할때 별로 집중력이 생기지 않는것 같기도하고..

쓸데없는 글 읽어주셔서 감사합니다.

이런 얘기 말할사람이.. 주위에 아무도 없어서 그런거니 너그럽게 이해해 주세요...

한국은 어떤지.. 2년차 접어들면 어떤일을 하는지.. 어떤게 가장 힘든지.. 이런것들도 궁금하네요.

goforit의 이미지

소비자 제품 개발 특성 자체가 그런 것 같습니다.
사용수가 만명, 혹은 몇 백만, 천만 이렇게 될수록 마지막 코드 한줄 넣고,
떨리는 마음으로 Enter 쳐서 릴리즈하면 며칠, 혹은 한동안 마음 졸이면서 사는 것도 그렇구요.
님이 쓰신 그대로 "하루하루 살 얼음판을 걷는 느낌입니다."
그러니, 님이 하고 계시는 일이 원래 어려운 성격의 일입니다. ^^ 본인 자신을 탓할 필요는 없습니다!

mirheekl의 이미지

본문 내용대로라면 한명이 전담해서는 안되는 일로 보이네요. 업무량이 문제가 아니고 금융권마냥 항상 누군가 상주해야만 하는 상황인데 그걸 혼자 처리하는 것 자체가 문제입니다. 개인적인 문제가 생겨서 급작스럽게 자리를 비우면 회사에선 어떻게 대응할 것인지? 서비스 상태에 대해 관리하고 책임지는 직원은 따로 있나요? 게다가 실DB에 테스트 쿼리를 날릴 때에도 타인의 허가를 받지 않고 본인이 그냥 곧바로 할 수 있다는 것도 문제로 보이고요.

이렇게 봤을 땐 가장 시급한 것은 여럿이 업무를 분담해서 맡는 것이고 (업무량 자체가 그렇게 크지 않아서 전담인원을 두기 어렵다면, 비슷한 규모의 일 여러가지를 나눠 맡기면 됨), 그 과정에서 자동화할 수 있는 건 자동화하고, 반복 발생하는 문제는 따로 팀을 꾸려서 근본적인 개선을 하는 업무 시스템으로 보입니다. 그렇기에 제가 보기엔 본인의 책임만이라고는 할 수 없을 것 같네요. 실수는 누구나 합니다. 차이는 그런 실수가 발생했을 때 어떻게 걸러내는가, 어떻게 복구하느냐에서 나오는 것이고 현재 말씀하신 바로는 그럴 만한 여력이 전혀 없어 보입니다. 그런 고충을 파악하지 않고 개선할 생각도 없는 매니저에게도 문제가 있어 보이고요.

다만 그만두고 한국에 오시는 것은 반대. (...) 이직하시더라도 웬만하면 그냥 계속 외국에..

--

academic의 이미지

mirheekl 님 말씀에 전적으로 동의합니다.

실수는 누구나 합니다.

그런 전제를 깔고 이를 막기 위한 시스템을 구성하지 않는한, 아무리 집중하고 노력한다고 해도 실수는 발생합니다.

----
academic은 제 고등학교 때 동아리 이름입니다.
academic, 아주 가끔은 저도 이랬으면 좋겠습니다.