반응형

이 글을 쓰는 이유는 다른 사람들은 나와 같은 선택을 해야할 때 너무 고생하지 않고 결정하길 바라는 마음이다.

오랫동안 SI에서 개발하던 나는 막연하게 스타트업으로 이직을 해보고 싶었다. 기술적으로 성장하고 싶고, 실제로 사람들이 사용하는 서비스를 개발하고 싶었다는 게 첫번째 이유였다. 하지만 그 이유 하나로 이직을 하기에는, 지금 SI 개발자로서 누리고 있는 것들을 포기하는 게 너무 아쉬웠다.

그렇게 몇 달을 고민했지만 사실 어떻게 고민해야하는 지도 몰랐고, 뭘 고민해야하는 지, 누구에게 조언을 구해야 하는 지도 몰랐다. 그냥 인터넷만 뒤적거리면서 남들 생각을 들어보려고 허우적거렸다. 

이것도 좋아보이고, 저것도 좋아보이고, 이걸 포기하기도 아쉽고, 저것도 놓치고 싶지 않고...

 

시간을 허비한 끝에 스타트업/SI로 이직을 하기 위해 내가 답을 해야하는 '질문'을 찾아냈다. 사실 꼭 스타트업이 아니라 앞으로 이직하려는 곳을 검토할 때 던질 수 있는 질문이다. 다른 분들은 해야할 고민조차 몰라서 허우적거리지 않고 조금 더 빨리 본인만의 정답을 찾길 바란다.

 

1. 질문 던지기 : 내가 원하는 것이 무엇이고, 얼만큼 포기할 수 있는 가?

- 나는 무엇을 얻고자 하는가?

- 그게 내 가치관과 내가 바라는 커리어에 도움이 되는가? 타인의 가치관에 휘둘리는 게 아닌가?

- 나는 왜 스타트업(혹은 분야)으로 가고 싶은가?

- 그게 스타트업(혹은 분야)에서만 얻을 수 있는 것인가? (혹은 진짜 얻을 수 있는가)

- 그렇다면 많은 스타트업 중 내가 원하는 걸 얻을수 있는 회사는 어떤 회사인가?

- 현 직장에서 얻고 있는 가치는 내 가치관과 커리어에 얼마나 영향을 미치는 가?

- 현 직장에서 새로운 가치를 얻을 수 있는 방법은 없는가?

- 현 직장에서 얻고 있는 가치와 이직 후 얻을 것이라 예상되는 가치의 크기는 유사한가?

- 현 직장에서 얻고 있는 것을 얼마나 포기할 수 있는 가?

 

(소근소근) 그래도 도전하는 데에 소비되는 시간과 노력은 아까워하지 말길 바란다!

 

2. 대답하기 : 질문에 대답하기 위해서는 의사결정을 위한 '자료'가 필요하다.

이 자료를 찾기 위해 유튜브, 구글링, 온갖 블로그에 개발자, 커리어, 스타트업, SI 등 온갖 키워드로 검색을 했다. 실제로 투여한 시간이 비해 너무 적은 양의 정보만 얻었고, 심지어 양질의 정보는 거의 없었다.

이번 포스팅에서 내가 경험한 SI와, 내 가치관을 토대로 어떻게 선택을 내렸는 지 정리해보겠다.

나는 이미 지나온 시간이지만, 다른사람들은 내 경험과 의사결정을 위한 질문들을 참고해서 조금 쉽게 앞으로 나아가길 바란다.

 

3. 결정하기

1~2번을 과정을 통해 얻은 것들로 의사결정을 내리면 된다.


SI vs 스타트업을 비교하기 전에...

일단 내가 경험한 SI는 특정 대기업에 엮인 거대한 단일 생태계라서, 내 이야기를 보고 'SI는 다 이렇구나.'라고 일반화하지는 않았으면 좋겠다. 약 7년 정도 시간 동안 하나의 개발 생태계에 있었어서 일반적인 SI와 다를 수 있고, 그 외에 정보는 나 또한 카더라 통신으로만 들은 정보이다.

일단 내가 겪었던 SI와 스타트업은  '평가자의 가치관'과 '어떤 측면에서 어떤 기준'으로 SI와 스타트업을 평가하느냐에 따라 평가가 달라질 수 있을 것 같다.


나의 목표 (나의 가치관)

개발자로서 나의 목표는 '일과 개발을 잘하는, 함께 협업하고 싶은 개발자'가 되는 것이다. 이것은 오랜시간 의식적으로 노력하고 다양한 경험이 필요한 것이지, 꼭 SI냐 스타트업이냐의 문제는 아니었다.

