흔한 SI 개발자 이야기

꾸준하게 20년·2023년 4월 15일
2

이 글을 쓰는 이유는 스스로를 비판하기 위함이고 목적은 발전하기 위한 긍정적인 동기부여 이다.

이 작은 공간에 누군가 찾아와서 이 글을 본다고 생각하니 걱정이 앞선다. 너무 개인적이고 deep 한 영역은 술 한잔하는 사이에서나 가능하지 않을까 싶다. 최대한 솔직하게 얘기를 하도록 노력 할 것이다.

'그저 열심히 하면 된다.' 라는 생각으로 서울로 상경.
6개월 과정으로 진행되는 학원을 수료하고 취업을 하는 것으로 목표를 잡았다. 굳이 학원을 다니기로 한 이유는 '내가 많이 부족하다고' 생각했기 때문이다. 원래는 대학을 졸업하고 바로 취업하는 것을 원했지만 당시에 내가 사는 지역에는 신입 개발자를 뽑는 곳이 없었다.

고시원과 학원을 오가면서 나에게 부족한 기술이나 경험적인 부분을 채우려고 했지만 왠걸 학원이 얼마 안가서 경영난으로 문을 닫는다는 일방적인 통보를 한다. 그럼 수강료라도 제대로 환불을 해줘야 하지만 그마저도 어려운 상황이었다.

졸지에 앞길이 막혀 버린 상황이라 당황스럽고 혼란스러웠다. 여기까지 와서 빽도를 할 수는 없었다. 현실적인 이유가 있었고, 이 일을 꼭 하고 싶었기 때문에 포기 할 수 없었다. 하지만 가진 경비는 점점 줄어들고 해결 방법을 찾아야 한다는 위기감에 내린 결론은.

일단 취업해서 일을 배우자.

그렇게 첫 회사(A)에 입사하게 되었는데 인원이 나를 포함하여 4명 정도 되었던 걸로 기억한다. 면접 당시에 내가 했던 질문은 '개발자로서 경험을 쌓을수 있는지' 였다. 당연히 배울수 있다고 큰소리 치던 그 양반은 지금 쯤 교도소에 있지 않을까 싶다.

아직도 기억나는 건 그 양반이 DB 테이블을 설계해 보라고 업무가 아닌 과제를 준적이 있는데 제출을 하고 나서 뭐가 문제인지에 대한 피드백이 없었다. 그냥 더 잘 만들어서 오라고 했었던거 같다. 이때부터 좀 이상하다는 생각을 했는데 뭐가 문제인지 얘기를 해야 개선할 것이 아닌가?

그리고 내가 했던 업무도 실제 개발과는 거리가 멀었다. 거래처에 가서 프로그램을 설치하고 잘 돌아가는지 확인하는 업무. 실제로 코드 한줄이라도 작성하는 그런 일 따위는 없었다. 당시에는 이것도 업무에 연장이라 생각하고 열심히 했는데 애초에 그럴 목적으로 사람을 뽑았다는 것을 3주차쯤 되어서 알게 되었다. 그래서 그 길로 퇴사하였다.

다시 B라는 두번째 회사에 취직을 하게 되었다. 한번의 실패를 경험 했었기 때문에 모든게 조심스러울수 밖에 없었고, 진짜 마지막이라는 각오로 입사를 하게 되었다. 다행스럽게도 진짜 개발 경험을 쌓을수 있는 회사였다. 이제는 나만 열심히 하면 되는 상황이 된 것이다.

c++/mfc, windows ce, java, jsp, javascript, android, struts2,
spring framework, spring boot...

다양한 프로젝트를 소화하기 위해 여러가지 기술들을 사용하였는데 스스로 개발자로서 일을 한다라는 느낌을 받은건 웹 개발을 할때 부터 였다. 장르에 대한 구분 없이 모든 일을 하고 싶지 않았고, 회사와 얘기해서 웹 개발에 집중하겠다고 하였다. 그 이후 struts2 라는 프레임워크를 사용하게 되었다. 당시에는 프론트/백엔드에 대한 구분은 없었고, 둘다 해야 했기 때문에 '웹마스터' 또는 '풀스택' 개발자 라는 인식이 있었다.

