인턴 기록 1

파오리·2021년 2월 25일
1

아주 큰 경험

목록 보기
1/1

[2021년 01월 - 2021년 06월]
학교 소프트웨어 중심대학 기업현장실습 - @@컴퍼니 정보보안실 실습 기록

지원과 합격

4학년이 되도록 대외활동이라곤 멋사 하나 뿐인 나.. 졸업 전에 경험 하나라도 더 해야 겠다는 생각이 들었고, 2020년 멋사를 하면서 협업의 흥미와 개발의 즐거움을 두 배로 느끼게 되었다. 그리고 실무에 대한 궁금증이 급격하게 증가하여 인턴을 하나 해야겠다는 생각이 들었다. 데스티니 팀원이 만족스럽고 즐겁게 인턴을 하는 모습도 한몫했다. (지금은 탈주해버린,,,리자드 킴,,,,)

그러나 대부분의 좋은 회사들은 현재 java/spring framework를 많이 사용하고 있으며 지원 자격도 spring 개발자가 대부분,,

python/django밖에 할줄 모르는 나는 쫄보라서 지원할 용기가 안나서 맨날 공고 창만 쳐다보던 중..

학교 소중대(소프트웨어중심대학) 기업현장실습 모집 공고가 떴다. 정식 인턴이라기 보다는 '현장실습'이라서 최저시급의 반의 반도 안주는...그런 프로그램인데 원래 돈 너무 적게 주고 생소한 아주 작은 기업들이 대부분이라 전혀 지원할 생각이 없었으나 @@컴퍼니가 있길래 밑져야 본전 이라는 마음으로 마감 한시간 전에 부랴부랴 적어서 지원서를 냈다.

비교적 젊은 기업이라 그만큼 최신 동향을 잘 파악하고 업무를 할 것이라 막연히 생각했고, 일단 다른 사람들이 들었을 때 대부분이 아 거기~ 할만한 기업이지 않은가,,

그리고 지원하면 다 보는 학교 면접을 보고, 기업 면접 대상자가 되었다. 나중에 들어보니 2명 뽑는데 10명이 넘게 지원을 해서 경쟁률이 생각보다 많이 높았다. (어떻게 내가 선발됐지?)

대학도 면접 없이 논술로 온 나는 기업 면접에서 멘탈이 갈려 헛소리를 내뱉고 마음을 비웠으나 정말 놀랍게도 최종 합격 메일을 받게 되었다.

부서와 내가 맡은 일

학교에서 올라온 모집 공고에는 '기술 개발 팀'이라고 적혀 있었고, 업무에 대해서는 '정보보호 보조, 웹 개발 보조, 앱 개발 보조' 라고 적혀있어서 나는 지원서는 물론 면접에서도 웹 개발에 대한 나의 의지를 보였다.

그렇지만 알고보니 인턴을 뽑는 부서는 정보보안실 이였다. (학교에는 모집 분야 정보 게시을 더 신경써주시면 좋겠다고 이야기는 드렸다.)

내가 정보보호학과라서 나를 뽑으신 것도 있는거 같다. (전공지식은 없어서 죄송하다..,,)

그래도 어떤 일을 하고 싶은지, 인턴을 하며 뭘 배워가고 싶은지 먼저 여쭤봐주시고 내가 웹 개발을 하고 싶다고 말씀 드리니, 나에게 맞는 '포털 사이트 개발'을 맡겨주셨다.

정보보안실 내부에서 사용하는 사이트로, 이전 인턴 분들께서 1차 개발을 하신 상태였다.


이게 그 사이트.. 가장 큰 기능은 보안 장비에서 로그를 받아서 접속기록을 확인하고 slack으로 알림을 보내주는 기능인 것 같았다. 그리고 그 외에는 보안뉴스 등의 정보 확인 기능이 있었다.

운이 좋았던? 다행이였던? 점은 django로 개발 된 사이트라는 것 .. 휴.
팀 내에서 개발을 하는 사람이 나밖에 없어서 개발은 나 혼자 전적으로 맡아 해야 하는데 처음 써보는 프레임워크였으면 그냥 다른거 시켜달라고 말할 뻔했다. 아니면 혼자 낑낑대며 매일을 밤새면서 눈물을 머금고 개발했겠지.. ㅋㅋㅋㅋㅋㅋㅋㅋ 생각만해도 눈물난다.

업무 계획

우선, 이미 개발되어 있는 저 포털의 대략적인 구조를 이전 인턴들이 컴퓨터에 word파일로 남기고 간 인수인계서를 보며 열심히 파악했다.

웹
언어: python
프레임워크: django
웹서버: apache
db: mariaDB

서버 (putty로 접속)
운영체제: centOS7

요정도의 정보가 있었다. 배포나 서버쪽을 만져본 적이 없어서 그 부분을 공부할 수 있겠구나 싶었다.

그리고 제일 먼저 하고 싶었던 일.
보면 알겠지만,, 프론트가,,,,, 부트스트랩 템플릿을 통째로 사용하였다.....

나는.. 부트스트랩을 싫어한다.... 제약 사항도 많고, 쓸데없는 코드도 많고, 코드도 깔끔하지 않다고 생각한다. 그리고 부트스트랩을 과하게(?) 사용하면 코드가 꼬여 리얼 멘붕의 에러가 발생하기도 한다.
2019년 멋사 해커톤 나가서 그런 일이 발생해서 애먹었던 기억이 있다. ㅎ. 그래서 그 뒤로는 부트스트랩 안쓰고 css와 js로만 모든 것을 해결한다.

또한 들어보니, 이전 인턴분들이 django를 처음 써보시거나, 초보이셨던 듯 하다. (아니 처음 써봤는데 이정도로 개발한 것도 찐 리스펙..)


그래서 project 구조가.. app이 blogbroject라는 이름으로 하나.. 그리고 그 안에 19개 페이지의 모든 정보가 들어가 있고, js와 css도 파일 분리가 되지 않은 채 html에 모든 코드가 들어있어서 한 파일에 1200줄이 넘더라.

그렇다보니 처음 코드를 보았을 때, 파악이 너무너무 힘들고 앞으로 유지보수도 힘들 뿐더러 이후에 또다른 인턴이 왔을 때 나처럼 3일 넘게 코드랑 폴더구조 파악하고 있을 것 같았다 ..

그래서 제일 먼저 이걸 싹 갈아 엎어야 겠다고 생각했다.

그리고 일단 로그 중에 로그인/로그아웃이 아닌 그 외의 로그들은 포털에서 확인할 수 없었다. 또한 실시간으로 모든 로그가 db로 넘어오지 않고, 같은 로그임에도 띄엄띄엄 반영이 되는 것을 확인했으며 총 4개의 보안장비 로그 중, 하나의 보안장비는 로그가 db에 반영이 되지 않고 있었다.

그래서 내가 세운 첫 번째 계획

  1. 프로젝트 폴더구조 재개발
  2. frontend bootstrap 빼고 css, js로만 재개발
  3. 로그인/로그아웃 말고 그 외 행위도 db에 저장되도록 daemon 알고리즘 재개발
  4. 모든 장비 실시간으로 누락없이 반영될 수 있도록 daemon 알고리즘 재개발
  5. 현재 불편한 ui/ux 수정
  6. 동일 ip로 재배포

두 달 후

두 달이 지난 현재, 계획했던 모든 것을 끝내고 추가로 요청하시는 기능들을 개발 중이다.

회사 밥은 맛있고, 복지도 좋고, 개발은 재밌다.

1차 계획을 수행하며 겪었던 것들과 느낀점들은 다음 게시물에서 계속 ...

profile
경험 == 배움

0개의 댓글