그럼에도 내가 왜 스타트업에 가보고 싶어했는 지, 그 이유를 말하기 전에 내가 경험했던 SI에 대해 설명해보겠다.

 

내가 경험했던 SI

일단 내가 경험했던 대기업 SI 개발 환경에 대해 부분적으로 소개해보겠다. (SI는 도메인이 다양하고 규모에 따라 개발 방식도 많이 다르다.)

개발이라는 영역은 넓지만 아래 두 가지 영역은 SI에서든, 스타트업에서든 개발자에게 요구되는 공통된 스킬이라고 생각한다. (다만 권한의 범위가 다를 수 있다.)

  • 기술 : 코딩, 테스트, 문서 작성
  • 업무 : 커뮤니케이션 스킬, 요구사항 분석, 일정 산정, 영향도 분석

하지만 대기업에서는 '개인'이 교체되어도 '시스템'은 정상 가동되도록 업무 프로세스와 인프라를 잘 구축해놓았다.
개발을 어느정도 할 수만 있다면 그들이 정해놓은 언어, 프레임워크, 개발 생태계 내에서 활동이 가능할 정도라고 생각한다.

상황이 이렇다보니 SI에서 요구하는 건 개발을 진짜 잘 하는 한 명이 아니라, 자사 생태계에서 당장 개발이 가능한, 도메인 지식을 가진 개발자를 선호하는 것이다.
하지만 어디든 업무와 협업 스킬이 뛰어난 개발자는 우대받는다.(이건 어느 직종이나 마찬가지일 것이라 생각한다.)

 

대기업 SI 장점

  • 대기업의 체계적인 업무 프로세스(효율/비효율을 떠나 협업 체계는 소중하다)
  • 회사가 요구한 일에만 집중할 수 있는 환경
  • 사업 계획부터 첫 릴리즈까지 경험 가능
  • 엄청난 규모의 프로젝트 참여 가능
  • 다양한 도메인 짧은 기간동안(?) 경험 가능
  • 월...급..?

대기업 SI 단점

  • 권한의 범위가 좁음
  • 기술적 변화를 꾀기 쉽지 않음(정해진 기술이 있음=>새로운 시도가 어려움)
  • 능동적인 참여에 어느 정도 한계가 있음(나의 롤이 명확하기 때문)
  • 그들에게 특화된 맞춤형 인재가 되어감

현재의 나에게 있어서는 위 특성들이 장/단점으로 다가왔다. (어떨 때에는 단점이 장점으로 바뀌기도 한다ㅎㅎ)

그럼 내가 왜 SI에서 스타트업(엄밀히 말하면 IT 서비스 회사)으로 이직을 결심하게 됐는 지 이유를 말해보겠다.


첫번째 이유, 성장의 한계

내가 이직을 결심한 가장 큰 이유는 '성장의 한계'를 느꼈기 때문이다. 한 곳에 오래 머물러 있으면 우물 안 개구리가 되기 쉽상이다.
SI가 우물이라는 것이 아니라 내가 특정 개발 환경에 너무 오래 있어서 생긴 문제였다.

 

기술적 한계

업무를 함에 있어서 항상 최선을 다하려고 했는데, 특정 개발 환경에 만 3년 있다보니 도전할 만한 것들도 줄어들고 나의 태만도 늘었다.

그리고 내가 속한 개발환경에서는 trim 함수 조차도 누군가 만들어둔 공통 라이브러리를 사용하는 것이 표준이어서, 내가 집중하는 것은 비즈니스 로직이 주를 이루었다.
경험이 많아지고, 코딩에 대한 제한(=표준) 때문에 '최선의 방법'을 고민하는 것 보다는 '굉장히 한정적인 선택지 중 내 문제를 해결할 수 있는 방법'을 선하는 게 익숙해지기 시작했다.
표준에 대한 장점이 단점이 된 시점이었다.

 

업무 혹은 내 역할의 한계

앞서 말했듯이, 대기업 SI에서는 대기업 특성 + SI 특성이 섞여서 개발자의 권한과 의무가 IT 서비스 회사에 비해 굉장히 제한적이다.

내가 몸 담던 곳에서, 나는 '기술적 성장'이 정체되어 있어서 '업무 스킬의 성장'이라도 필요했다. 하지만 내가 PL이 되어 회의에 참석하고, 리딩을 하기에는 연차가 애매했고 갑작스럽게 그런 역할을 수행할만한 경험치도 없었다.