struts2 프레임워크를 처음 경험해보고, 그 다음 프로젝트에서는 내가 직접 struts2 프레임워크를 이용하여 개발환경 셋팅을 잡았다. 패키지 구조와 웹페이지 폴더 구조를 설계하고 복잡한 xml 설정을 하는 등 이게 최초의 경험이었다. 처음부터 끝까지 혼자서 개발한 최초의 프로젝트 였다.

우연한 기회를 통해 알게 된 사실은 아직도 해당 프로그램을 잘 사용하고 있다는 얘기에 흐뭇했다. 그만큼 잘 만들어 졌다는 얘기 같아서...

spring 프레임워크의 경우에는 전자정부프레임웍을 기반으로 개발환경을 구성해야 한다는 요구사항이 있었다. 이것 또한 처음 셋팅을 시도하는 상황이었고, 출퇴근 시간을 이용해서 spring 관련 서적을 보면서 개발환경 구축을 완료하였다. 그리고 서버쪽 로직 개발은 모두 내가 하였다. 이게 두번째 경험이며, 누구의 도움도 없이 혼자서 해낸 성과 였다.

새로운 개발환경과 제한된 조건안에서 개발한다는 것은 상당히 부담스러운 일이다. 기간이 정해져 있고, 그 기간마저 깍아먹는 일이 많았기 때문에 늘 집중력을 잃지 않아야 했고 문제 해결을 위해 많은 시간을 들여야 했다. 일과 시간 외에 개인적인 시간까지 갈아넣는것은 선택이 아닌 필수 였다.

책임감을 가지고 일한다는 것은
내가 하지 않으면 다른 사람들에게 피해를 줄수 있고
내가 일하는 모습은 회사를 대표 할 수 있으며
악착같이 문제를 해결 했을때의 그 개운한 맛을 느끼는 것이다.

이렇게 일을 하다보니 번아웃이 와서 B회사를 퇴사하게 된다.
사실 번아웃이라는 것도 나중에야 깨달은 거였고, 퇴사할 당시에는 잦은 야근으로 인한 개인적인 생활에 문제가 생겼고, 기술부채에 따른 업무 효율이 많이 떨어졌다. 자신감이 저하된 상태에서 계속 일하다가는 진짜 죽을수도 있겠다는 정신적인 압박감까지 생기게 되었고, 결국 퇴사를 결정 할 수 밖에 없었다.

4개월 정도 휴식기간을 가지면서 다시 일을 해야 한다는 생각에 일자리를 찾았고 B회사 팀장님의 권유로 다시 재입사 하게 되었다.

그때는 몰랐지만 이것이 나의 첫번째 실수라는 것을 깨달았다.

재입사 하고 나서 경험이 쌓일수록 프로젝트를 바라보는 시야가 넓어지고 개발 외적인 부분도 신경쓰게 되었다. 어차피 일은 사람들이 하는 것이기에 대화를 통해 문제를 해결해 나가는 것이 중요하다는 것을 깨달았다. 그저 내가 맡은 영역만 잘하는 것보다 다 같이 윈윈 할 수 있는 협업이 중요하다는 것이다.

그렇게 지금까지 10년이 넘는 세월이 흘렀다. 그리고 이것이 나의 두번째 실수라는 것을 깨달았다.

SI 개발자로 스스로가 부끄럽지 않도록 열심히 일해 왔다고 자부 할 수 있다. 누군가 눈치보고 피하는 일도 내가 했고, 인력이 부족해서 2~3인분의 일도 내가 했다. 누군가는 일정안에 안된다는 것도 멱살을 잡고 끌다 싶이 하여 완료한 경험도 있으며, 누군가가 기간안에 할 수 없다고 펑크 내버린 프로젝트도 기간안에 개발을 완료하였다. 마치 소방관 처럼 불을 끄듯.
프로젝트는 굴러가야 했고 누군가는 부족한 부분을 채워야만 했다.

