티스토리 뷰

처음 입사해서 일이 없어 약 3달간 다른 팀의 업무를 도와주거나 개인 공부를 하며 보내다가 드디어 나에게도 일이 생겼다.

이 기간 동안 마냥 일이 없다는 것이 좋지만은 않다는 걸 알았다.

남들은 다 바쁜데 신입사원이 하는 일도 없이 있다 보면 괜히 눈치가 보이는데 누군가 요즘 무슨 일 하고 있냐고 물어보면 딱히 뭐라 대답하기도 곤란하다.

 

 

 

 

5월쯤 되었을 때 회사에서는 사업을 따기 위해 본격적으로 제안서 작업을 시작했다.

SI 회사는 기업에서 전산시스템을 필요로 한다면 고객의 요청에 맞는 제안서를 작성하고 다른 회사와 경쟁하여 사업을 따게 된다.

회사 내의 자체 솔루션이 있긴 했지만 SI 사업에서 회사 대부분의 매출이 나왔다.

난 A 기업의 개발자로 참여하게 되었는데 팀 구성은 PM, PL, PE 총 3명으로 구성되어 프로젝트를 진행하게 되었다.

PM님은 이번 프로젝트에서 첫 PM을 맡게 되셨고, PL님은 A 기업의 전차 사업을 수행했던 인력이었으며, PE는 처음 프로젝트를 참여하게 된 신입사원인 내가 되었다.

사업 금액 대비 요구사항도 많고 기간도 짧은 편이었기 때문에 시작도 하기 전부터 과연 잘 끝날 수 있을까? 하는 걱정이 들었다.

 

 

 

 

약 1달간 요구사항 분석 및 수집, 시스템 분석, 개발환경 세팅을 마치고 PL님과 업무 분담을 하였는데 나는 비교적 간단한 메인 인터페이스 개선 작업과 게시판 관련 부분을 맡아 개발하게 되었다.

개발에 들어가기 전 먼저 소스 분석을 시작했는데 개발에 대한 지식이 많이 없는 나였지만 소스가 개판이였다는 건 알 수 있었다.

오래전에 시스템이 구축된 후 여러 기업의 손을 거쳐오면서 같은 기능이 여러 언어로 작성되고 쓰지 않는 기능들이 그대로 남아있다보니 프로젝트 용량이 굉장히 무거웠다.

신입 개발자인 내가 마음대로 파일이나 소스를 삭제할 수 있는 권한 따윈 없었기 때문에 그냥 맡은 업무에 최선을 다하기로 했다.

메인페이지 디자인을 새롭게 개선하면서 처음부터 코드를 짜느라 시간이 좀 걸렸지만 게시판 같은 경우에는 기존에 있는 게시판 소스를 ctrl+c, ctrl+v 해서 요구사항에 맞춰 응용하거나 약간의 기능만 추가해주면 됐기 때문에 금방 맡은 부분을 끝낼 수 있었다.

 

 

 

 

맡은 부분에 대한 개발을 끝내고 PL님이 맡고 계신 부분에 대해서 개발을 지원하기로 했기 때문에 준비를 하고 있는데 PM님이 잠깐 얘기 좀 하자면서 부르셨다. 

PL님이 2주 뒤에 퇴사를 하기로 했다는 얘기었는데 프로젝트 마무리 기간까지 6주밖에 안 남았는데 그게 가능한 일인가 싶었다.

PM님은 인원 충원에 대해서도 계속 어필하고 있고 고급 개발자 프리랜서를 고용할 수도 있으니 너무 걱정 말라고 하셨다.

걱정이 안될 수가 없었지만 설마 이런 프로젝트를 신입 혼자 개발하게 하겠어? 라는 생각이 컸기 때문에 일단 PL님이 퇴사하시기 전까지 빠짐없이 인수인계를 받을 수 있도록 준비했다.

 

 

 

 

그 후 PL님이 퇴사하시고 개발하신 기능들을 확인하는데 죄다 오류가 나거나 기능 구현이 아예 안되어있었다.

어..? 어....?? 설마...????? 하는데 대충 15개 중에 1개만 개발되어 있었고 개발된 1개 마저도 오류가 나서 고쳐야 했는데 말도 안 되는 상황을 직면한 후 진짜 멘붕이 오면서 눈물이 핑~ 돌았다.

최종감리 준비를 하느라 정신없이 바빠서 소스 취합도 퇴사 당일날 하다 보니 기능 구현에 대한 얘기를 말로만 전달받고 실제로 확인을 못해서 생긴 문제였다.

