솔직히 말해서 SI회사에서 개발자로 살아남는다는 건, 학교에서 배우던 깔끔한 알고리즘과는 완전히 다른 세상입니다. 제가 30대 중반이 되어 돌이켜보니, 대학 시절 ‘언젠가 멋진 프로그램을 만들겠다’며 안드로이드 스튜디오를 붙잡고 밤을 새우던 열정은 실무의 벽에 부딪히기 일쑤였습니다. 많은 분이 웹사이트제작업체나 SI업체에 첫발을 들일 때 막연한 환상을 가지는데, 이 업계는 기술 그 자체보다 ‘비즈니스 언어’를 얼마나 잘 통역하느냐가 생존의 핵심입니다.
한림대의료원의 데이터 레이크 플랫폼 ‘히어로(HERO)’ 사례나 대규모 프로젝트를 보면 시스템이 참 체계적으로 돌아가는 것처럼 보이죠. 하지만 현실은 다릅니다. 제가 예전에 참여했던 공공기관 프로젝트에선 Vue.js를 사용하기로 했는데, 막상 뚜껑을 열어보니 서버 인프라 노후화와 기획자의 잦은 요구사항 변경 때문에 코드 구조가 엉망이 되기 일쑤였습니다. 기대치는 ‘세련된 SPA’였는데, 현실은 ‘돌아가기만 하면 다행인 레거시 수정’이었죠. 여기서 많은 신입이 좌절합니다. 기대와 현실의 괴리가 너무 크니까요.
SI 개발 현장에서 흔히 하는 실수는 무조건 최신 기술 스택만 고집하는 것입니다. 3D프로그램을 활용한 고난도 개발이든, 단순 CRUD든, 클라이언트가 진짜 원하는 게 무엇인지 파악하지 못하면 결국 유지보수 지옥에 빠집니다. 특히 4~5개월 정도의 짧은 기간 내에 프로젝트를 완수해야 할 때, 코드를 예쁘게 짜려고 노력하는 것과 마감 기한을 지키는 것 사이에서 항상 치열한 고민을 하게 됩니다. 이게 실무의 가장 큰 트레이드오프입니다. 완벽함을 추구하다 기한을 넘기면 비즈니스적으로는 실패니까요.
간혹 AI개발이나 최첨단 솔루션을 다루는 IT회사에 가고 싶어 하는 분들이 코딩자격증을 잔뜩 따서 오곤 합니다. 물론 기초 역량은 도움이 되겠지만, 실제 프로젝트에서는 ‘자격증 1개’보다 ‘데이터베이스 정규화 경험 1회’가 훨씬 가치 있습니다. 실패 사례를 하나 말씀드리자면, 예전에 완벽한 아키텍처를 설계하겠다고 2주를 설계에만 쏟았다가 정작 구현 단계에서 시간이 부족해 엉망으로 처리했던 기억이 납니다. 그 후로는 ‘일단 빠르게 돌아가는 핵심 기능을 만든다’는 원칙을 세웠는데, 이 또한 완벽한 정답은 아닙니다. 어떤 프로젝트는 설계가 너무 허술해서 1년 뒤에 전부 갈아엎어야 했거든요. 이처럼 정답 없는 상황에서 결정을 내리는 게 개발자의 진짜 업무입니다.
현장에서 보면, SI개발 환경이 항상 유연한 것은 아닙니다. 때로는 새벽 퇴근과 정시 출근이 반복되는 불합리한 상황을 겪기도 하죠. 최근 연차수당 문제나 근로 조건으로 고통받는 분들의 글을 보면 남 일 같지 않습니다. 기술은 빠르게 변하는데 내 삶은 10년 전과 변함없을 때 느끼는 현타는 어쩔 수 없습니다. ‘이게 정말 내 길인가’라는 의문은 30대가 되어도 사라지지 않더라고요.
누구에게 이 글이 도움 될까요? SI업계로의 이직이나 취업을 고민하며 환상보다는 현실을 알고 싶은 분들에게는 꽤 유용한 관점이 될 겁니다. 하지만 ‘나는 오직 기술적으로 가장 뛰어난 코드를 짜서 인정받고 싶다’는 분들에게는 이 글이 다소 비관적으로 들릴 수 있습니다. 그분들은 차라리 제품(Product)을 만드는 스타트업이나 기술 중심의 연구소로 방향을 잡는 게 맞습니다. SI개발은 본질적으로 서비스업에 가깝기 때문입니다.
마지막으로 여러분께 권하고 싶은 다음 단계는, 무작정 강의를 듣기보다 현재 관심 있는 분야의 ‘오픈 소스 프로젝트’를 하나 골라 코드 리뷰를 해보거나, 작은 기능이라도 직접 끝까지 완성해 배포해 보는 것입니다. 물론 그것이 실무의 복잡함을 모두 해결해 주지는 않습니다. 왜냐하면 실제 고객은 우리가 짠 코드가 아니라, ‘내 요구대로 작동하는 결과물’만을 보기 때문입니다. 이 차이를 인정하는 순간, 당신은 이미 한 단계 성장한 겁니다.

데이터베이스 정규화 경험이 프로젝트의 핵심이 되는 부분에 공감합니다. 제가 경험해본 바로는, 초기 설계 단계에서 요구사항의 불확실성을 충분히 고려하지 않으면 결국 수정 작업에만 매달리게 되는 경우가 많습니다.
서버 인프라 때문에 Vue.js가 제대로 작동하지 않는 모습 보니까, ‘결과물’을 만드는 게 얼마나 중요한지 새삼 느껴지네요.