기존에 부산 소프트웨어 마이스터 고등학교 선생님들은
1년마다 스케줄 및 자습감독 / 이석대장 총 관리 선생님 한 분을 정해서,
그 분이 선생님들의 일정에 맞게 스케줄을 짜셨습니다.
또한, 이렇게 학생들이 어느 교실에 있는 지 확인을 하고 그 교실에 가서 존재해야하는 학생들이 잘 존재하는 지 확인을 해야했습니다.
예상대로, 96%의 선생님들이 불편하시다고 응답하셨습니다.
TeachMon은 이런 불편한 관리 / 감독 방법을 더욱더 쉽고 편리하게 하기 위해, 만들어졌습니다.
참고로, TeachMon 이름은 Teacher + Monitor의 합성어로 만들어졌습니다.
이 프로젝트는 디자인시간 때 설계를 하기 시작했고, 반에서 최우수상을 받았습니다. 그래서, 이 프로젝트를 설계한 친구 A와 친구 B는 이 프로젝트를 실제로 만들기로 했고, 둘이서는 부족할 것 같아서, 팀원을 모았습니다. 먼저 친구 A가 친구 C와 친구 D를 데리고 왔습니다.
이때 역할이 FE 개발자가 3명, BE 개발자가 1명이라서, 친구 A가 BE를 주로 개발하는 저에게 참여 기회를 줘서 흔쾌히 수락했습니다.
그래서 이렇게 5명에서 개발을 시작하게 되었습니다.
개발과정은 매우 험난했습니다.
겨울방학때 시작을 해서, 3월까지 2달안에 완성을 해야했습니다.
저희는 여태까지 프로젝트라고 할만한 프로젝트를 해본 적이 없어서 매우 곤란했습니다.
그래서, 매일매일 디스코드에서 9시에서 11시동안 자기 할 작업하면서, 자기가 여태까지 한 것을 보고했고, 쉬는 시간 내내 개발을 진행했습니다.
그리고 주말이나 모든 팀원이 시간이 되는 시간은 스터디카페에 가서, 모임실 하나를 잡고 5~6시간씩 작업하고 밥먹고를 반복했습니다.
그래서, 2월달 후반쯤에 대부분의 기능이 완성되었는데..
갑자기, 선생님들의 요구사항이 바뀐 것입니다.
저희는 7, 8~9, 10~11 교시에 자습감독 / 이석대장을 만들었는데, 이번에 야간학습시간에도 선생님이 한 분 있으셔야한다는 요구사항이 추가된 것입니다..
(야간학습에 선생님도 자동배정을 해야하기 때문에, 로직이 많이 바뀝니다.)
그래서, 저희는 급하게 작업에 들어가게 되었습니다.
오전 9시부터 아침 4시까지 하게 되는 이른바 9 to 4을 실행하게 되면서, 계속해서 개발했습니다.
그래도 결국 제 시간안에 해냈습니다!!
자신의 자습감독 일정 그리고 방과후 일정을 캘린더로 확인할 수 있고, 현재 1, 2, 3학년들의 자습 / 이석 / 조퇴 상황을 확인할 수 있습니다.
그리고 선생님들의 자습감독 교체 요청 리스트도 볼 수 있습니다.
해당 페이지에서는 자습감독 일정 리스트를 볼 수 있습니다.
지금 현재는 개인정보 때문에, 선생님이라는 이름으로 대체했습니다.
이 페이지도 개인정보로 인해, 샘플화면으로 대체했습니다.
이런식으로 학생이 어떤 상태인지 한 눈에 보기 쉽게 구현했습니다.
이 페이지는 자신의 방과후 수업과 요일별 학년별 방과후 수업을 획인할 수 있습니다.
일단 기본적으로 이렇게 있고,
더 자세한 내용은 https://teachmon.kro.kr로 가시면 상세한 내용을 알 수 있습니다.
일단 개발과정까지는 문제가 거의 없었습니다. 하지만, 문제는 배포 후에 많이 생기게 되었죠.. 일단 배포한 지 한 달도 안 되었을 때는 계속 터졌었습니다. 이 때문에, 선생님들의 불만을 많이 샀죠.. (부소마 선생님들 죄송합니다.)
이렇게 오류를 내고 고치고를 반복하다가 큰 문제가 발생했는데요.
바로 GCP 무료체험기간이 끝난 것입니다.
원래 저희는 GCP무료체험으로 GCP에서 서버를 돌리고 있었는데,
이제 유료가 되니, 다른 서버로 이전을 해야했습니다.
그래서 AWS로 이전을 하려 했는데 되지 않아서,
결국 학교 교내서버로 이전을 했습니다.
그런데...
그 때에는 AWS도 GCP랑 똑같이 기간내에만 쓰면 무료구나라고 생각을 해서 그냥 마음대로 있는 기능을 다 썼었습니다.
그래서 그렇게 흥청망청 쓰다가 어느 날,
벼락 같이 140만원이 청구되었습니다. 저희는 이 사실을 확인하자마자 선생님께 알렸습니다. 하지만, 선생님들도 이걸 저희 팀 개인 계정으로 한 것이라서, 학교측에서는 어떻게 해결할 방법이 없다고 하시더라구요..
진짜 어찌할 방도를 몰라서, 룸메한테 물어봤습니다.
나 : 140만원 요금 어떻게 지불하지..
룸메 : 그거 고객센터에 문의해서 봐달라고 하셈
나 : 그게 되냐??
룸메 : 진짜 웬만하면 해주던데..
나 : ㅇㅋ
어찌할 방법이 없어서 지푸라기 잡는 심정으로 AWS 형님들한테 간곡하게 문의를 해봤는데.. 다행히, AWS 상담원분과 연결이 되었습니다.
나 : 제발 저 지식도 없고, 돈도 없는 학생인데, 어떻게 한 번만 봐주실 수 있을까요??
Rona(AWS 직원) : 학생인 것을 증명하고, 이 계정으로 AWS관련 서비스를 사용하지 않으시면 봐드릴게요.
나 : 감사합니다 ㅠㅠㅠㅠ
그렇게, 제 학생증과 사과문을 작성하고 140만원 비용은 AWS 측에서, 무효화를 시켜주셨습니다.
일단 이번 프로젝트를 하면서, 모든 팀원끼리 다 모여서 작업을 하니,
많이 비효율적이고, 비용도 꽤 들어갔습니다.
그래서, 다음에 어떤 프로젝트를 할 때에는, 회의시간과 주제를 정하고, 그 전에 회의 주제에 대해 충분히 고민한 다음에 모여서 회의를 하는 것이 더욱 더 효율적일 것 같습니다.
그리고 AWS 140만원 사건을 겪으면서,
내 잘못은 내가 책임을 져야한다. 라는 것을 절실히 느꼈습니다.
그리고 끝내, 책임을 진 제가 뿌듯했습니다.
또한, 서비스를 만족하시면서 사용하시는 선생님들을 보며, 뿌듯함을 느꼈습니다.
"이 맛에 개발하지"라는 느낌을 처음으로 느껴본 것 같습니다.
긴 글 읽어주셔서 감사합니다!!!
Github : https://github.com/lian2945
잘 읽었습니당