엎친데 덮친격으로 프리랜서는 단가가 비싸서 못 쓰고 당장 인원을 충원하기는 어려워서 결국 혼자 남은 기능을 전부 개발하게 되었다.

최종감리까지 일주일 정도 남은 상황에서 구현이 50% 정도만 되었다는 사실과 혼자서 남은 걸 개발해야 한다는 사실에 도망쳐야 된다는 생각이 머릿속에 맴돌았다.

하지만 나까지 도망치면 이 프로젝트가 정말 망할 것 같고 내가 너무 책임감이 없는 사람이 될 것 같아서 결국 혼자 남아 개발을 했다.

 

 

 

 

그렇게 프로젝트 종료 기간이 다가오면서 최종감리도 시작되었는데 큰 문제가 발생했다.

 

감리 : 이거 DB 확인해보니까 표준화 안되어있던데 안 하신거에요?

본인 : 아.. 새로 추가되거나 변경되는 테이블에 대해서만 표준화 진행했습니다.

감리 : A 기업 표준 문서랑 컬럼명도 다르고 데이터 타입이랑 크기도 다 다른데요?

본인 : 네...???????????

 

A 기업 담당자에게 확인했을 때 따로 DB 표준이 없다고 해서 행안부 표준에 맞춰 만들었는데 감리 업체에서 확인했을 때 A 기업의 표준 문서가 있어서 다시 A 기업 표준에 맞춰 DB를 싹 다 바꿔야 했다.

프로젝트 진행 중에 DB를 바꾸게 되면 DB 테이블부터 새로 만들어야 하는 건 물론이고 DB 산출물과 소스 내 쿼리도 다 수정해줘야 하기 때문에 막대한 시간이 들어간다.

이 기간에는 격일로 회사에서 밤새면서 일했는데 이게 말로만 듣던 SI를 몸소 느껴볼 수 있는 기회가 되었으며 입사할 때 가진 회사에 대한 애사심은 집 나간 지 오래고 마음속에 증오와 분노심만 남게 되었다.

약 한 달간 야근+철야+주말출근을 쓰리 콤보로 터트려주니 다행히 기간 안에 맞춰서 개발을 끝낼 수 있었다.

 

 

 

 

프로젝트 종료 기간안에 개발은 끝냈지만 급하게 개발 하다보니 오류가 많이 났는데 원래는 기능을 구현하면 처음부터 모든 프로세스를 동작시켜봐야 하는데 시간이 없다보니 개발한 기능만 확인하다보니 생긴 문제들이었다.

배포 기간이 늦어지면서 배포 전까지 오류를 다 수정하고 있었는데 어느순간 추가요구사항까지 들어와 또 개발하고 있었다.

메인페이지 디자인만 변경하기로 했는데 고객사에서 팝업 디자인, 게시판 디자인 등 추가 변경을 요구하고 이미 다 구현해놓은 기능을 갈아없는 경우도 빈번하게 있었다.

 

 

SI 회사에서 첫 프로젝트를 해보면서 많은 걸 느꼈는데 간단히 적어보자면

1. 인력 갈아넣기

- 인건비를 절감하기 위해 2~3명이서 해야 되는 업무를 1명이 하게 함으로써 인력을 갈아 넣어 프로젝트를 돌린다.

2. 연장근무

- 프로젝트 일정을 맞추기 위해서는 야근과 주말출근, 철야를 어쩔 수 없는 것이라 생각하며 직원들의 곡소리에도 바뀌는 게 없다.

3. 야간수당

-  대부분의 중소기업 포괄임금제를 시행하기 때문에 일주일에 40시간을 일하든 60시간을 일하든 급여가 똑같다.

4. 중구난방인 코드

- 정해진 기간 안에 만들기 위해서는 시간이 부족하기 때문에 코드 품질이 떨어지며, 그저 돌아가면 된다는 마인드가 있다.

5. 실력 향상

- 잘 몰라도 일단 프로젝트에 투입되기 때문에 시간이 지나면서 다방면으로 실력이 향상된다.

 

 

SI 회사마다 다르겠지만 경력 뻥튀기, 파견근무 등 더 열악한 환경에 회사도 많다고 한다.

사실 개발 자체는 재미있었고 실력이 향상되는 게 느껴졌기 때문에 야근이 좀 적었다거나 일한 만큼에 대한 급여를 받았다면 아마 계속 다녔을 것이다.

많은 신입 분들이 SI? SM? 솔루션? 어느 쪽으로 가야 할지 고민을 많이 하실 텐데 선택을 하실 때 나의 경험이 조금이라도 도움이 되었길 바라며 글을 마친다.

댓글
글 보관함
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
최근에 달린 댓글
Total
Today
Yesterday