아직도 기억하는 일중에 하나는 고객이 "기술적으로 안되는 부분인가요?" 라고 하면 눈에 불을 켜고 어떻게든 문제를 해결했다는 것이다. 저 말이 왜 이렇게 싫은지 모르겠다. 그래서 악착같이 해결하려고 노력했다.
능력이 좋다는 것은 정해진 업무 시간내에 문제를 해결 할 수 있는 것이며, 이게 바로 잘한다는 기준이라고 생각합니다.
개인적인 시간을 갈아 넣어서 문제를 해결하는 것은 끝까지 책임을 다하는 것으로 일을 믿고 맡길 수 있는 사람입니다. 그래서 저는 일을 잘한다기 보다는 책임감 있게 일을 열심히 하는 사람이라고 해석 할 수 있습니다.

이렇게 일하면서 인정은 받을 수 있었지만, 내안의 갈등을 깊게 생각하고 해결해야 한다는 생각을 하지 못한 것이다. 일을 할때 내가 사용하고 싶은 기술을 쓸수 없다는 것은 아주 큰 단점이었다. 애써 공부했던 것들은 시간이 지나면 기억나지 않고, 이것을 글로 정리해 두더라도 사용하지 않으면 기억에서 사라진다는 것이다. 변명같긴 한데 사실이기도 하다.

그런데도 불구하고 왜 계속 이 일을 하고 있었냐고 묻는다면

나 같이 일하는 사람들만 이 회사에 있기 때문이라고 하겠다.

같이 일하는 사람들에 대한 불만은 없다. 그저 10년이 넘는 세월 동안 진짜 일만 열심히 했고, 일을 더 잘하기 위한 고민(개발문화 같은)을 많이 하지 않은 것 그게 너무 후회된다.

사실 개인적으로 개발 문화를 만들어 보고자 직원들과 개인 면담도 진행하고 아이디어를 제안해 보았지만 생각보다 반응이 낮았던 경험이 있다보니

나 스스로가 내려놓았다고 생각한다. 그리고 이것이 세번째 실수다.


다시 현실로 돌아와서 내가 이 글을 쓰게 된 결정적인 계기는

내가 우물안의 개구리 였다는 사실이다.

너무 늦게 깨달았다. 아니 알고 있었지만 애써 무시했다는 것이 더 이치에 맞는 설명이다. 큰 잘못이라 느낀다.

혹시나 싶어서 커뮤니티를 통해 서비스를 운영하는 C회사로 가고 싶은데 조언을 부탁한다고 요청을 했다. SI 개발자에 대한 인식이 부정적인 경우가 많았다. 더군다나 10년이 넘은 개발자의 경우에는 더 낮을수 밖에 없다는 의견도 있었다.

아무래도 치고 빠지는 SI 개발 여건상 기술적인 한계와 경험치가 너무 분명하다는 의견이 있었는데 너무 맞는 말 같아서 반박에 여지가 없었다.

한편으로는 그동안 내가 했던 모든 노력들이 물거품이 된 것 같아서 심적으로 많이 우울하다. 무엇보다 나를 믿고 있는 가족들에게 죄를 지은 것 같다. 특히 우리 와이프 진짜 고생 많이 했는데 더 못난 남편이 된 것 같아 너무 미안하다.

"열심히 했다." 라는 것을 남에게 보여줄수 있을만큼 "잘" 했어야 하는데 그저 막연히 열심히만 하니 결과적으로 남은게 없는 것만 같다. 뭔가 헛발질을 더 많이 한 느낌이다.

그래서 이제는 "잘" 하는 것에 초점을 맞추려고 한다.
더이상 나의 노력을 의미없는 것으로 만들고 싶지 않다.

그래서 이 글을 쓰게 되었다.
이 글을 공개함으로 나의 부족함을 누군가에게 알리게 될 것이다.
이것은 언젠가 나에게 돌아오는 화살이 될수도, 선물이 될수도 있을 것 같다.

"열심히"만 하는 세상은 끝났다.
"열심히 잘" 해야 하는 세상이다.

profile
앞으로 1년

0개의 댓글