그때 당시 이직하기 어려운 사정이 있어서 직접적인 경험을 쌓기 보다는, 존경하는 동료 개발자가 일하는 방법과 사고 방식을 카피해서 간접 경험치를 쌓으려고 했었다.
본격적으로 2년 정도 그 분과 일하면서 회의 때에는 왜 그렇게 말씀하셨는 지 물어보고, 그 분이 테스트 케이스는 어떻게 세우는 지, 데이터의 정합성은 어떻게 체크할 수 있는 지, 내가 자주하는 실수 유형을 파악하는 등에 노력을 기울였다.

 

경험의 한계

아, 그래도 간접적인 경험에는 한계가 있다는 것을 깨닫는 순간이 있었다.

내가 카피하고 싶은 동료 개발자의 어떠한 경험으로 만들어진 사고방식과 넓은 시야는 단순히 겉에서 결과를 보고 분석하는 것만으로는 배울 수 없었다.
나도 나만의 경험을 통해 나의 시야를 길러야겠다고 생각했다. 내가 성장했기 때문이 아니라 그냥 간접 경험으로 얻을 수 있는게 힘든 영역이라서 그렇다.

예전에는 기술적이든, 업무로든 프로젝트마다 성장을 10%씩 했다면, 이제는 겨우 0.1% 오르는 느낌이 들었다.
물론 0.1%씩이긴 해도 그 분께 배웠던 작은 퍼센트들은 단순히 코딩을 배우는 것 보다 훨씬 값졌다.
내가 훗날 리딩을 하게 된다면 그 분처럼 팀원들이 헙업을 하면서 불편을 느끼지 못하게 팀을 관리를 하고 싶다.

어쨋든 사냥터를 옮겨야했다.

 

두번째 이유, 자사 서비스

이제는 개발하고 빠지는 것 보다는, 개발부터 운영까지 애정을 갖고 서비스를 가꾸고 싶었다.
새로운 기술도 배워서 적용해주고 청소도 주기적으로 해줘서 내가 참여한 서비스가 예쁘고 튼튼하게 자라는 모습도 보고 싶었다.

SI는 고객의 피드백을 받거나 서비스의 성장에 대해 프리랜서 개발자가 피드백 받기 굉장히 어려운 환경이다.
고객들에게 피드백을 받는 순간은 장애났을 때이다. 😢

 

세번째 이유, 내가 예상하지 못했던 새로운 경험

사실 막연한 추측이었다. 다른 개발환경에 간다면 뭐든 새롭겠지.
하지만 스타트업에 간다면 개발환경 뿐만이 아니라 일하는 방식마저 새롭지 않을까? 막연하게 바랬었다.
그 새로움이 좋은 지 안좋은 지를 떠나서 그냥 궁금했다.

이건 온갖 글과 영상을 찾아봐도 마음에 와닿는 정보가 없었다.

이때 당시 나는 정말 막연한 환상의 유니콘같은 회사를 꿈꾸고 있었다.


그래서 스타트업으로 이직을 결심했다.

사실 SI 개발자의 삶도 나에게는 괜찮은 옵션이었기 때문에 스타트업으로 이직하는 데에 주저함이 있기도 했다.

마음 맞는 동료들이 얼마나 삶의 질을 높여주던지! 이 분들과 계속 일하고 싶어서 그냥 포기하고 같이 즐겁게 살까?싶은 마음도 가득했었다. 일하는 스타일도 잘 맞고, 대화 코드도 잘 맞아서 하루의 절반을 즐겁게 보낼 수 있었다. 좋은 동료들은 업종이나 회사를 떠나너무 소중한 존재들아닌가ㅠㅠ (지금 생각해보니 내 만족도는 급여와 동료가 80%의 비중을 차지한 것 같다.)

그래도 한번쯤, 조금이라도 선택에 자유로울 때 해봐야겠다는 생각이 들어서 울면서 도전하게 됐다. 이렇게 오래 고민했는데 시도도 안해보고 고민만 하다 방전되면 나에게 너무 미안한 일이다. 진짜.. 아쉬움을 절절 품고... 떠난다...

 

막상 이직해보니까

내가 스타트업에 대해 예상했던 게 맞는것도 있었고, 틀린 것도 있었다. 그리고 아예 예상하지 못했던 부분들도 많이 있었다. 

아직은 스타트업을 경험한 지 만 1년이 되지 않았으니 지금 평가는 보류하고, 나중에 내가 다녔던 SI와 현재 근무중인 스타트업에 대한 글을 따로 정리해보겠다.

아마 아래 항목을 기준으로 비교하면 재미있을 것 같다.

- 개발 성장

- 개발 문화

- 워라벨

- 급여

- 복지

- 동료

- 경영진

반응형