brunch

You can make anything
by writing

C.S.Lewis

by youngstone Mar 18. 2022

당신은 Cross-functional 합니까?

우리 모두 박지성이 될 수 있습니다.

이 글은 비전공자를 위한 IT 커리어 바이블 시리즈의 6번째 이야기입니다.

이전 글: "나"라는 제품을 만들고 홍보하라


우선 Cross-functional이라는 단어를 처음 듣는 분이 계시다면 사전적 의미를 짚고 넘어가겠다.

"functional"하다는 것은 어떤 업무를 담당하여 수행할 수 있다는 뜻이다.

거기에 Cross 가 붙어서 교차적으로 업무를 수행할 수 있다는 뜻이다.

아래 이미지를 보면 이해가 될 것이다.

functional vs cross-functional

전통적인 사고방식으로는 어떠한 개발 프로젝트를 진행할 때 각자 역할 별로 업무를 담당하게 된다.

본 예시에서는 System Analysts, Developers, Testers 각자의 역할이 있다.

반면에, Cross-functional 조직에서는 모두가 모든 역할을 수렴하고 하나의 팀으로서 움직인다.

많은 한국 개발자들은 이러한 이야기들을 이야기하면 부정적으로 반응한다.

저게 가능해? 자기 할 일도 제대로 못하는데 여러 일을 어떻게 하라는 거야?

나의 경우 어떻게 현실 속에서 적용했고 어떻게 커리어에 도움이 되었는지 이야기해보고자 한다.



보통 개발 프로젝트에서 어떤 사람의 업무를 나눌 때 사람마다 역량별로, 포지션 별로 나누곤 한다.

Fronend/backend developer, database engineer, UI/UX designer, Publisher, QA/Test Engineer 등 나누고자 하면 한도 끝도 없다.

이러한 현상은 주로 한국의 전통적인 IT 대기업에서 많이 볼 수 있다.

하나의 직무가 거대한 조직을 이루고 있고, 그 안에서 인력을 선발하여 프로젝트에 역할별로 투입시킨다.

하지만 이렇게 될 경우 전통적인 Waterfall(폭포수) 방식으로 한 사람의 역할이 끝나야 그 사람의 역할이 수행 가능한 상태에 빠지게 된다.

이는 전체적인 프로젝트의 빠른 진행과 교정이 어려운 상태로 이어진다.

때문에 대부분의 폭포수 형태의 프로젝트는 상당수 실패하게 된다.

폭포수 모델과 애자일 모델

이를 개선하기 위해 만들어진 것이 Agile(애자일) 프로젝트 모델이다.

꼭 하나의 대단위 업무가 완료가 되어야 그다음 단계로 넘어가는 것이 아닌, 당장 구현 가능하면서 최종 목표와 연계되는 정도의 작은 목표를 최소의 단위로 하여 설계부터 구현, 테스트, 배포까지 완료하는 것이다.


하지만 이러한 애자일 모델은 단순 그 모델만 따라간다고 되는 것이 아니고, 실제로 팀 구성이 스스로 움직여서 cross-functional 한 팀이 되어야 최고의 퍼포먼스를 보여줄 수 있다.

개발 팀 구성원 전체가 요구사항 분석, 설계, 구현, 테스트, 배포에 대한 전반적인 이해를 바탕으로

해야 할 일을 정의하고 실제 기능적으로 담당해서 진행할 수 있어야 한다.


스크럼팀

이러한 팀을 애자일 이론에서는 Scrum 팀이라고 부른다.

Scrum은 스스로 움직이고 Cross-functional 한 팀이다.

Scrum의 활동을 지원하고 문제를 해결해주는 Scrum Master와 고객을 대변해서 요구사항을 전달해주는 Product Owner와 개발팀을 포함한다.


나는 바로 이전 직장인 스타트업에서

 Scrum Master와 Producer Owner와 개발팀원으로서 역할을 겸하여 개발해본 경험이 있다.

요구사항 도출, 화면 기획, 프런트엔드와 백엔드 설계, 데이터베이스 설계, 배포, 운영, 그리고 제품의 판매부터 고객 서비스 지원까지 말 그대로 end-to-end를 진행했다.

물론 이러한 기회는 누구에게나 흔하게 찾아오는 것이 아니다.

첫 번째로 이러한 기회를 갖게 해 준 것은 Growth Mindset이 있었기 때문이다.

고정과 성장 마인드의 차이


같은 개발 팀 내에서도 내가 할 수 있는 일의 경계를 두지 않았다.

새로운 과제가 있었을 때 없었을 때도 동료나 선배가 새로운 일을 이야기했을 때 항상 먼저 다 가능하다고 했다.

실제로도 결과를 만들어 냈다.

왜냐하면 뭐든지 할 수 있고 해내겠다는 "성장 마인드"가 있고, 실패에 대한 두려움보다 성장에 대한 욕구가 더 컸기 때문이다.

나에게는 애자일 개념에서 가장 높이 사는 것이 하나 있다.

"Fail fast"

빨리 실현해보고 뭐가 문제인지 파악해서 전체적인 프로젝트의 리스크를 최소화하라는 의미이다.

보통 한국 사람들은 실패하는 것, 실수하는 것, 완벽하지 못한 것에 많은 두려움이 있다.

하지만 애자일 세상에서는 빨리 실패하는 것이 빨리 성공하는 것이라는 모두의 합의가 있다.


지금 눈앞에서는 문제들이 불거지지만, 최종적으로 돌아보면 항상 최선의 결과를 만들어냈다.


Growth Mindset 있다면 당신은 개발자이면서 개발자 이상의 일들을 해낼  있다.

그리고 그러한 경험들은 나에게 큰 시야를 가져다주었다.

내가 직접 개발한 제품을 고객에게 판매하면서, 그리고 사후관리까지 하게 되면서

실제 고객의 목소리를 들을 수 있었고 뭐가 불편한지, 뭐가 고객이 원하는 것인지 현장의 목소리를 들을 수 있었다.


그냥 가만히 하루 종일 컴퓨터 앞에 앉아서

"내 코드가 최고야"

라고 외치는 사람이 아닌

"고객이 원하는 제품을 만들 거야"

가 된다는 것이다.


그러한 마음가짐과 동기부여 원천의 변화가 더욱더 커리어를 성공적으로 이끄는 열정을 가져다준다.

그리고 어느새 축구장 전천후 필드를 뛰어다니는 박지성 같은 사람으로 만들어준다.



Cross-functional은 너무 이상적이라는 생각이 드는가?

그 생각 자체가 Fixed Mindset이다.

자세히 들여다보면 지금 당신이 자신의 영역을 넘어서 할 수 있는 일들은 작은 것부터 시작된다.

작은 일 하나하나 늘려나가기 시작해라.

그리고 성장해라.


다음 글: "기술 트렌드를 파악해라"

시리즈 처음부터 보기:  비전공자 출신 7년 만에 미국 대기업 개발자로 취업하기

이전 06화 "나"라는 제품을 만들고 홍보하라
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari